跳至主要內容
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?

4563博客

全新的繁體中文 WordPress 網站
  • 首頁
  • 请教如何能够禁用 win10 系统的 ipv6 DNS,但仍保留 ipv6 连接线路
未分類
27 11 月 2020

请教如何能够禁用 win10 系统的 ipv6 DNS,但仍保留 ipv6 连接线路

请教如何能够禁用 win10 系统的 ipv6 DNS,但仍保留 ipv6 连接线路

資深大佬 : abcbuzhiming 3

最近住的地方宽带发生了稀奇古怪的某些网站无法连接,以及某些时候意外的缓慢等问题,一番检查后,发觉问题居然在于电信终于给开了 ipv6 。我住的这个地方是通过一个交换机直接连在猫上,猫充当了路由器,以前这个猫没有 ipv6 线路,走的都纯 ipv4,现在有 ipv6 后,猫的 dhcp 功能会向局域网里所有的设备广播 ipv6 的电信 DNS 。而 win10 系统存在下面这个帖子说的 ipv6 DNS 优先问题:
https://www.v2ex.com/t/503461

win10 在有 ipv6 DNS 的前提下,会自动以 ipv6 DNS 为主。问题在于,电信的这个 ipv6 DNS 不靠谱,会给一些无法访问的解析结果。而此时其它 ipv4 的 DNS 如何设置都无法影响这个结果。这是导致网络访问某些地址访问不了的原因。

另外就是我发现可能是我这的 ipv6 的线路不太好,特别是出国,走 ipv6 的 youtube 的反应速度远慢于 ipv4 的。这也是为啥某些时候访问海外其它网站意外缓慢的原因。然后我也找到了和我类似案例的帖子: https://v2ex.com/t/667440

现在的问题是我没办法调整这个猫,设备是公共的,动不了,我只能想办法禁用我操作系统的 ipv6 DNS 。结果找了一圈。都没找到能够主动屏蔽掉 ipv6 DNS 的办法。帖子里说使用第三方比如百度阿里的 ipv6 DNS 服务器,手动设置在适配器里。但是我发现,从我这里访问这些第三方 ipv6 DNS 的速度非常不靠谱,ping 丢包率很高,这不是解决办法。

我现在是直接把网络适配器里 ipv6 的网络协议给禁了,但这个方法等于否定了所有的 ipv6 线路,对某些不需要 DNS 的网络应用不利。而且 windows 10 的官方文档也说最好不要彻底禁用 ipv6 连接,会导致某些组件无法使用。

我该如何禁用 Win10 的 ipv6 DNS,但是仍然保存 ipv6 连接呢?猫动不了,没有办法

