شما برای مطالعه این مقاله فقط 10 دقیقه وقت نیاز دارید

network-configuration-in-linux

آموزش تنظیمات کارت شبکه در لینوکس اوبونتو و centos

پیکربندی تنظیمات کارت شبکه در لینوکس، از ضروری ترین مواردی است که باید بلافاصله بعد از نصب و راه اندازی سیستم خود یاد بگیرید چون امروزه تقریباً هر کار ما به رابط شبکه و اینترنت وابسته است و بدون آن نمی توان کارها را آن طور که باید پیش برد.

ابزارهای زیادی در دنیای لینوکس وجود دارد که با استفاده از آنها می توانید پیکربندی رابط های شبکه را خیلی سریع تر جلو ببرید. Nmcli ،ip ،ifconfig و nmtui از مهم ترین آنها هستند. در کنار این ابزارها، می توانید کارهای مربوط به تنظیمات شبکه را با GUI هم جلو ببرید که نسبت به بقیه ابزارها واضح تر و قابل لمس تر هستند.

ابزارهای مدیریت کارت شبکه در لینوکس

ابزارهای زیادی برای شناسایی و پیکربندی رابط های شبکه وجود دارند که هر کدام ویژگی ها و کاربردهای خاص خودشان را دارند و متناسب با سینتکسی که دارند می توانید از آنها استفاده کنید.

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

ابزار ip

  • نمایش اطلاعات رابط شبکه
  • تنظیم آدرس آی پی رابط شبکه
  • ایجاد تغییر جدول مسیریابی
  • پیکربندی تنظیمات رابط شبکه مثل سرعت و MTU
  • نمایش آمار مربوط به فعالیت شبکه
  • مسدود سازی آدرس های خاص

دستور نصب ip در اوبونتو

sudo apt install iproute2

دستور نصب ip در centos

sudo dnf install iproute2
یا 
sudo yum install iproute2

ابزار ifconfig

  • نمایش اطلاعات رابط شبکه
  • تنظیم آدرس IP و ماسک زیرشبکه
  • فعال یا غیرفعال سازی رابط شبکه
  • تغییر MTU رابط شبکه

دستور نصب ifconfig در اوبونتو

sudo apt install net-tools

دستور نصب ifconfig در centos

sudo dnf install net-tools
یا 
sudo yum install net-tools

ابزار nmcli

  • نمایش لیست اتصالات شبکه
  • نمایش اطلاعات یک اتصال خاص
  • نمایش وضعیت یک رابط شبکه
  • نمایش لیست دستگاه های WIFI
  • مدیریت اتصالات شبکه
  • مدیریت رابط های شبکه
  • نمایش رویدادهای شبکه
  • عیب یابی شبکه

دستور نصب nmcli در اوبونتو

sudo apt-get install network-manager

دستور نصب nmcli در centos

sudo dnf install NetworkManager
یا 
sudo yum install NetworkManager

ابزار nmtui

  • نمایش شبکه های بی سیم
  • اتصال به شبکه های بی سیم
  • نمایش لیست اتصالات شبکه
  • تنظیم آی پی شبکه های اترنت
  • مدیریت رابط های شبکه
  • مدیریت پروفایل های شبکه
  • مدیریت تنظیمات VPN

دستور نصب nmtui در اوبونتو

sudo apt install network-manager-tui

دستور نصب nmtui در centos

sudo dnf install NetworkManager-tui
یا 
sudo yum install NetworkManager-tui

ابزار ethtool

  • نمایش اطلاعات درایور کارت شبکه
  • تنظیم اطلاعات سخت افزاری رابط شبکه
  • نمایش آمار مربوط به رابط شبکه
  • نمایش وضعیت رابط شبکه 
  • تست عملکرد رابط شبکه
  • تست سرعت کارت شبکه
  • تشخیص و رفع مشکلات شبکه 

دستور نصب ethtool در اوبونتو

sudo apt install ethtool

دستور نصب ethtool در centos

sudo dnf install ethtool
یا 
sudo yum install ethtool

