如何在Google Chrome(版本45)中禁用IPV6?

15

我最近将我的开发机Chrome版本更新到v45。这个更新似乎将我的客户端IP始终设置为使用IPv6。我正在本地开发的一些应用程序需要我使用IPv4,因此我需要在Chrome中禁用IPv6。我尝试了在这里提到的解决方案,但那似乎并不能解决我的问题。


2
应用程序不应关心数据链路层或网络层使用的协议。 - Ron Maupin
2个回答

9

简短回答

Chrome用于解析名称的方法(async-dns)忽略了操作系统的IPv4 / IPv6优先级。

您可以尝试使用标志--disable-async-dns从控制台启动Chrome,但是显然,您将失去该功能。

详细回答

有两个原因导致您无法在Chrome中禁用IPv6:

  • 1149303005起,谷歌不再提供禁用IPv6选项。
  • 您的操作系统必须实现RFC3484中描述的“策略表”。使用它,您应该能够为所有应用程序(包括Chrome)赋予IPv4优先级。然而,Chrome并未按照预期工作:有一个已知问题516305尚未修复。

因此,您必须禁用“异步DNS”,或者从Chrome中删除它,例如:

  • 使用etc/hosts文件。
  • 选择(或部署)仅支持IPv4的DNS,并在操作系统的网络配置中进行配置。
  • 安装一个禁用IPv6的Web代理,然后配置Chrome以使用它。

7
我想强调一下,--disable-async-dns 标记已被移除。详细信息请查看这里。即使它没有被移除,在Windows上似乎也不再起作用了。叹气 只能回归使用Firefox开发了... - FireSBurnsmuP
2
之前的链接是错误的。请查看这里获取实际细节。 当然,我是在编辑超时后才注意到的。 - FireSBurnsmuP

1
如果您使用的是Windows系统,您可以将IPv4地址和主机名添加到hosts文件中(位置:c:\windows\System32\drivers\etc\hosts)。然后,浏览器不会查找DNS以获取IP地址,而是使用您在hosts文件中提供的IP地址。
在iOS/mac上,hostfile位于此处:/private/etc/hosts。

问题已解决,谢谢!要知道主机名的IPv4地址:ping -4 your-host.com - DLight

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接