تنظیمات شبکه در لینوکس اوبونتو (Ubuntu) و Debian



چه از آخرین نسخه‌های اوبونتو (مانند ۲۴.۰۴ و ۲۲.۰۴) استفاده کنید و چه از دبیان ۱۲، روش استاندارد و مدرن برای مدیریت تنظیمات شبکه، ابزار Netplan است. این ابزار که جایگزین روش قدیمی ویرایش فایل /etc/network/interfaces شده، پیکربندی شبکه را با استفاده از فایل‌های ساده و خوانای YAML بسیار سریع‌تر و قابل اعتمادتر می‌کند.

در این راهنمای جامع، ابتدا تنظیم IP استاتیک با Netplan را قدم به قدم بررسی می‌کنیم و سپس به سراغ سایر دستورات و روش‌های کلیدی برای شناسایی، نصب و مدیریت کارت شبکه در لینوکس می‌رویم.

 

بخش اول: تنظیم IP استاتیک با Netplan (روش استاندارد)

این روش اصلی و پیشنهادی برای سرورهای مدرن اوبونتو و دبیان است.

مرحله ۱: پیدا کردن نام کارت شبکه (Interface)

قبل از هر کاری، باید نام کارت شبکه سرور خود را بدانید. دستور ip در لینوکس یکی از پایه‌ای‌ترین ابزارها برای این کار است. دستور زیر را در ترمینال وارد کنید:

ip a

یا می‌توانید از دستور کامل‌تر آن یعنی ip addr نیز استفاده کنید که خروجی یکسانی دارد. در خروجی، به دنبال نامی شبیه به enp0s3، ens18 یا eth0 بگردید. این نام را یادداشت کنید زیرا در مرحله بعد به آن نیاز خواهید داشت.

 

مرحله ۲: پیدا کردن و ویرایش فایل پیکربندی Netplan

فایل‌های پیکربندی Netplan در مسیر /etc/netplan/ قرار دارند و معمولا نامی شبیه به 01-netcfg.yaml یا 50-cloud-init.yaml دارند. با دستور ls /etc/netplan آن را پیدا کرده و با یک ویرایشگر متن مانند nano باز کنید:

sudo nano /etc/netplan/50-cloud-init.yaml

 

مرحله ۳: وارد کردن تنظیمات IP استاتیک

محتوای فایل را کاملا پاک کرده و ساختار زیر را با اطلاعات شبکه خود جایگزین کنید. (توجه: تورفتگی‌ها و فاصله‌ها در فایل YAML بسیار مهم هستند و باید دقیقا مانند نمونه زیر باشند).

network:
  version: 2
  ethernets:
    enp0s3:
      dhcp4: no
      addresses:
        - 192.168.1.101/24
      routes:
        - to: default
          via: 192.168.1.1
      nameservers:
        addresses: [8.8.8.8, 1.1.1.1]

 

توضیح مقادیر:

  • enp0s3: نام کارت شبکه خود را که در مرحله ۱ پیدا کردید، در اینجا جایگزین کنید.
  • dhcp4: no: با این دستور، دریافت IP خودکار (DHCP) را غیرفعال می‌کنیم تا بتوانیم آی پی دادن به کارت شبکه در لینوکس را به صورت دستی انجام دهیم.
  • addresses: آدرس IP استاتیک مورد نظر شما همراه با ساب‌نت مسک (Subnet Mask). /24 معادل 255.255.255.0 است.
  • via: آدرس Gateway شبکه شما (معمولا آدرس IP روتر یا مودم).
  • nameservers: آدرس DNS سرورها. استفاده از DNSهای عمومی مانند گوگل (8.8.8.8) و کلادفلر (1.1.1.1) توصیه می‌شود.

 

مرحله ۴: تست و اعمال تغییرات

قبل از اعمال نهایی، همیشه ابتدا تنظیمات خود را تست کنید تا مطمئن شوید خطای نوشتاری ندارید. این دستور تنظیمات را بدون ذخیره کردن، آزمایش می‌کند:

sudo netplan try

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

پس از تایید صحت تنظیمات، با دستور زیر آن را به صورت دائمی اعمال کنید. این کار تنظیمات جدید شبکه در لینوکس را نهایی می‌کند.

sudo netplan apply

 

مرحله ۵: تایید نهایی

با اجرای مجدد دستور ip a، می‌توانید مشاهده کنید که کارت شبکه شما اکنون آدرس IP استاتیکی که تنظیم کرده‌اید را دریافت کرده است.

 

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

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

شناسایی کارت شبکه در لینوکس (سخت‌افزار)

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

  • دستور lspci: برای کارت‌های شبکه‌ای که از طریق اسلات PCI متصل هستند، این دستور بسیار مفید است.
    lspci | grep -i ethernet

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

  • دستور lshw: این دستور اطلاعات بسیار دقیقی درباره سخت‌افزارها، از جمله کارت شبکه، ارائه می‌دهد.
    sudo lshw -C network

    در خروجی این دستور می‌توانید مدل دقیق کارت شبکه، درایور در حال استفاده (driver) و نام منطقی آن (logical name) را ببینید.

 

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

در اکثر موارد، هسته لینوکس (Kernel) به صورت خودکار درایورهای لازم برای کارت‌های شبکه رایج را شناسایی و نصب می‌کند. اگر پس از اجرای دستور lshw -C network متوجه شدید که کارت شبکه شما شناسایی شده اما با عنوان UNCLAIMED مشخص شده، یعنی درایور آن نصب یا بارگذاری نشده است.
در این شرایط:

  1. با استفاده از دستور lspci مدل دقیق کارت شبکه را پیدا کنید.
  2. در یک دستگاه دیگر با دسترسی به اینترنت، مدل کارت شبکه به همراه عبارت “driver linux ubuntu” را جستجو کنید تا بسته‌های نرم‌افزاری یا firmware مورد نیاز را پیدا کنید.
  3. بسته linux-firmware را آپدیت کنید، زیرا بسیاری از درایورها در آن قرار دارند:
    sudo apt update && sudo apt install linux-firmware

 

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

اگر نیاز به ریست کردن یا فعال/غیرفعال کردن یک کارت شبکه دارید (برای مثال، برای بارگذاری مجدد تنظیمات)، می‌توانید از دستور ip link استفاده کنید.

  • غیرفعال کردن کارت شبکه:
    sudo ip link set enp0s3 down
  • فعال کردن مجدد کارت شبکه:
    sudo ip link set enp0s3 up

نکته: نام enp0s3 را با نام کارت شبکه خود جایگزین کنید.

 

تغییر IP در لینوکس به صورت موقت

اگر نمی‌خواهید از Netplan استفاده کنید و فقط نیاز به یک تغییر IP موقت دارید که پس از ریبوت از بین برود، می‌توانید مستقیما از دستور ip استفاده کنید.

  1. اختصاص IP جدید:
    sudo ip addr add 192.168.1.102/24 dev enp0s3
  2. تنظیم Gateway پیش‌فرض:
    sudo ip route add default via 192.168.1.1

این تنظیمات تا راه‌اندازی مجدد بعدی سیستم باقی خواهند ماند و روشی سریع برای تست شبکه هستند، اما برای تنظیمات دائمی باید از Netplan استفاده کرد.