在 Debian 等 Linux 系统下,有一个 /etc/gai.conf 文件,默认情况下,它会使用 IPv6 优先,如果您安装了 curl 并且本地支持 IPv6,那么可以使用 curl ip.sb 测试
一键命令
开启 IPv4 优先,一行命令修改:
sed -i 's/#precedence ::ffff:0:0\/96 100/precedence ::ffff:0:0\/96 100/' /etc/gai.conf
或者
sed -Ei '/^[[:space:]]*#?[[:space:]]*precedence[[:space:]]+::ffff:0:0\/96[[:space:]]+100\b.*?$/ {s/.+100\b([[:space:]]*#.*)?$/precedence ::ffff:0:0\/96 100\1/; :a;n;b a}; /^[[:space:]]*precedence[[:space:]]+::ffff:0:0\/96[[:space:]]+[0-9]+.*$/ {s/^.*precedence.+::ffff:0:0\/96[^0-9]+([0-9]+).*$/precedence ::ffff:0:0\/96 100\t#原值为 \1/; :a;n;ba;}; $aprecedence ::ffff:0:0\/96 100' /etc/gai.conf
测试
curl ip.sb
或者
ping google.com
显示ipv4地址则说明优先使用 IPv4
debian13系统测试
从 Debian 13 开始,curl (8.14.1) 默认强制使用 IPv6。因此,如果希望测试本地出口公网 IP,可以改用 wget:
wget -qO- http://ip.sb