پیکربندی تنظیمات کارت شبکه در لینوکس با خط فرمان

با تامین پیش نیازهای زیر می توانید انواع تنظیماتی که در ادامه بررسی می کنیم را با ابزارهای مطرح شده انجام دهید و به راحتی از عهده مدیریت رابط های شبکه خود بربیایید:

  • سیستم یا سرور لینوکس اوبونتو یا centos
  • حساب کاربر روت یا کاربری با امتیازات sudo
  • دسترس به ترمینال 

۱) مشاهده لیست کارت های شبکه

هر کدام از دستورات، اطلاعات مربوط به تمام رابط های شبکه را در فرمت های متفاوتی ارائه می دهند ولی جزئیات همه آنها تقریباً یکی است:

sudo ip a

مشاهدده لیست رابط ها با ip a

sudo ifconfig -a

نمایش لیست کارت های شبکه با ifconfig

sudo nmcli device status

نمایش لیست رابط ها با nmcli

sudo lshw -c network

مشاهده لیست رابط های شبکه با lshw

ولی اگر خواستید می توانید اطلاعات خروجی آنها را با استفاده از grep به شکل دلخواه خود فیلتر کنید.

به عنوان مثال اگر می خواهید خروجی دستور ip را طوری فیلتر کنید که فقط بخش آدرس ip مربوط به کارت های شبکه را به صورت رنگی نشان دهد، می توانید از دستور زیر استفاده کنید:

sudo ip a | grep -E 'inet\s'       #IPv4 addresses

sudo ip a | grep -E 'inet6\s'     #IPv6 addresses

این دستور، فقط خطوط حاوی inet را نمایش می دهد که این مقدار inet هم همان آدرس آی پی کارت شبکه موردنظر است.

۲) مشاهده اطلاعات یک رابط شبکه خاص

برای این کار می توانید از ابزارهای مختلف کمک بگیرید:

sudo ip addr show eth0

sudo nmcli device show eth0

sudo ifconfig eth0

sudo sudo lshw -class network -short | grep eth0

۳) اضافه کردن رابط شبکه جدید

لیست رابط های شبکه توزیع اوبونتو در مسیر etc/network/interfaces/ قرار دارد که اگر با استفاده از ویرایشگر دلخواه خود این فایل را باز کنید، می توانید جزئیات هر کدام از آنها را ببینید:

nano /etc/network/interfaces

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

برای ایجاد یک رابط شبکه استاتیک، طبق پروسه زیر جلو بروید:

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

auto eth1

با خط زیر رابط eth1 که قرار است آدرس آی پی آن از نوع استاتیک باشد را اضافه کنید:

iface eth1 inet static

آدرس آی پی را به صورت زیر وارد کنید:

address 192.168.1.2

نت ماسک را با استفاده از netmask وارد کنید:

netmask 255.255.255.0

آدرس gateway را هم با خط زیر مشخص کنید:

gateway 192.168.1.1

آدرس سرور dns موردنظر را هم با استفاده از خط زیر مشخص کنید:

dns-nameservers 8.8.8.8 8.8.4.4

این تغییرات را در فایل ذخیره کنید و سپس آن را ببندید.

برای ایجاد یک رابط شبکه با آی پی داینامیک هم به صورت زیر عمل کنید:

این بار، بعد از اضافه کردن خط مربوط به فعال سازی خودکار رابط شبکه، خط زیر را اضافه کنید:

auto eth1

iface eth0 inet dhcp

با این خط، در واقع از سرور dhcp می خواهید که به طور خودکار یک آدرس آی پی ipv4 به رابط شبکه اختصاص دهد و دیگر نیاز به وارد کردن آدرس gateway و mask نیست.

خطوط بعدی هم بستگی به نیازهای شبکه و تنظیمات موردنظر شما دارد که dns-nameservers هم یکی از آنهاست و می توانید از طریق این فایل، تعریف کنید.

