پروتکل ICMP چیست؟
برای اینکه بتوان اطلاعات وضعیت یا پیام های خطا را مبادله کرد، گره ها در شبکه های TCP/IP به پروتکل پیام کنترل اینترنت (ICMP) دسترسی دارند. به طور خاص، سرورهای برنامه و دروازه ها (روترها) از پسوند IP برای نمایش اعلان مشکلات دیتاگرام به فرستنده بسته ها استفاده می کنند. ساختار، نحوه عملکرد و طبقه بندی در پشته پروتکل اینترنت در RFC 792 در سال 1981 RFC 792 مشخص شد. برای نسخه 6 پروتکل اینترنت RFC 4443 به عنوان پیاده سازی خاص ICMPv6 تعریف شده است.
طبق تعریف ICMP یک پروتکل مستقل است. حتی اگر اعلان های مختلف در بسته های IP معمولی یکپارچه شوند. برای این منظور، پروتکل اینترنت با پسوند اختیاری به عنوان یک پروتکل لایه بالاتر رفتار می کند. بسیاری از سرویسهای شبکه که اغلب استفاده میشوند، مانند traceroute یا ping، بر اساس پروتکل ICMP هستند.
نحوه ی کار پروتکل ICMP چیست ؟
برای درک نحوه عملکرد پروتکل، ابتدا باید به ساختار ICMP یا هدر نگاه کنید. این به طور مستقیم به هدر IP مرتبط است که با پروتکل شماره 1 یا 58 (ICMPv6) در قسمت IP “پروتکل” مشخص شده است. ناحیه داده هدر خود پروتکل پیام کنترل اینترنت محدود است و به شکل زیر است:
اولین فیلد “نوع” 8 بیتی نوع اعلان بسته ICMP را مشخص می کند. این اطلاعات را می توان با فیلد “کد” زیر که 8 بیت است مشخص کرد. به عنوان مثال، یک پیام ICMP نوع 3 مشخص می کند که مقصد بسته داده در دسترس نیست، در حالی که کد این اطلاعات را برای تعیین اینکه آیا شبکه مقصد (0)، میزبان مورد نظر (1) یا پورت هدف (3) است مشخص می کند. که به درخواست قبلی پاسخ نداد. جمع کنترل ICMP اطلاعات مربوط به نوع پیام را دنبال می کند و از صحت اعلان اطمینان می دهد. این کار به همان روشی انجام می شود که سایر چک جمع های پروتکل های استاندارد (IP، UDP، TCP).
در نهایت، فایلهای ICMP بسته به نوع مربوطه و نمونه راهاندازی ساخته و ساختار متفاوتی دارند. هدر IP اغلب حاوی فهرستی از 64 بیت اول بسته داده است که مسئول پیام خطا یا پرس و جو وضعیت هستند. هنگامی که به اصطلاح تونل ICMP اتفاق می افتد، از این میدان برای ارسال داده های مفید زیر رادارهای فایروال یا برای ایجاد یک کانال ارتباطی رمزگذاری شده بین دو رایانه استفاده می شود.
چه نوع بسته های ICMP وجود دارد؟
اکثر اعداد (42-252) در حال حاضر اختصاص داده نشده اند، اما در اصل رزرو شده اند. IANA (Internet Assigned Numbers Authority) مسئول تخصیص اعداد است و همچنین تخصیص فضاهای آدرس IP و پورت ها را تنظیم می کند. ما برخی از مهم ترین انواع بسته ها را بر اساس پروتکل پیام کنترل اینترنت در جدول زیر خلاصه کرده ایم:
ICMP type | ICMPv6 type | Type name | Code | شرح |
---|---|---|---|---|
3 | 129 | Echo Reply | تست حضور با پاسخ دادن به پینگ شبکه | |
1 | Destination Unreachable | 0–15 | یک پیام ICMP که از جمله موارد دیگر، عدم دسترسی به اجزای خاص (شبکه، پروتکل، پورت، میزبان) در فیلد “کد” را با مشکلات مسیریابی یا مسدود شدن فایروال اطلاع می دهد. | |
5 | 137 | Redirect Message | 0–3 | اطلاع از تغییر مسیر یک بسته برای شبکه مشخص شده (0)، سرویس مشخص شده و شبکه (2)، یا سرویس و میزبان مشخص شده (3). |
8 | 128 | Echo Request | پینگ شبکه | |
9 | 134 | Router Advertisement | توسط روترها برای ارتباط با کلاینت های مختلف شبکه استفاده می شود. | |
11 | 3 | Time Exceeded | 0 oder 1 | گزارش وضعیت، که یا طول عمر (زمان تا Live، TTL) یک بسته (0)، یا زمان انتظار تا پایان مونتاژ بسته های تکه تکه شده (1) را گزارش می دهد. |
13 | 13 | Timestamp | این بسته IP مربوطه را با یک مهر زمانی ارائه می دهد که مربوط به زمان ارسال است و همگام سازی دو رایانه را ارائه می دهد. | |
14 | – | Timestamp Reply | پیام پاسخ یک مهر زمانی ICMP که مخاطب پس از دریافت آن ارسال می کند. | |
30 | – | Traceroute | یک نوع پیام قدیمی ICMP که برای ردیابی مسیر یک بسته داده در شبکه استفاده می شود: امروزه درخواست ها و تکرارهای ایمیل عمدتاً برای این منظور استفاده می شود. |
جایی که از ICMP و ICMPv6 استفاده می شود
ICMP از نظر ارتباط در شبکه های IP بسیار مهم است و به ویژه توسط روترها استفاده می شود. با این حال، سرورها و کلاینتها نیز از قابلیتهای پیامهای مرتبط با پروتکل اینترنت استفاده میکنند و با انجام این کار، اطلاعات مهم شبکه را به دست میآورند.
یک سناریوی استفاده رایج، پینگ شبکه است که می تواند از طریق خط فرمان سیستم عامل مربوطه با استفاده از برنامه هایی با همین نام اجرا شود. ابزار تشخیصی ساده اما مفید، ساده ترین گزینه برای بررسی در دسترس بودن یک میزبان خاص در شبکه است. برای انجام این کار، پینگ یک بسته IP شامل ICMP (v6) “Echo Request” (نوع 8 یا 128) را ارسال می کند. پس از دریافت این بسته، گیرنده با یک بسته داده حاوی ورودی ICMP “Echo Reply” (نوع 0 یا 129) پاسخ می دهد. اگر سیستمی که پینگ به آن ارسال شده غیرقابل دسترسی باشد، آخرین ایستگاه شبکه قابل دسترسی باقیمانده یک بسته پاسخ ارسال می کند. این نیز توسط یک مؤلفه ICMP گسترش می یابد: نوع 3 یا 1 «مقصد غیرقابل دسترس».
روترها به نوبه خود از ICMP برای اهداف مختلف استفاده می کنند: در هر تبلیغ روتر (ICMP نوع 9؛ ICMPv6 نوع 134) آنها را تنظیم می کنند، برای مثال همه کاربران فعال شبکه را در فواصل زمانی منظم در مورد حضورشان و دانش اطلاعات مختلف شبکه تنظیم می کنند. آنها داده های دریافتی را در حافظه پنهان خود ذخیره می کنند و روتر را به دروازه استاندارد تبدیل می کنند. علاوه بر این، روترها سعی می کنند مسیر بسته های داده در شبکه را از طریق تغییر مسیرهای ICMP (نوع 5 یا 137) بهینه کنند. با استفاده از این نوع پیام، اینترفیس های شبکه به میزبان به وجود اولین هاپ (ایستگاه میانی) بهتر برای ارسال بسته های IP اشاره می کنند.
پروتکل ICMP چیست ؟
ترجمه شده توسط سایت دریای شرق از سایت
کپی بدون ذکر نام و لینک سایت دریای شرق ممنوع است !