ifconfig (پیکربندی رابط)، یک ابزار مدیریت شبکه است که به منظور پیکربندی و مشاهده وضعیت رابط‌های شبکه در سیستم عامل‌های لینوکس استفاده می‌شود. با ifconfig می‌توانید آدرس‌های IP را اختصاص دهید، رابط‌ها را فعال یا غیرفعال کنید، ARP cache، مسیرها و موارد دیگر را مدیریت نمایید.

در این مقاله، نحوه استفاده از دستور ifconfig شرح داده شده است.

 

 

این مطلب نیز ممکن است برای شما مفید باشد: یافتن IP پیش فرض Gateway در لینوکس

 

نحوه نصب ifconfig

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

اگر پیغام خطایی دریافت کردید که «ifconfig: command not found»، به این معنی است که بسته حاوی این دستور روی سیستم شما نصب نشده است.

 

نصب ifconfig روی اوبونتو/دبیان

در توزیع‌های لینوکس مبتنی بر اوبونتو و دبیان، دستور زیر را برای نصب ifconfig اجرا کنید:

sudo apt install net-tools -y

 

نصب ifconfig روی Centos

به منظور نصب ifconfig در CentOS و سایر توزیع‌های لینوکس مبتنی بر RHEL، دستور زیر تایپ نمایید:

sudo dnf install net-tools -y

 

نحوه استفاده از دستور ifconfig

ساختار اصلی دستور ifconfig در زیر نشان داده شده است:

ifconfig [-a] [-v] [-s] <interface> [[<AF>] <address>]

که در آن:

interface: نام رابط شبکه است.

Address: آدرس IP است که می‌خواهید اختصاص دهید.

پیکربندی تنظیم شده با دستور ifconfig پایدار نیستند. پس از راه‌اندازی مجدد سیستم، تمام تغییرات از بین می‌روند. بنابراین به منظور دائمی کردن تغییرات، باید فایل‌های پیکربندی مخصوص توزیع را ویرایش کنید یا دستورات را به یک اسکریپت startup اضافه نمایید.

تنها کاربران root یا کاربرانی با امتیازات sudo می‌توانند، رابط‌های شبکه را پیکربندی کنند.

 

نمایش اطلاعات رابط شبکه

هنگامی‌که ifconfig بدون هیچ گزینه‌ای فراخوانی می‌شود، اطلاعات پیکربندی تمام رابط‌های شبکه و آدرس IP مرتبط را نمایش می‌دهد:

ifconfig -a

خروجی شامل اطلاعاتی در مورد تمام رابط‌های شبکه فعال و غیر فعال است:

output:
docker0   Link encap:Ethernet  HWaddr 56:84:7a:fe:97:99  
          inet addr:172.17.42.1  Bcast:0.0.0.0  Mask:255.255.0.0
          UP BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:65536  Metric:1
          RX packets:4198 errors:0 dropped:0 overruns:0 frame:0
          TX packets:4198 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1 
          RX bytes:498729 (498.7 KB)  TX bytes:498729 (498.7 KB)

eth0      Link encap:Ethernet  HWaddr 4c:bb:58:9c:f5:55  
          inet addr:172.20.10.3  Bcast:172.20.10.15  Mask:255.255.255.240
          inet6 addr: 2401:4900:1d65:40a1:4ebb:58ff:fe9c:f555/64 Scope:Global
          inet6 addr: 2401:4900:1d65:40a1:f1c9:6a90:2d99:924e/64 Scope:Global
          inet6 addr: fe80::4ebb:58ff:fe9c:f555/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:84110 errors:0 dropped:0 overruns:0 frame:0
          TX packets:59727 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:70667629 (70.6 MB)  TX bytes:20886290 (20.8 MB)

 

این مطلب نیز ممکن است برای شما مفید باشد: ذخیره دائمی قوانین فایروال iptables در لینوکس

 

به منظور نمایش اطلاعات پیکربندی یک رابط شبکه خاص، نام آن رابط را بعد از دستور ifconfig بنویسید:

ifconfig eth0

