یکی از موارد لازم پس از نصب سیستم لینوکس، پیکربندی شبکه است. البته، رابط‌های شبکه در زمان نصب نیز قابل تنظیم هستند. اما ممکن است، شما بخواهید این کار را پس از نصب انجام دهید؛ یا اینکه تنظیمات هنگام نصب را پس از آن تغییر دهید. همانطور که می‌دانید، برای پیکربندی تنظیمات شبکه، ابتدا باید بدانید که چند رابط در سیستم شما در دسترس است. در این مقاله، کلیه روش‌های ممکن برای یافتن رابط‌های شبکه موجود در سیستم‌های یونیکسی شرح داده شده است.

 

 

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

 

روش 1. استفاده از دستور ifconfig

متداول‌ترین روش برای یافتن جزئیات رابط شبکه، استفاده از دستور 'ifconfig' است. اگرچه این، یک روش قدیمی است؛ ولیکن برخی از کاربران لینوکس همچنان از آن استفاده می‌کنند.

$ ifconfig -a

خروجی این دستور مشابه زیر خواهد بود:

enp5s0: flags=4098<BROADCAST,MULTICAST> mtu 1500
ether 24:b6:fd:37:8b:29 txqueuelen 1000 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 1000 (Local Loopback)
RX packets 171420 bytes 303980988 (289.8 MiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 171420 bytes 303980988 (289.8 MiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

wlp9s0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.225.37 netmask 255.255.255.0 broadcast 192.168.225.255
inet6 2409:4072:6183:c604:c218:85ff:fe50:474f prefixlen 64 scopeid 0x0<global>
inet6 fe80::c218:85ff:fe50:474f prefixlen 64 scopeid 0x20<link>
ether c0:18:85:50:47:4f txqueuelen 1000 (Ethernet)
RX packets 564574 bytes 628671925 (599.5 MiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 299706 bytes 60535732 (57.7 MiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

همانطور که در خروجی فوق مشاهده می‌نمایید، دو رابط شبکه با نام‌های enp5s0 (برروی آداپتور اترنت سیمی) و wlp9s0 (برروی آداپتور شبکه بی سیم) در این سیستم لینوکس وجود دارد. در اینجا، lo یک رابط loopback است که برای دسترسی محلی به همه سرویس‌های شبکه استفاده می‌شود و آدرس IP آن 127.0.0.1 است.

دستور ‘ifconfig’، در انواع سیستم‌های یونیکسی قابل استفاده است.

 

روش 2. استفاده از دستور ip

دستور ‘ifconfig’ در آخرین نسخه‌های لینوکس منسوخ شده است و شما می‌توانید، به جای آن، از دستور 'ip' به صورت زیر برای نمایش رابط‌های شبکه استفاده کنید.

$ ip link show

خروجی دستور به صورت زیر خواهد بود:

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
   link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: enp5s0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN mode DEFAULT group default qlen 1000
    link/ether 24:b6:fd:37:8b:29 brd ff:ff:ff:ff:ff:ff
3: wlp9s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP mode DORMANT group default qlen 1000
    link/ether c0:18:85:50:47:4f brd ff:ff:ff:ff:ff:ff

 

شما می‌توانید به صورت زیر نیز از دستور ip استفاده نمایید.

$ ip addr
$ ip -s link

اگر دقت کنید، متوجه می‌شوید که این دستور، وضعیت اتصال رابط‌های شبکه را نیز نشان می‌دهد.

همانطور که در خروجی مشاهده می‌کنید، کارت اترنت سیستم به کابل شبکه متصل نیست. به همین دلیل کلمه "DOWN" مقابل آن نوشته شده است. در حالیکه، کارت شبکه بی سیم سیستم متصل است و بنابراین کلمه "UP" مقابل آن قابل مشاهده است.

این دو دستور (ifconfig و ip) به تنهایی کافی است تا بتوانید کارت‌های شبکه موجود در سیستم‌های لینوکس خود را بیابید.

با این حال، روش‌های دیگری نیز برای لیست کردن رابط‌های شبکه در لینوکس وجود دارد که در ادامه به بیان آن پرداخته شده است.

 

روش 3. مشاهده دایرکتوری sys/class/net

هسته لینوکس، جزئیات رابط شبکه سیستم را در دایرکتوری sys/class/net/ ذخیره می‌کند. با مشاهده این دایرکتوری می‌توانید، لیست رابط‌های موجود را مشاهده نمایید.

$ ls /sys/class/net

خروجی دستور مشابه زیر خواهد بود:

enp5s0 lo wlp9s0

 

روش 4. مشاهده فایل proc/net/dev

در سیستم عامل‌های لینوکس، فایل proc/net/dev/ شامل اطلاعاتی در مورد رابط‌های شبکه است.

برای مشاهده کارت‌های شبکه موجود کافیست با استفاده از دستور زیر، محتوای آن را مشاهده کنید:

$ cat /proc/net/dev

خروجی این دستور مشابه زیر است:

Inter-| Receive | Transmit
face |bytes packets errs drop fifo frame compressed multicast|bytes packets errs drop fifo colls carrier compressed
wlp9s0: 629189631 566078 0 0 0 0 0 0 60822472 300922 0 0 0 0 0 0
enp5s0: 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
lo: 303980988 171420 0 0 0 0 0 0 303980988 171420 0 0 0 0 0 0

 

روش 5: استفاده از دستور 'netstat'

دستور netstat، جزئیات مختلفی از قبیل اتصالات شبکه، جداول مسیریابی، اطلاعات رابط و ... را نمایش می‌دهد.

$ netstat -i

خروجی دستور مشابه زیر خواهد بود:

Kernel Interface table
Iface MTU RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR Flg
lo 65536 171420 0 0 0 171420 0 0 0 LRU
wlp9s0 1500 565625 0 0 0 300543 0 0 0 BMRU

دقت کنید که netstat منسوخ شده است و دستور جایگزین برای "netstat -i" بصورت "ip -s link" است. همچنین توجه داشته باشید که این روش، تنها رابط‌های فعال و نه همه رابط‌های موجود را لیست می‌کند.

 

روش 6. استفاده از دستور 'nmcli'

nmcli، یک ابزار خط فرمان برای کنترل NetworkManager و گزارش وضعیت شبکه است. این دستور، برای ایجاد، نمایش، ویرایش، حذف، فعال سازی، غیرفعال سازی اتصالات شبکه و نمایش وضعیت شبکه استفاده می‌شود.

اگر Network Manager را در سیستم لینوکس خود دارید، می‌توانید به کمک ابزار nmcli و با استفاده از دستورات زیر، رابط‌های شبکه موجود را لیست نمایید:

$ nmcli device status

یا،

$ nmcli connection show

 

 

 

منبع:

ostechnix