IP-NEIGHBOUR(8) Linux IP-NEIGHBOUR(8)

ip-neighbour - مدیریت جداول نگاشت ARP یا NDISC همسایهها


ip [ OPTIONS ] neigh { COMMAND | help }

ip neigh { add | del | change | replace } { ADDR [ lladdr LLADDR ] [ nud STATE ] | proxy ADDR } [ dev DEV ] [ router ] [ use ] [ managed ] [ extern_learn ]

ip neigh { show | flush } [ proxy ] [ to PREFIX ] [ dev DEV ] [ nud STATE ] [ vrf NAME ] [ nomaster ]

ip neigh get ADDR dev DEV

STATE := { permanent | noarp | stale | reachable | none | incomplete | delay | probe | failed }

دستور ip neigh اشیای neighbour (همسایه) را که پیوندهای میان آدرس‌های پروتکل و آدرس‌های لایه پیوند (Link Layer) را برای میزبان‌هایی که یک پیوند مشترک دارند برقرار می‌سازند، مدیریت می‌کند. مدخل‌های همسایه در جدول‌ها سازمان‌دهی می‌شوند. جدول همسایگی IPv4 با نام دیگری نیز شناخته می‌شود: جدول ARP.

دستورات متناظر، پیوندهای همسایه و ویژگی‌های آن‌ها را نمایش می‌دهند، مدخل‌های همسایه جدید اضافه می‌کنند و مدخل‌های قدیمی را حذف می‌نمایند.

افزودن یک مدخل همسایه جدید
تغییر دادن یک مدخل موجود
افزودن یک مدخل جدید یا تغییر دادن یک مدخل موجود

این دستورات رکوردهای همسایگی جدید ایجاد کرده یا رکوردهای موجود را به‌روزرسانی می‌کنند.

آدرس پروتکل مربوط به همسایه. این آدرس می‌تواند یک آدرس IPv4 یا IPv6 باشد.
رابط شبکه‌ای که این همسایه به آن متصل است.
مشخص می‌کند که آیا برای این مدخل همسایه پروکسی انجام می‌دهیم یا خیر.
مشخص می‌کند که آیا همسایه یک مسیریاب (روتر) است یا خیر.
این مدخل همسایه در حالت «در حال استفاده» (use) است. این گزینه می‌تواند برای نشان دادن به هسته سیستم‌عامل استفاده شود که یک کنترل‌کننده در حال استفاده از این مدخل پویا است. اگر مدخل وجود نداشته باشد، هسته آن را تفکیک (resolve) خواهد کرد. اگر وجود داشته باشد، تلاشی برای تازه‌سازی (refresh) مدخل همسایه فعال می‌شود.
این مدخل همسایه «مدیریت‌شده» (managed) است. این گزینه می‌تواند برای نشان دادن به هسته سیستم‌عامل استفاده شود که یک کنترل‌کننده در حال استفاده از این مدخل پویا است. بر خلاف use، اگر مدخل وجود نداشته باشد، هسته آن را تفکیک می‌کند و به‌طور دوره‌ای تلاش می‌کند تا مدخل همسایه را به‌صورت خودکار تازه‌سازی نماید تا در صورت امکان در وضعیت تفکیک‌شده باقی بماند.
این مدخل همسایه از خارج یاد گرفته شده است. این گزینه می‌تواند برای نشان دادن به هسته سیستم‌عامل استفاده شود که این یک مدخل پویا است که توسط کنترل‌کننده یاد گرفته شده است. هسته چنین مدخلی را پاکسازی (gc) نخواهد کرد.
آدرس لایه پیوند (Link Layer) همسایه. LLADDRESS همچنین می‌تواند null باشد.
وضعیت مدخل همسایه. nud مخفف «Neighbour Unreachability Detection» (تشخیص عدم دسترسی‌پذیری همسایه) است. وضعیت می‌تواند یکی از مقادیر زیر را داشته باشد:
مدخل همسایه برای همیشه معتبر است و فقط به صورت مدیریتی (دستی) می‌تواند حذف شود.
مدخل همسایه معتبر است. تلاشی برای اعتبارسنجی این مدخل انجام نخواهد شد اما با پایان یافتن طول عمرش می‌تواند حذف شود.
مدخل همسایه تا زمان منقضی شدن مهلت دسترسی‌پذیری (Reachability Timeout) معتبر است.
مدخل همسایه معتبر اما مشکوک است. این گزینه به ip neigh در صورتی که وضعیت معتبر بوده و آدرس توسط این دستور تغییر نکرده باشد، وضعیت همسایه را تغییر نمی‌دهد.
این یک شبه‌وضعیت است که در زمان ایجاد اولیه مدخل همسایه یا پس از تلاش برای حذف آن قبل از آزاد شدن شرایط حذف استفاده می‌شود.
مدخل همسایه هنوز اعتبارسنجی/تفکیک نشده است.
اعتبارسنجی مدخل همسایه در حال حاضر به تعویق افتاده است.
همسایه در حال کاوش و سنجش (Probe) است.
حداکثر تعداد کاوش‌ها بدون موفقیت به پایان رسیده و اعتبارسنجی همسایه در نهایت با شکست مواجه شده است.
حذف یک مدخل همسایه