خروجی چیزی شبیه به زیر خواهد بود:

eth0      Link encap:Ethernet  HWaddr 4c:bb:58:9c:f5:55  
          inet addr:172.20.10.3  Bcast:172.20.10.15  Mask:255.255.255.240
          inet6 addr: 2401:4900:1d65:40a1:4ebb:58ff:fe9c:f555/64 Scope:Global
          inet6 addr: 2401:4900:1d65:40a1:f1c9:6a90:2d99:924e/64 Scope:Global
          inet6 addr: fe80::4ebb:58ff:fe9c:f555/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:84110 errors:0 dropped:0 overruns:0 frame:0
          TX packets:59727 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:70667629 (70.6 MB)  TX bytes:20886290 (20.8 MB)

 

اختصاص آدرس IP و Netmask به یک رابط شبکه

با دستور ifconfig می‌توانید یک آدرس IP و netmask را به یک رابط شبکه اختصاص دهید. بدین منظور کافیست دستور زیر را وارد کنید:

ifconfig [interface-name] [ip-address] netmask [subnet-mask]

به عنوان مثال، برای اختصاص آدرس IP:192.168.0.101 و netmask:255.255.0.0 به رابط eth0، باید دستور زیر را اجرا نمایید:

ifconfig eth0 192.168.0.101 netmask 255.255.0.0

همچنین شما می‌توانید یک آدرس IP ثانویه را با استفاده از نام مستعار رابط به یک رابط شبکه اختصاص دهید:

ifconfig eth0:0 192.168.0.102 netmask 255.255.0.0

 

فعالسازی و غیرفعالسازی رابط شبکه

گاهی اوقات، ممکن است نیاز به تنظیم مجدد رابط شبکه داشته باشید. در این حالت می‌توان از دستور ifconfig برای فعال یا غیرفعال کردن رابط شبکه استفاده کرد.

به منظور غیرفعال کردن یک رابط شبکه فعال، نام دستگاه را به همراه پرچم down وارد کنید:

ifconfig eth0 down

به منظور فعال کردن یک رابط شبکه غیر فعال، از پرچم up استفاده نمایید:

ifconfig eth0 up

 

فعالسازی و غیرفعالسازی حالت Promiscuous

Promiscuous به یک رابط شبکه اجازه می‌دهد تا به تمام بسته‌های موجود در یک شبکه دسترسی داشته باشد و آن‌ها را مشاهده کند. شما می‌توانید از دستور ifconfig برای فعال و غیرفعال کردن promiscuous در یک دستگاه شبکه خاص استفاده کنید.

به منظور فعال کردن حالت promiscuous در یک رابط شبکه، پرچم promisc را بعد از نام دستگاه وارد نمایید:

ifconfig eth0 promisc

به منظور غیرفعال کردن حالت promiscuous، از پرچم -promisc استفاده کنید.

ifconfig eth0 -promisc

 

این مطلب نیز ممکن است برای شما مفید باشد: افزودن آدرس IP در فایروال ویندوز

 

تغییر MTU یک رابط شبکه

MTU (مخفف Maximum Transmission Unit) به شما امکان می‌دهد، اندازه بسته‌هایی را که در یک رابط ارسال می‌شوند محدود نمایید.

شما می‌توانید مقدار MTU را با استفاده از ساختار زیر تغییر دهید:

ifconfig [interface-name] mtu [mtu-value]

به عنوان مثال، درصورتی که بخواهید مقدار MTU رابط شبکه eth0 خود را روی 500 تنظیم کنید، باید دستور زیر را اجرا نمایید:

ifconfig eth0 mtu 500

 

تغییر آدرس MAC رابط شبکه

MAC (مخفف Media Access Control) آدرس فیزیکی است که دستگاه‌های موجود در شبکه را به طور منحصر به فرد شناسایی می‌کند.

به منظور تغییر آدرس MAC یک رابط شبکه، از پرچم hw ether برای تنظیم آدرس MAC جدید استفاده کنید:

ifconfig eth0 hw ether 00:00:2d:3a:2a:28

 

 

 

منبع:

linuxize