若環境不需 IPv6,可透過核心參數完整停用,避免不必要的網路流量與潛在安全風險。
sudo vim /etc/default/grub
# 找到 GRUB_CMDLINE_LINUX_DEFAULT
GRUB_CMDLINE_LINUX_DEFAULT="ipv6.disable=1 quiet splash"
sudo update-grub
sudo reboot
ip a | grep inet6 # 應無輸出或僅有 ::1/128
cat /proc/sys/net/ipv6/conf/all/disable_ipv6 # 應回傳 1
echo "net.ipv6.conf.all.disable_ipv6 = 1" | sudo tee -a /etc/sysctl.conf
echo "net.ipv6.conf.default.disable_ipv6 = 1" | sudo tee -a /etc/sysctl.conf
sudo sysctl -p
注意:sysctl 方式在某些核心模組已載入時可能不完全生效,GRUB 方式最徹底。
systemctl mask systemd-networkd-wait-online.serviceip6tables -F && ip6tables -X完成上述設定後,系統將僅使用 IPv4 通訊,簡化網路疑難排解與防火牆管理。