Linux默认ipv4/ipv6双栈情况下会优先使用ipv6作为出口访问网络,但是有时候更新源的时候容易出现访问问题,所有想优先使用ipv4作为出口,而不是ipv6。
最简单的方案是禁用ipv6,如下
vim /etc/sysctl.conf
#修改下面参数为1
net.ipv6.conf.all.disable_ipv6 = 1
#然后应用
sysctl -p
这样就彻底禁止了ipv6。
如果想使用ipv4访问网络而不禁用ipv6,可以修改gai.conf配置文件使其生效。
debian系:
vim /etc/gai.conf
#取消下面这一行的注释
precedence ::ffff:0:0/96 100
这样就可以了。
在从 Debian 13 开始的 curl (8.14.1) 会不受/etc/gai.conf的控制强制 IPv6 优先,所以我们可以使用 wget 命令:
wget -qO- http://ip.sb