目 录CONTENT

文章目录

Linux 设置 IPv6 或 IPv4 优先教程(gai.conf 配置指南)

Leu
Leu
2025-10-23 / 0 评论 / 1 点赞 / 6 阅读 / 0 字

有时候,服务器的网络明明都通,但访问某些网站、仓库或 API 却慢得离谱。
这很可能是因为系统默认使用了“错误的协议栈顺序”——
Linux 默认优先使用 IPv6,而不是 IPv4。

如果你想手动调整这个顺序(比如让 IPv4 优先),这篇教程正是为你准备的。

🧠 为什么要调整 IPv6 / IPv4 优先级

Linux 系统在进行 DNS 解析时,会先请求域名的 AAAA(IPv6)A(IPv4) 记录。
默认情况下,它会按照系统内部的优先级(policy table)选择哪种协议先尝试。

这意味着:

  • 如果 IPv6 可用 → 优先使用 IPv6;

  • 即使 IPv6 延迟高、绕路、甚至不通,也会先试 IPv6,导致访问超时;

  • 部分 VPS、Docker 镜像源、Cloudflare / GitHub / ChatGPT 等服务因此异常。

解决办法:调整 gai.conf 文件,修改协议优先顺序。

⚙️ gai.conf 是什么?

/etc/gai.conf 是 Linux 系统中控制地址选择策略的配置文件,
由 glibc 的 getaddrinfo() 函数使用。

你可以通过编辑它,改变系统在选择 IPv4 / IPv6 地址时的优先级。

作用范围:系统级,对所有使用标准网络库的程序生效(curl、apt、wget、docker 等)。

🛠️开始修改 gai.conf

1.打开配置文件

sudo nano /etc/gai.conf

(或者用你喜欢的编辑器,例如 vimvi。)

2.查看默认配置

一般情况下,文件内会有许多被注释掉的行,比如:

# For sites which prefer IPv4 connections change the last line to
# precedence ::ffff:0:0/96  100

这句话其实已经告诉我们答案:
如果你想 IPv4 优先,只需要取消注释这一行。

3.设置 IPv4 优先

找到并修改:

#precedence ::ffff:0:0/96  100

改成:

precedence ::ffff:0:0/96  100

✅ 保存并退出即可,无需重启系统。

这表示:

  • ::ffff:0:0/96 表示 IPv4 映射地址;

  • 100 是它的优先级;

  • 数字越大,优先级越高。

系统现在会优先使用 IPv4 地址。

4.如果你想让 IPv6 优先(默认)

如果之前改过,现在想恢复 IPv6 优先,只需要把这行重新注释掉:

#precedence ::ffff:0:0/96  100

或者删除整行。

🔍 测试是否生效

使用以下命令检查当前出站 IP:

curl https://ipinfo.io

如果返回的是 IPv4 地址(例如 203.x.x.x),代表 IPv4 已被优先使用。

也可以分别测试 IPv4 和 IPv6:

curl -4 https://ifconfig.co
curl -6 https://ifconfig.co

💡 常见问题

Q1:修改后要重启网络吗?

不需要。gai.conf 会在每次调用 getaddrinfo() 时被读取,立即生效。

Q2:所有程序都受影响吗?

只要程序使用系统标准的 DNS 解析库(glibc),都会受影响。
比如 aptcurlwgetping 等。

但如果某个软件自己实现了解析逻辑(比如某些 Java 程序),可能不受影响。

Q3:IPv6 不通怎么办?

你可以临时关闭 IPv6:

sudo sysctl -w net.ipv6.conf.all.disable_ipv6=1
sudo sysctl -w net.ipv6.conf.default.disable_ipv6=1

不建议长期禁用,优先级调整更优雅。

🧾 示例总结

优先策略

配置语句

效果

IPv4 优先

precedence ::ffff:0:0/96 100

优先使用 IPv4

IPv6 优先(默认)

#precedence ::ffff:0:0/96 100

优先使用 IPv6

🧩 总结

  • Linux 默认 IPv6 优先;

  • 可通过 /etc/gai.conf 改为 IPv4 优先;

  • 立即生效,对大部分命令行工具和服务生效;

  • 稳定性优先的 VPS、Docker 容器建议开启 IPv4 优先。

🚀 未来 IPv6 会越来越普及,但在网络质量不均的今天,
IPv4 仍然是最稳、最“能打”的选择。

1
  1. 支付宝打赏

    qrcode alipay
  2. 微信打赏

    qrcode weixin

评论区