آرگومان‌ها مانند ip neigh add هستند، با این تفاوت که lladdr و nud نادیده گرفته می‌شوند.

هشدار: تلاش برای حذف یا تغییر دستی یک مدخل noarp ایجادشده توسط هسته ممکن است به رفتار غیرقابل پیش‌بینی منجر شود. به‌ویژه، هسته ممکن است حتی روی رابط NOARP یا در صورت چندپخشی (Multicast) یا همه‌پخشی (Broadcast) بودن آدرس، تلاش کند آن را تفکیک نماید.

فهرست کردن مدخل‌های همسایه
پیشوندی که همسایه‌ها را برای فهرست کردن انتخاب می‌کند.
تنها همسایه‌های متصل به این دستگاه را فهرست می‌کند.
تنها همسایه‌های مربوط به VRF مشخص‌شده را فهرست می‌کند.
تنها همسایه‌های متصل به رابطی بدون رابط اصلی (Master) را فهرست می‌کند.
پروکسی‌های همسایه را فهرست می‌کند.
تنها همسایه‌هایی را که در حال حاضر مورد استفاده نیستند فهرست می‌کند.
تنها مدخل‌های همسایه در این وضعیت را فهرست می‌کند. NUD_STATE مقادیر فهرست‌شده در بالا یا مقدار ویژه all را می‌پذیرد که به معنای تمام وضعیت‌ها است. این گزینه می‌تواند بیش از یک بار تکرار شود. اگر این گزینه ارائه نشود، ip تمامی مدخل‌ها را به جز none و noarp فهرست می‌کند.
پاکسازی مدخل‌های همسایه
این دستور همان آرگومان‌های show را دارد. تفاوت‌ها در این است که وقتی هیچ آرگومانی داده نشود اجرا نمی‌شود و وضعیت‌های پیش‌فرض همسایه برای پاکسازی شامل permanent و noarp نمی‌شود.

با گزینه -statistics، خروجی دستور با جزئیات بیشتر (Verbose) نمایش داده می‌شود. این گزینه تعداد همسایه‌های حذف‌شده و تعداد دورهای انجام‌شده برای پاکسازی جدول همسایه را چاپ می‌کند. اگر این گزینه دو بار داده شود، ip neigh flush تمام همسایه‌های حذف‌شده را نیز نمایش می‌دهد.

جستجو و دریافت یک مدخل همسایه برای یک مقصد با داشتن یک دستگاه
مشخص می‌کند که آیا باید به دنبال مدخل همسایه پروکسی بگردد یا خیر.
پیشوندی که همسایه مورد نظر برای پرس‌وجو را تعیین می‌کند.
دریافت مدخل همسایه متصل به این دستگاه.

ip neighbour

جدول همسایگی فعلی در هسته را نمایش می‌دهد.

ip neigh flush dev eth0

مدخل‌های جدول همسایگی روی دستگاه eth0 را حذف و پاکسازی می‌کند.

ip neigh get 10.0.1.10 dev eth0

یک جستجوی همسایه در هسته انجام می‌دهد و یک مدخل همسایه را بازمی‌گرداند.

ip(8)

صفحه راهنمای اصلی توسط Michail Litvak <mci@owl.openwall.com> نوشته شده است.

20 Dec 2011 iproute2