بعد از اینکه که تکه کد مربوط به ایجاد رابط شبکه را در فایل لحاظ کردید، باید سرویس networking را مجدداً راه اندازی کنید یا سیستم را ریستارت کنید.

sudo systemctl restart networking

در آخر، رابط شبکه جدید را فعال کنید:

sudo ifup eth1

حالا اگر سیستم شما دارای توزیع centos است، باید طبق مراحل زیر جلو بروید:

در مسیر /etc/sysconfig/network-scripts/ یک فایل به اسم دلخواه مثلاً ifcfg-eth1 ایجاد کنید:

sudo nano /etc/sysconfig/network-scripts/ifcfg-eth1

متغیرهای آن را به شکل زیر و بر اساس اطلاعات موردنظر خود در این فایل وارد کنید:

TYPE=Ethernet

BOOTPROTO=none

NAME=eth1

DEVICE=eth1

ONBOOT=yes

IPADDR=192.168.1.2

NETMASK=255.255.255.0

GATEWAY=192.168.1.1

DNS1=8.8.8.8

DNS2=8.8.4.4

که در این مثال، یک رابط از نوع اترنت با اسم eth1، آدرس آی پی 192.168.1.2 و … اضافه شده است.

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

DEVICE=eth1

BOOTPROTO=dhcp

ONBOOT=yes

فایل را ذخیره کرده و آن را ببندید.

بعد سرویس NetworkManager را مجدداً راه اندازی کنید:

sudo systemctl restart NetworkManager

با استفاده از دستور ifup، آن را فعال کنید:

sudo ifup eth1

البته برای ایجاد رابط جدید می توانید از nmcli هم کمک بگیرید:

در این روش، رابط شبکه در قالب یک connection ایجاد می شود و از این به بعد اسم آن connection معرف این رابط خواهد بود.

کلیک کنید  آشنایی با تعریف، ویژگی و نحوه نصب فایروال CSF در اوبونتو

ابتدا اسم رابط، اسم اتصال و سایر ویژگی های موردنظر را متناسب با سینتکس زیر لحاظ کنید:

sudo nmcli con add type ethernet con-name your-connection-name ipv4.method manual ifname ethx ip4 192.168.1.50/24 gw4 192.168.1.1 

* اگر می خواهید از آدرس آی پی داینامیک استفاده کنید، کافیست ipv4.method را روی auto تنظیم کنید و بقیه فیلدها را لحاظ نکنید.

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

sudo nmcli down id your-connection-name

sudo nmcli up id your-connection-name

البته برای ایجاد تغییر در این رابط می توانید از آپشن mod استفاده کنید. برای مثال اگر تنظیم آدرس دی ان اس را فراموش کرده اید می توانید از دستور زیر استفاده کنید:

sudo nmcli con mod your-connection-name ipv4.dns "8.8.8.8 8.8.4.4"

* توجه داشته باشید که اسم هر کدام از پارامترها در مرحله add و modify متفاوت است. مثلاً موقع ایجاد رابط باید از ip4 و gw4 استفاده کنید. در حالی که موقع modify کردن، باید از ipv4 و gwv4 استفاده کنید.

۴) تغییر آدرس آی پی رابط شبکه

اگر بعد از یک مدت، به خاطر امور فنی یا امنیتی به فکر تغییر آدرس آی پی رابط شبکه هستید، می توانید از ابزارهای ip ،ifconfig ،nmcli و nmtui کمک بگیرید یا اینکه مستقیماً فایل مربوط به رابط های شبکه را باز کنید و متغیر ip address را به شکل دلخواه تغییر دهید.

تغییر آی پی با nmcli

sudo nmcli con mod your-connection-name ipv4 192.168.32.12

تغییر آدرس آی پی با ifconfig

sudo ifconfig eth0 192.168.1.100

تغییر آدرس آی پی با ip

sudo ip addr add 192.168.1.100/24 dev eth0

با nmtui مراحل کمی طولانی تر است. پس اگر با این دستورات به نتیجه نرسیده اید و دوست دارید nmtui را هم امتحان کنید، طبق مراحل زیر جلو بروید:

