Linux Secretsلینوکس

تشخیص آدرس آی پی عمومی و خصوصی در سیستم عامل لینوکس

در طول فعالیت حرفه ای شما به عنوان یک متخصص لینوکس بسیار پیش می آید که نیاز داشته باشید آدرس فعلی IP یک سیستم عامل لینوکس را تشخیص دهید. می دانیم که آدرس های آی پی ورژن ۴ به دو دسته تقسیم می شوند. برخی از آدرس های IP در محیط اینترنت قابل Route می باشند و مسیرهای آن ها در تمام روترهای جهانی که در شبکه اینترنت مسیریابی را انجام می دهند ثبت شده است. به این دسته آی پی های Public یا عمومی گفته می شود. برخی دیگر از آدرس های IP در اینترنت قابل مسیریابی نیستند و به اصطلاح گفته می شود که مسیر Route آن ها در اینترنت تعریف نشده است. به این دسته IP خصوصی یا Private گفته می شود. در این صورت آدرس های آی پی عمومی تنها زمانی معنا پیدا می کنند که بر روی یک دستگاه متصل به اینترنت پیکربندی شده باشند. در راهنمای پیش رو ، ابتدا نحوه تشخیص آی پی خصوصی و سپس نحوه تشخیص IP پابلیک اختصاص یافته به دستگاه شما را در سیستم عامل لینوکس توضیح خواهیم داد.

نمایش آی پی های خصوصی در سیستم عامل لینوکس

برای تشخیص آدرس آی  پی خصوصی در سیستم عامل لینوکس ، سه دستور در محیط خط فرمان وجود دارد. این دستورها شامل hostname ، ifconfig و دستور ip می شوند.

جهت یافتن آدرس آی پی با استفاده از دستور hostname کافی ست که از ویژگی –I استفاده کنید. برای مثال در تصویر زیر IP دستگاه برابر با ۱۹۲.۱۶۸.۱۲۲.۲۳۶ است.

تشخیص آدرس آی پی عمومی و خصوصی در سیستم عامل لینوکس

راه حل دوم بهره مندی از دستور ifconfig است. این دستور دارای سوئیچ های زیادی می باشد که هرکدام وظیفه متفاوتی را بر عهده دارند. اما در اینجا نیازی به استفاده از هیچ کدام از سوئیچ های ifconfig ندارید. Ifconfig را بدون هیچ سوئیچی تایپ کنید و با فشردن کلید Enter آدرس آی پی تمام اینترفیس ها از جمله اینترفیس Loopback نمایش داده خواهد شد. به تصویر زیر که خروجی این دستور در یک سیستم عامل لینوکس را نشان می دهد توجه کنید :

Windows Subsystem for Linux - استفاده از لینوکس در ویندوز

تشخیص آدرس آی پی عمومی و خصوصی در سیستم عامل لینوکس

سومین دستوری که امکان استفاده از آن وجود دارد دستور ip در حالت addr show است. در واقع آن را به این ترتیب می نویسیم : ip addr show

به تصویر زیر دقت کنید :

تشخیص آدرس آی پی عمومی و خصوصی در سیستم عامل لینوکس

همان طور که در تصویر مشاهده می شود ، این دستور نیز آدرس تمام اینترفیس ها و از جمله لوپ بک را مشخص می کند. اینترفیس Loopback در لینوکس با نام lo نمایش داده می شود. اما اگر بخواهیم اینترفیس مورد نظرمان را نیز مشخص نماییم ، می توانیم نام آن را مانند زیر در ادامه دستور تعیین کنیم. برای مثال در این تصویر ما می خواهیم فقط آدرس آی پی اینترفیس eth0 به ما نمایش داده شود ، بنابراین خروجی دستور ip addr show eth0 به شرح زیر خواهد بود :

تشخیص آدرس آی پی عمومی و خصوصی در سیستم عامل لینوکس

نمایش آی پی پابلیک در سیستم عامل لینوکس

تا اینجا نحوه نمایش IP تعلق یافته به سیستم عامل را فرا گرفتیم. اما اگر بخواهیم آدرس آی پی عمومی که در اینترنت به ما تعلق گرفته است را مشاهده نماییم چطور؟ راه حل این موضوع در محیط خط فرمان استفاده از ویژگی cURL است. cURL امکانی را فراهم می نماید که بتوانید بدون نیاز به استفاده از Web Application ها از API های عمومی موجود در محیط اینترنت بهره ببرید. حتی اگر کاربر ویندوز هستید ، مقاله بسیار جالبی درباره نحوه استفاده از cURL در ویندوز نیز وجود دارد که در این لینک قابل مطالعه است.

اکنون ببینیم که در این جا cURL چه کمکی به ما خواهد کرد؟ قضیه بسیار ساده است. همه کاری که باید انجام دهیم این است که در محیط خط فرمان ، با استفاده از دستور cURL یک درخواست HTTP به یکی از وب سایت های زیر ارسال کنیم. این وب سایت ها نیز آدرس آی پی پابلیک ما را در پاسخ برای ما ارسال خواهند کرد. به لیست وب سایت ها توجه کنید :

Package Manager ها در توزیع های مختلف لینوکس

http://ifconfig.me

http://www.icanhazip.com

http://ipecho.net/plain

http://indent.me

http://bot.whatismyipaddress.com

چگونه به این وب سایت ها درخواست HTTP ارسال نماییم ؟ دستور cURL را می نویسیم و بعد از آن دامنه یکی از این سایت ها را در ادامه وارد می کنیم. به خروجی دستورات زیر دقت نمایید :

تشخیص آدرس آی پی عمومی و خصوصی در سیستم عامل لینوکس

در پایان لازم به ذکر است که به جای دستور cURL می توانید از wget نیز استفاده کنید. البته دقت داشته باشید که به وسیله –q حالت Quiet Mode و با استفاده از –O- خروجی را به Standard Output یا همان STDOUT هدایت کنید. تصویر زیر را ببینید :

تشخیص آدرس آی پی عمومی و خصوصی در سیستم عامل لینوکس

۱.۵ ۲ رای دادن
رای دادن به مقاله

نوید داریا

Experienced IT Specialist with a demonstrated history of working in the information technology and services industry. Skilled in VMware ESX, Domain Name System (DNS), DHCP, VoIP, Veeam Backup Solutions, Adobe Connect, Servers, and Data Center. Strong operations professional graduated from Amirkabir University of Applied Sciences and Technology. Now I am studying Informatics at Vienna University
اشتراک در
اشاره به موضوع
guest

0 کامنت
جدیدترین
قدیمی ترین نظرات با تعداد رای بالا
Inline Feedbacks
مشاهده همه کامنت ها
دکمه بازگشت به بالا