آموزش تنظیم IPv4 و IPv6 در AlmaLinux
مقدمه
این مقاله راهنمایی کامل و مرحلهبهمرحله برای پیکربندی آدرسهای IPv4 و IPv6 در توزیعهای AlmaLinux (شامل نسخههای 7، 8، 9 و مشتقات مشابه مثل Rocky Linux/CentOS) با استفاده از ابزار NetworkManager و nmcli است. هدف ایجاد دستورالعملهای عملی، خوانا و قابل اجرا روی سرورهای اختصاصی یا VPS است. در هر بخش سرخطها مشخص و دستورات در خطوط مجزا و بدون پیشوند آورده شدهاند.
پیشنیازها
– دسترسی ریشه (root) یا کاربر با مجوز sudo
– NetworkManager نصب و فعال
– آشنایی پایه با ساختار آدرسدهی IPv4/IPv6 و نام رابط شبکه (مثل eth0، ens3، enp1s0)
شناسایی رابط شبکه
در ابتدا نام رابط شبکه را شناسایی کنید.
nmcli device status ip link show
بررسی تنظیمات فعلی آدرسها
برای دیدن پیکربندی IP فعلی از این دستورات استفاده کنید.
ip addr show <interface> nmcli connection show
پیکربندی IPv4 — حالت DHCP (دریافت خودکار)
اگر خواهان فعالسازی DHCP برای IPv4 هستید.
nmcli connection modify <connection-name> ipv4.method auto nmcli connection down <connection-name> nmcli connection up <connection-name>
پیکربندی IPv4 — تنظیم آدرس
برای تنظیم آدرس IPv4 ثابت، گیتوی و DNS.
nmcli connection modify <connection-name> ipv4.addresses 192.0.2.10/24 nmcli connection modify <connection-name> ipv4.gateway 192.0.2.1 nmcli connection modify <connection-name> ipv4.dns "8.8.8.8 1.1.1.1" nmcli connection modify <connection-name> ipv4.method manual nmcli connection down <connection-name> nmcli connection up <connection-name>
افزودن آدرس IPv4 اضافی (secondary/alias)
برای اضافه کردن چندین آدرس IPv4 به یک رابط.
nmcli connection modify <connection-name> +ipv4.addresses 192.0.2.11/24 nmcli connection down <connection-name> nmcli connection up <connection-name>
حذف آدرس IPv4
برای حذف یک آدرس IPv4 از اتصال.
nmcli connection modify <connection-name> -ipv4.addresses 192.0.2.11/24 nmcli connection down <connection-name> nmcli connection up <connection-name>
پیکربندی IPv6 — حالت SLAAC / autoconf (اعده عمومی)
فعال کردن دریافت آدرس IPv6 خودکار (SLAAC).
nmcli connection modify <connection-name> ipv6.method auto nmcli connection down <connection-name> nmcli connection up <connection-name>
پیکربندی IPv6 — حالت DHCPv6
برای شبکههایی که DHCPv6 ارائه میدهند.
nmcli connection modify <connection-name> ipv6.method dhcp nmcli connection down <connection-name> nmcli connection up <connection-name>
پیکربندی IPv6 — آدرس
برای تنظیم آدرس IPv6 ثابت و مسیر پیشفرض (gateway) و DNS.
nmcli connection modify <connection-name> ipv6.addresses 2001:db8:abcd:1::10/64 nmcli connection modify <connection-name> ipv6.gateway 2001:db8:abcd:1::1 nmcli connection modify <connection-name> ipv6.dns "2001:4860:4860::8888" nmcli connection modify <connection-name> ipv6.method manual nmcli connection down <connection-name> nmcli connection up <connection-name>
اضافه کردن چند آدرس IPv6 (secondary)
برای اضافهکردن آدرسهای IPv6 بیشتر به اتصال.
nmcli connection modify <connection-name> +ipv6.addresses 2001:db8:abcd:1::11/64 nmcli connection down <connection-name> nmcli connection up <connection-name>
حذف آدرس IPv6
برای حذف آدرس IPv6 از اتصال.
nmcli connection modify <connection-name> -ipv6.addresses 2001:db8:abcd:1::11/64 nmcli connection down <connection-name> nmcli connection up <connection-name>
پیکربندی IP روی فایل شبکه (نسخههای قدیمی: AlmaLinux 7 / CentOS 7)
در نسخههایی که NetworkManager ممکن است فعال نباشد، میتوانید فایل ifcfg را ویرایش کنید. مسیرها معمولاً /etc/sysconfig/network-scripts/ifcfg-<interface> هستند.
vi /etc/sysconfig/network-scripts/ifcfg-<interface>
نمونه تنظیمات IPv4 استاتیک در ifcfg:
DEVICE=<interface> BOOTPROTO=none ONBOOT=yes IPADDR=192.0.2.10 PREFIX=24 GATEWAY=192.0.2.1 DNS1=8.8.8.8
برای IPv6 استاتیک در ifcfg:
IPV6INIT=yes IPV6ADDR=2001:db8:abcd:1::10/64 IPV6_DEFAULTGW=2001:db8:abcd:1::1
systemctl restart network
بازبینی و تست پیکربندی
برای بررسی برقراری اتصال و مسیرها:
ip -6 route show ip -4 route show ping -c 4 8.8.8.8 ping6 -c 4 2001:4860:4860::8888 nmcli connection show <connection-name>
تنظیمات فایروال مرتبط با IPv6
اگر firewalld فعال است، چک و اعمال کنید.
firewall-cmd --list-all firewall-cmd --permanent --add-rich-rule 'rule family="ipv6" source address="2001:db8::/32" accept' firewall-cmd --reload
برای اجازه ICMPv6 (ضروری برای عملکرد صحیح IPv6):
firewall-cmd --permanent --add-icmp-block-inversion firewall-cmd --permanent --add-icmp-block=echo-request firewall-cmd --reload
(نکته: تنظیمات فایروال بسته به نیازهای امنیتی شما باید دقیقتر تنظیم شود.)
پیکربندی روتینگ و NDP (برای سناریوهای پیشرفته)
اگر نیاز به روتینگ دستی یا proxy NDP دارید:
sysctl -w net.ipv6.conf.all.forwarding=1 echo 1 > /proc/sys/net/ipv6/conf/all/forwarding
برای ماندگاری:
echo "net.ipv6.conf.all.forwarding = 1" >> /etc/sysctl.conf sysctl -p
برای proxy NDP (مثال):
sysctl -w net.ipv6.conf.<interface>.proxy_ndp=1
موارد مخصوص AlmaLinux/Rocky Linux 9 (systemd-networkd ممکن است)
پیشفرض NetworkManager در RHEL9 مشتقات فعال است؛ در صورتی که systemd-networkd مورد استفاده باشد، فایلهای .network را در /etc/systemd/network/ ویرایش کنید.
مثال فایل /etc/systemd/network/10-static.network:
[Match] Name=<interface> [Network] Address=192.0.2.10/24 Gateway=192.0.2.1 DNS=8.8.8.8
برای IPv6:
Address=2001:db8:abcd:1::10/64 Gateway=2001:db8:abcd:1::1
systemctl restart systemd-networkd
نکات عملی و اشکالزدایی
– اگر پس از تنظیم IPv6 روت پیشفرض دریافت نمیکنید، بررسی کنید که روتر/ISP آدرس پیشفرض را آگهی کند یا از DHCPv6 استفاده کنید.
– بررسی NDP و Neighbor با این دستور:
ip -6 neigh show
– اگر اتصال پس از تغییرات بالا قطع شد، از کنسول میزبان یا دسترسی مستقیم برای اصلاح بازگردانی استفاده کنید.
– برای اعمال تغییرات در فایلهای محرمانه یا اسکریپتهای اتوماتیک، از nmcli connection export/import استفاده کنید.
nmcli connection export <connection-name> /root/connection.nmconnection nmcli connection import type ethernet file /root/connection.nmconnection
جمعبندی
با استفاده از nmcli میتوانید بهطور کامل IPv4 و IPv6 را در AlmaLinux پیکربندی کنید؛ برای نسخههای قدیمیتر از فایلهای ifcfg و برای محیطهایی که systemd-networkd فعال است از فایلهای .network استفاده کنید. دستورات بالا پوششدهنده سناریوهای رایج (DHCP, static, multiple addresses) و نکات اشکالزدایی هستند.





قوانین ارسال دیدگاه
لطفاً در ارسال دیدگاه از کلمات مناسب استفاده کنید. ارسال اسپم ممنوع است.