دستور زیر را در ترمینال اجرا کنید:

sudo nmtui

با کلیدهای جهتدار، گزینه Edit a connection را انتخاب کنید و اینتر را بزنید.کلیک روی edit a connection

رابط شبکه موردنظر را انتخاب کنید.انتخاب رابط شبکه

گزینه Edit را انتخاب کنید و اینتر را فشار دهید تا تنظیمات پیکربندی باز شود.کلیک روی edit

با کلیدهای جهت دار، گزینه IPv4 CONFIGURATION را هایلایت کنید و سپس اینتر را بزنید.

در صورت تمایل تغییر آدرس آی پی داینامیک، گزینه Manual را انتخاب کنید و اینتر را بزنید.

انتخاب manual

روی بخش Addresses کلیک کنید و آدرس موردنظر را وارد کنید.وارد کردن آدرس آی پی با nmtui

در آخر روی OK کلیک کنید تا این تغییر ذخیره شود.

دوباره از لیست موجود، Activate a connection انتخاب کنید و رابطی که آدرس آن را تغییر داده اید، انتخاب کنید.فعال سازی مجدد رابط شبکه در تنظیمات کارت شبکه در لینوکس

سپس، اینتر را فشار دهید تا فعال شود.

با انتخاب گزینه quite از فضای nmtui خارج شوید.خروج از nmtui

* اگر آدرس آی پی را به صورت داینامیک تنظیم کرده اید، برای تغییر آدرس آی پی می توانید رابط شبکه موردنظر را غیرفعال و مجدداً فعال کنید.

۵) غیرفعال سازی/فعال سازی رابط شبکه

اگر به دلایلی مثل تخصیص مجدد آی پی به صورت داینامیک، رفع مشکلات اتصال و … می خواهید رابط شبکه را غیرفعال و مجدداً فعال کنید، می توانید از دستورات زیر استفاده کنید:

رفرش رابط شبکه با دستور ip

sudo ip link set eth0 down

sudo ip link set eth0 up

فعال سازی مجدد رابط شبکه با دستور ifconfig

sudo ifconfig down eth0 

sudo ifconfig up eth0 

غیرفعال سازی/فعال سازی کارت شبکه با nmcli

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

sudo nmcli networking off

sudo nmcli networking on

اگر می خواهید یک رابط شبکه خاص را ریستارت کنید، باید اسم connection مربوط به آن را در دستورات زیر لحاظ کنید:

sudo nmcli down id connection-name

sudo nmcli up id connection-name

دستورات ifup و ifdown هم برای رفرش مجدد رابط شبکه موردنظر به کار می روند:

sudo ifdown eth0

sudo ifup eth0

۶) تغییر مقدار پارامتر MTU

پارامتر MTU، حداکثر اندازه بسته های انتقالی از رابط شبکه را مشخص می کند و برای بهینه سازی سرعت اینترنت در رابط دارد. 

موقع تعیین اندازه MTU باید دقت زیادی به خرج دهید چون بالا بودن بیش از حد آن باعث افزایش هزینه های پردازشی و latency می شود و پایین بودن آن باعث کاهش کارایی شبکه و افزایش هزینه های ارسال می شود.

برای تعیین مقدار پارامتر MTU می توانید از دستورات ip و ifconfig کمک بگیرید:

sudo ip link set eth0 mtu 1500

sudo ifconfig eth0 mtu 1500

یا اینکه مستقیماً فایل های پیکربندی مربوط به رابط شبکه را ویرایش کنید و مقدار mtu را تغییر دهید.

۷) مدیریت کارت شبکه اترنت با ethtool

ابزار ethtool برای کنترل درایورهای شبکه و تنظیمات سخت افزاری رابط ها مخصوصاً رابط های اترنت به کار می رود.

مشاهده جزئیات تنظیمات کارت شبکه موردنظر

sudo ethtool eth0

بررسی آمار مربوط به رابط شبکه

sudo ethtool --statistics eth0

تغییر حالت auto-negotiation رابط موردنظر