大佬有話說 (26)

  • 資深大佬 : INTEL2333

    DNS 那填个::ffff:127.0.0.1 试试?
    或者跑个 adghome 或者 smartdns 什么的抛弃 AAAA 记录

  • 資深大佬 : INTEL2333

    补充#1
    我发的第一个方法只能禁用 v6 的 dns

    觉得 v6 路由不好,或许是想禁用 AAAA 记录?
    如果是的话那就用#1 的第二个方法吧
    或者拉高::ffff:的优先级达到 v4 优先,不过 win10 的 dns 还是会优先走 v6….

  • 資深大佬 : cwbsw

    netsh int ipv6 set interface=XXX managedaddress=disabled otherstateful=disabled
    这样应该可以不自动配置 IPv6 DNS,不哦我觉得你的问题不在这里。
    https://docs.microsoft.com/en-us/troubleshoot/windows-server/networking/configure-ipv6-in-windows
    参考这个配置 IPv4 优先吧。

  • 資深大佬 : cwbsw

    netsh int ipv6 set interface=XXX managedaddress=disabled otherstateful=disabled rabaseddnsconfig=disabled

  • 資深大佬 : loveyu

    自己搭个 dns 服务,然后禁用调 ipv6

  • 資深大佬 : shikkoku

    @cwbsw #3 重启或者断开网线就会失效。另外,即使是 IPv4 的 DNS 也会返回 IPv6 的解析结果。

  • 資深大佬 : cwbsw

    @shikkoku 主说要禁用 IPv6 DNS 啊,加上 store=persistent 就不会重启失效了吧。
    netsh int ipv6 set interface=XXX managedaddress=disabled otherstateful=disabled rabaseddnsconfig=disabled store=persistent

  • 主 資深大佬 : abcbuzhiming

    @INTEL2333 第一个方法,用::ffff:127.0.0.1 填充适配器的 ipv6 DNS 会产生一个奇怪的结果:

    nslookup 命令立刻失效,什么地址都解析不出来。nslookup 并不会因为 ipv6 DNS 解析失败就回头查 ipv4 DNS 。直接就返回失败了。

    但是同时浏览器访问 ipv4 的域名不受任何影响。这个结果我是想不到啊,我都是把本地 dns 解析缓存全部清空了。按理说浏览器是应该访问不了网站的,因为系统 dns 解析不到地址,但是为什么浏览器可以呢?

    这两个软件 adghome 或者 smartdns 我到万不得已再考虑,我不太愿意为解决这个问题引入其它复杂度

  • 資深大佬 : cooldoubi

    不知道这个有用吗 https://docs.microsoft.com/en-us/troubleshoot/windows-server/networking/configure-ipv6-in-windows

  • 資深大佬 : shikkoku

    @cwbsw #7 受管理的地址配置和其他有状态的配置无法禁用……

  • 資深大佬 : fhbyljj

    Openwrt 有这个功能

  • 資深大佬 : INTEL2333

    @abcbuzhiming nslookup 异常是因为默认走 v6 吧,然后识别不了::ffff:就翻车了

    浏览器不影响是因为走了 v4dns 吧

  • 資深大佬 : cwbsw

    @shikkoku 实测没问题,你是不是没有获取管理员权限?另外前面贴的命令语法不对。
    netsh int ipv6 set interface interface=以太网 managedaddress=disabled otherstateful=disabled rabaseddnsconfig=disabled store=persistent

  • 資深大佬 : jim9606

    修改系统 DNS 策略为“首选 IPv4 over IPv6”
    改法参考 ( https://docs.microsoft.com/zh-cn/troubleshoot/windows-server/networking/configure-ipv6-in-windows)

  • 資深大佬 : shikkoku

    @cwbsw #13 这没用
    请教如何能够禁用 win10 系统的 ipv6 DNS,但仍保留 ipv6 连接线路

  • 資深大佬 : XiLingHost

    安装 simple-dnscrypt,然后丢弃 ipv6dns 请求或者使用来自它的 aaaa 记录

  • 資深大佬 : ragnaroks

    240C::6666
    240C::6644

  • 資深大佬 : Livid

    家里自己跑一个 pi-hole 或者 dnscrypt-proxy,然后想怎么玩就怎么玩了。

  • 資深大佬 : miaomiao888

    www.jianshu.com/p/a05e44a93862
    调整 Windows IPV4 与 IPV6 的 DNS 优先级

  • 資深大佬 : flyfishcn

    @abcbuzhiming #8 nslookup 只会使用唯一的第一优先级 DNS 作为指定服务器,不带失败回退和尝试其他可用服务器机制的。而系统和其他的软件是会在首选服务器失败后尝试查询其他可用服务器的。
    想保留地址但不解析唯一的办法就是不要有 AAAA 解析记录。部分 dns 软件是可以去除 AAAA 记录只保留 A 记录的。

  • 資深大佬 : ghjexxka

    ::114.114.114.114

  • 資深大佬 : ghjexxka

    @ghjexxka win10 的话加上[]的话 ipv6 的 dns 似乎就不会生效了,即[::114.114.114.114]

  • 資深大佬 : 826540272

    windows 10 的官方文档也说最好不要彻底禁用 ipv6 连接,会导致某些组件无法使用。
    放屁.

  • 資深大佬 : no1xsyzy

    感觉上面不少人误解了 DNS over IPv6 vs DNS over IPv4 (为了简洁,后写作 Do6 和 Do4 )和 AAAA vs A 的关系
    通过 Do4 也可以请求到 AAAA 记录的,就算你把 IPv6 整个给断了也可以问 DNS 服务器要 IPv6 地址。
    vice versa
    参考,请使用 dig 命令:
    $ dig cloudflare.com @2001:4860:4860::8888
    $ dig cloudflare.com AAAA @8.8.8.8

    所以你只能通过其他程序来 trunc 掉不需要的返回记录,再返回给你的客户端。
    具体上来说,到底是 pi-hole 还是你自写倒是无关紧要了。

  • 資深大佬 : yyysuo

    我用 koolss 开启 dns 劫持,然后推送给局域网设备的 IPV6 DNS 地址是局域网主路由的 IPV6 地址,这样的话就没问题了。

  • 資深大佬 : dingwen07

    其实导致境外网站访问慢的原因是 ipv6 优先,但是你的代理没有 ipv6,这个时候 ipv6 是过墙的,导致等待 ipv6timeout 之后再退回 ipv4 访问。你可以搞一个 ipv6 的梯子试试看,反正我是直接禁用了 ipv6 。

文章導覽

上一篇文章
下一篇文章

AD

其他操作

  • 登入
  • 訂閱網站內容的資訊提供
  • 訂閱留言的資訊提供
  • WordPress.org 台灣繁體中文

51la

4563博客

全新的繁體中文 WordPress 網站
返回頂端
本站採用 WordPress 建置 | 佈景主題採用 GretaThemes 所設計的 Memory
4563博客
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?
在這裡新增小工具