مشکل network unreachable در اوبونتو

اوبونتو (Ubuntu) یکی از محبوب‌ترین توزیع‌های لینوکس است. گاهی ممکن است هنگام کار با اوبونتو با خطای “network unreachable” مواجه شوید که اتصال اینترنت را کاملاً قطع می‌کند، در حالی که تمام نشانگرهای فیزیکی شبکه طبیعی به نظر می‌رسند.

این مشکل معمولاً ناشی از پیکربندی نادرست شبکه در نسخه‌های مدرن اوبونتو (۱۸.۰۴ به بعد) است که از Netplan برای مدیریت شبکه استفاده می‌کنند.

مدت زمان تخمینی مطالعه: 3 دقیقه

ردیابی مشکل network unreachable

این مشکل معمولاً با اجرای دستور ping google.com در ترمینال و مشاهده خطای “network unreachable” شناسایی می‌شود. در اوبونتو ۱۸.۰۴ به بعد، فایل‌های پیکربندی Netplan (با پسوند .yaml) در مسیر /etc/netplan/ جایگزین فایل قدیمی /etc/network/interfaces شده‌اند.

حل مشکل network unreachable

برای رفع این مشکل مراحل زیر را دنبال کنید:

شناسایی نام اینترفیس شبکه

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

ip -brief link show

خروجی معمولاً شبیه این خواهد بود:

enp3s0    UP     aa:bb:cc:dd:ee:ff <BROADCAST,MULTICAST,UP,LOWER_UP>

(نام اینترفیس معمولاً با en (اترنت) یا wl (وایرلس) شروع می‌شود)

پیکربندی Netplan

فایل پیکربندی Netplan را با یک ویرایشگر متن ایمن مانند nano باز کنید:

sudo nano /etc/netplan/*.yaml

سپس یکی از پیکربندی‌های زیر را متناسب با نیاز خود اعمال کنید:

گزینه ۱: استفاده از DHCP (پیشنهادی)

network:
  version: 2
  renderer: NetworkManager
  ethernets:
    enp3s0:  # نام اینترفیس خود را جایگزین کنید
      dhcp4: true
      nameservers:
        addresses: [8.8.8.8, 8.8.4.4, 1.1.1.1]

گزینه ۲: پیکربندی ایستا (Static)

network:
  version: 2
  renderer: NetworkManager
  ethernets:
    enp3s0:  # نام اینترفیس خود را جایگزین کنید
      addresses:
        - 192.168.1.100/24
      routes:
        - to: default
          via: 192.168.1.1  # آدرس روتر/گیت وی
      nameservers:
        addresses: [8.8.8.8, 8.8.4.4, 1.1.1.1]

توجه مهم:
1. فاصله‌گذاری (indentation) در YAML حیاتی است – فقط از فاصله (space) استفاده کنید (tab مجاز نیست)
2. آدرس‌های IP، subnet mask و gateway باید با تنظیمات شبکه محلی شما تطابق داشته باشند
3. خط renderer: NetworkManager برای نسخه‌های دسکتاپ ضروری است

اعمال تغییرات

پس از ذخیره فایل، تغییرات را اعمال کنید:

sudo netplan apply

در صورت بروز خطا، از دستور زیر برای دیباگ استفاده کنید:

sudo netplan --debug apply

اتصال خود را با دستور ping تست کنید:

 ping 8.8.8.8

دیدگاهتان را بنویسید