sudo ethtool --pause eth0 autoneg off

sudo ethtool --pause eth0 autoneg on

تغییر سرعت و حالت duplex رابط

sudo ethtool -s eth0 speed 10 duplex half

۸) حذف رابط شبکه

اگر به دلایلی مثل عدم استفاده از رابط، تغییر در توپولوژی شبکه یا مسائل فنی و امنیتی مجبور به حذف رابط شبکه موردنظر هستید، می توانید از یکی از دستورات nmcli یا ip کمک بگیرید.

sudo nmcli connection delete id connection_name

sudo ip link delete interface-code

حذف فایل پیکربندی رابط شبکه موردنظر از لیست اینترفیس ها هم مطمئن ترین راه برای حذف دائمی یک رابط شبکه از سیستم لینوکس است.

مدیریت تنظیمات کارت شبکه در لینوکس از طریق رابط گرافیکی

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

مراحل تنظیمات رابط شبکه در محیط دسکتاپ gnome به صورت زیر است:

روی آیکون شبکه گوشه بالا-راست کلیک کنید.

روی Network Settings یا آیکون چرخ دنده کلیک کنید.

این صفحه حاوی اطلاعات نقطه اتصال فعلی، vpn و پراکسی است.

حالا اینجاست که باید در مورد کاری که می خواهید انجام دهید، تصمیم بگیرید.

اگر می خواهید ویژگی های رابط شبکه موجود مثلاً آدرس آی پی آن را تغییر دهید، کافیست روی علامت چرخ دنده مربوط به آن کلیک کنید.کلیک روی آیکون چرخ دنده برای شروع تنظیمات کارت شبکه در لینوکس

به تب IPv4 بروید و گزینه Manual را انتخاب کنید.

سپس، آدرس آی پی جدید، Netmask و آدرس Gateway را وارد کنید.

در صورت تمایل می توانید آدرس سرور DNS موردنظر را هم وارد کنید. 

وارد کردن آدرس آی پی

در آخر با کلیک روی apply این تغییرات را ذخیره کنید و اتصال شبکه خود را ریستارت کنید.

با بررسی هر کدام از تب ها می توانید به تنظیمات متنوعی دسترسی پیدا کنید که اکثر آنها قابل تغییر هستند و می توانید متناسب با نیازهای خود آنها را تنظیم کنید.

اما برای ایجاد یک اتصال جدید باید طبق مراحل زیر جلو بروید:

روی علامت + موجود در صفحه تنظیمات Network کلیک کنید.ایجاد رابط شبکه جدید با GUI

* با اجرای دستور nm-connection-editor در ترمینال هم می توانید به صفحه تنظیمات شبکه دسترسی پیدا کنید.

نوع اتصال مثلاً Ethernet را تعیین کنید.انتخاب نوع رابط

روی create کلیک کنید.

پسورد روت را وارد کنید تا صفجه مربوط به آن باز شود.

اسم موردنظر را در قسمت connection name وارد کنید.

از فیلد device دستگاه مربوط به کارت شبکه اترنت جدید را انتخاب کنید.

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

تک تک تب ها را بررسی کنید و سپس بر اساس ویژگی هایی که برای این رابط جدید در نظر دارید، فیلدهای مربوط به را پر کنید.

در آخر روی Save کلیک کنید تا ذخیره شود.

سخن آخر

پیکربندی تنظیمات کارت شبکه در لینوکس یکی از مهم ترین کارهایی است باید برای پیش برد بهتر کارهای خود بلد باشید. ابزارهای زیادی برای ایجاد تغییرات در رابط ها و کارت های شبکه وجود دارد که با مطالعه داکیومنتیشن و امتحان کردن آنها می توانید ابزاری که بیشتر با نیازهای شما تطابق دارد را پیدا کنید.

مطالب مشابهی که شاید علاقمند باشید

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

دیدگاه های شما

برای دریافت این مقاله لطفا ایمیلتان را وارد کنید

می توانید مقاله را دانلود کنید یا پرینت بگیرید