آموزش IPv6؛ شب هشتم: پیکربندی شبکه در Debian¶
Debian ممکن است از ifupdown، systemd-networkd یا NetworkManager استفاده کند. پیش از ویرایش باید مالک Interface را پیدا و فقط یک مدیر شبکه را مسئول آن نگه داریم.
systemctl is-active NetworkManager systemd-networkd networking
nmcli device status 2>/dev/null || true
networkctl status enp1s0 2>/dev/null || true
grep -R "enp1s0" /etc/network/interfaces /etc/network/interfaces.d 2>/dev/null
مثالهای اصلی از ifupdown کلاسیک استفاده میکنند که روی Serverها رایج است.
SLAAC با ifupdown¶
در /etc/network/interfaces.d/enp1s0:
inet6 auto دریافت RA را فعال میکند. اگر IPv4 جای دیگری تنظیم شده، بخش inet dhcp را ننویسید.
Dual Stack ثابت با ifupdown¶
auto enp1s0
iface enp1s0 inet static
address 192.0.2.60/24
gateway 192.0.2.1
iface enp1s0 inet6 static
address 2001:db8:1200:10::60/64
gateway fe80::1
اگر ترکیب ifupdown و Provider، Gateway از نوع Link-local را درست Resolve نمیکند، از Hook صریح استفاده کنید:
up ip -6 route replace default via fe80::1 dev enp1s0
down ip -6 route del default via fe80::1 dev enp1s0 || true
gateway و Hook را همزمان اضافه نکنید. طراحیهای /128 Routeشده ممکن است به Route از نوع On-link برای Gateway نیاز داشته باشند؛ مستند Provider مقدم است.
Apply با احتیاط¶
ifdown میتواند اتصال راه دور را قطع کند. با Console و در Maintenance Window:
اگر ifupdown2 نصب است، sudo ifreload -a تغییرها را آرامتر Reconcile میکند، اما آزمایش پس از Reboot همچنان ضروری است.
جایگزین systemd-networkd¶
برای Hostی که از قبل با networkd مدیریت میشود، در /etc/systemd/network/20-wired.network بنویسید:
[Match]
Name=enp1s0
[Network]
Address=2001:db8:1200:10::60/64
Gateway=fe80::1%enp1s0
DNS=2001:db8:1200:10::53
IPv6AcceptRA=no
مالکیت Interface را دوباره بررسی کنید و Restart را فقط با دسترسی امن انجام دهید. نتیجه را با networkctl status enp1s0، ip -6 route و resolvectl status بسنجید.
فایل /etc/resolv.conf ممکن است توسط resolvconf، NetworkManager یا systemd-resolved تولید شود. بهجای Overwrite کردن، Symlink و Manager آن را بررسی کنید.