آموزش IPv6؛ شب هفتم: Ubuntu Server و Netplan¶
در Ubuntu، تنظیم SLAAC و Dual Stack ثابت را با Netplan انجام میدهیم و با netplan try خطر قطع دسترسی سرور راه دور را کاهش میدهیم.
Netplan تنظیم را برای systemd-networkd یا NetworkManager تولید میکند. نخست فایلها و Renderer فعلی را بررسی کنید:
YAML به Space نیاز دارد، نه Tab. نام enp1s0، آدرسها، Gateway و DNS را جایگزین کنید و آدرس مستندسازی را با شبکهٔ واقعی ترکیب نکنید.
SLAAC و Route دریافتی از RA¶
فایلی مانند /etc/netplan/60-ipv6.yaml بسازید:
dhcp6: false، SLAAC را غیرفعال نمیکند. accept-ra: true اجازهٔ دریافت RA را میدهد؛ خود RA نوع Address Autoconfiguration و احتمالاً DNS را تعیین میکند.
سرور Dual Stack با آدرس ثابت¶
network:
version: 2
renderer: networkd
ethernets:
enp1s0:
dhcp4: false
dhcp6: false
accept-ra: false
addresses:
- 192.0.2.50/24
- 2001:db8:1200:10::50/64
routes:
- to: default
via: 192.0.2.1
- to: default
via: fe80::1
on-link: true
nameservers:
addresses:
- 192.0.2.53
- 2001:db8:1200:10::53
search: [example.net]
Netplan جدید بهجای gateway6 منسوخشده از Default Route استفاده میکند. Gateway از نوع Link-local در IPv6 رایج است و on-link: true ابهام Reachability را رفع میکند. اگر Provider یک Global Gateway مشخص کرده، دقیقاً همان را بهکار ببرید.
اعتبارسنجی و Apply امن¶
sudo cp -a /etc/netplan /root/netplan-backup
sudo netplan generate
sudo netplan try
# Confirm interactively before its rollback timer expires.
sudo netplan apply
روی سرور راه دور، netplan try را از مسیری اجرا کنید که Console نیز در دسترس باشد. اگر فایل Secret دارد، Permission را محدود کنید:
بررسی و Rollback¶
ip -6 addr show dev enp1s0
ip -6 route
ip -6 route get 2606:4700:4700::1111
resolvectl status enp1s0
curl -6 --connect-timeout 5 https://example.com/
اگر cloud-init مالک شبکه باشد، ممکن است پس از Reboot فایل Netplan را دوباره بسازد. Metadata شبکهٔ Cloud را تغییر دهید یا Network Rendering آن را آگاهانه خاموش کنید؛ صرفاً با فایل تولیدشده نجنگید.
برای Rollback از Console، YAML پشتیبان را برگردانید و netplan generate && netplan apply اجرا کنید. هنگام نشست Remote هرگز تمام تنظیم شبکه را حذف نکنید.