XX-net / XX-Net

A proxy tool to bypass GFW.
33.04k stars 7.69k forks source link

无法启用IPv6的朋友看过来 #6918

Open lon91ong opened 7 years ago

lon91ong commented 7 years ago

折腾了两天,总算是成功了! 20171006232513

拿来主义的懒人太多了,简书的步骤嫌麻烦,给你简单的,先参考下图设置网络连接的IPv6地址: 20171007113415 上图的Step4只需要手动指定下面的DNS地址,上面的保持自动即可! 内网IPv6地址计算,输入本地网络连接IPv4的地址,如:192.168.1.100

下面的保存为批处理(bat)文件,感谢Anudorannador 的提点

@echo off
netsh interface isatap set state default
netsh interface teredo set state default
netsh interface teredo set state server=teredo.remlab.net
netsh interface ipv6 set teredo enterpriseclient
cmd

下面的"有效的Teredo接口名称”需要自己查找替换,具体名称规则,不是Teredo开头的“Teredo Tunneling Pseudo-Interface”,就是本地连接挂*的,状态应该是已连接(connected)

右键管理员权限执行一次,稍等一下(10~20s左右),执行netsh int ipv6 add route ::/0 "有效的Teredo接口名称"(引号不可缺) 回显提示:“对象已存在”即可。 访问IPv6测试页,结果如下图所示,只要保证那一项成功即可: 20171007103126

@Anudorannador 反应下面一步不需要,应该是跟系统的安全设置方面相关。Win10比Win7更严格! 关键在于上一步设置的路由表第一项还在不在,反正我用的Win10 LTSB企业版 是重启就没了

以后每次重启之后,都要执行netsh int ipv6 add route ::/0 "有效的Teredo接口名称" metric=1再启动XX-Net,可以把它写入XX-Net目录中的start.bat中:

@echo off
netsh int ipv6 add route ::/0 "有效的Teredo接口名称" metric=1
SET PYTHONPATH=
"%~dp0%start.vbs" noconsole

发个快捷方式到桌面,改“管理员权限”,以后启动XX-Net用这个快捷方式就好了! 20171007121255

已经尽最大努力简化步骤了,再不会就没招了!

总结回溯排错步骤

  1. 检查路由表,netsh int ipv6 show route,看看你设置的是不是唯一::/0项。如果多余不唯一,参见下面问题3。如果没有你设置的则跳转到下一步检查。
  2. 检查teredo服务状态,netsh int ipv6 show teredo,看看状态是不是qualified参考解决办法。连状态行都没有的话,检查IP Helper服务是否启动,进一步参考“未能打开隧道适配器” @qumaggot 修改注册表的方法 @FrankHB 参考方法
  3. 检查策略组(运行gpedit.msc开启)中的ISATAP状态是不是下图的样子 isatap 家庭版的系统没有策略组,使用netsh int ipv6 show int查看网络接口中有没有isatap开头的
  4. 检查网络连接的IPv6静态网址和IPv4自动获取的网址是不是对应的,如果出现IPv6退回自动的状态,参见下面的问题5。建议把IPv4地址也设置成静态或者在路由器中设置绑定MAC地址到固定IP。

补充几个常见问题

  1. 有个别朋友的网络环境差异,导致Teredo服务器可能连不上,尝试几次换换服务器可能成功。参考
  2. 注意检查有效的Teredo接口名称,不是Teredo开头的,就是本地连接挂*的,状态应该是已连接(connected)
  3. 遇到了两个朋友,路由表有多余的回路(Loopback Pseudo-Interface)占用了首选位置,需要先删除:route DELETE ::/0 再重新添加:netsh int ipv6 add route ::/0 "有效的Teredo接口名称" metric=1
  4. 还有极个别由于系统优化的原因导致IP Helper服务被禁用的,需要手动启用
  5. 遇到几例网卡没有IPv6地址的情况,ipconfig -all查看没有任何v6地址,先试试@robinshiesh 修改防火墙规则的方法;手动设置地址后会跳回自动,这个问题是系统设置的个例,参考解决办法一微软修复工具,实在不行试试#7100的方法,也可以参考知乎的类似问题
  6. 有几个电信用户,路由表首位总是被莫名其妙的占据,解决方法如下: netsh interface ipv6 set interface "本地连接" routerdiscovery=disabled 注意把“本地连接”换成你的连接路由器的连接名
  7. 之前Teredo连不上的时候我都推荐连芬兰的那个服务器teredo.trex.fi,今天试了试,很痛快的连上了,但就是测试页的关键项死活通不过,反复检查了其它设置都无误,最后试着换成微软默认的Teredo服务器:win10.ipv6.microsoft.com,一次通过。芬兰巨坑啊!

PS:

{10月13日更新} 今天似乎更严格了,Teredo连接不稳定,时断时续,后来拿IP直接替换域名才好了。似乎是google的DNSv6也被瞄上了。

Johnkyens commented 7 years ago

据说改了还在被艹。。。求现身说法效果如何。。。哭啊

botnang commented 7 years ago

厉害! 我也照着试试看!

onplus commented 7 years ago

我之前以为简书都是这些文章呢

georagy2004 commented 7 years ago

我昨天也照着那些帖子捣鼓了半天,到最后ipv6也搞不通,然后我把那些修改过的设置统统还原了。可今天一拨ipv6,xxnet的ipv6竟然打开了!!上ipv6.google都上去了。所以tcp/ip里的设置到底有没有用,我现在是很懵的。用上ipv6以后ip还是蹭蹭往下掉。

wisonlys commented 7 years ago

IPv6好像不能扫ip啊,我的扫描线程数状态一直是0

dacoit1983 commented 7 years ago

自己的电信运营商没开放ipv6,再怎么折腾都没用。

Dianmu commented 7 years ago

666,墙了一天没头绪,看到这个帖子,教育网表示,点了一下ipv6-On,就畅通无阻了。感谢

2017-10-07 12 34 43 2017-10-07 12 34 17
boh5 commented 7 years ago

谢谢大佬 很有用!!!

colachen2017 commented 7 years ago

启用IPv6失败,请确认你的网络支持IPv6。

照樓主的設置了,點開教育網 在on 可是這樣提示

SaDanic commented 7 years ago

我是教育网,以前一直是开着IPv6的,但ip数一直减,我就关了,现在一直打不开,叫我检查网络是否支持IPv6

colachen2017 commented 7 years ago

添加路由 (这一步重启后需要重新做一遍)

ipconfig /all 查看 Teredo Tunneling Pseudo-Interface 使用的连接(如:隧道适配器 本地连接 1); netsh int ipv6 show int 查看上面的 本地连接 1 使用的Idx,如22; netsh int ipv6 show route 如果没有::/0的记录,则: netsh int ipv6 add route ::/0 22 (22为上面的Idx,也就是teredo 的Idx) 或者不管Idx,直接用名称添加: netsh int ipv6 add route ::/0 "Teredo Tunneling Pseudo-Interface"

作者:粗识名姓 链接:http://www.jianshu.com/p/1433dd30f45a 來源:简书 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

colachen2017 commented 7 years ago

添加路由 (这一步重启后需要重新做一遍)

ipconfig /all 查看 Teredo Tunneling Pseudo-Interface 使用的连接(如:隧道适配器 本地连接 1); netsh int ipv6 show int 查看上面的 本地连接 1 使用的Idx,如22; netsh int ipv6 show route 如果没有::/0的记录,则: netsh int ipv6 add route ::/0 22 (22为上面的Idx,也就是teredo 的Idx) 或者不管Idx,直接用名称添加: netsh int ipv6 add route ::/0 "Teredo Tunneling Pseudo-Interface"

作者:粗识名姓 链接:http://www.jianshu.com/p/1433dd30f45a 來源:简书 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

這一步看不懂 ...可以說的詳細嗎, 電腦白痴呀

lon91ong commented 7 years ago

@colachen2017 看不懂就照做好了,每次重启,管理员权限cmd执行最后一行: netsh int ipv6 add route ::/0 "Teredo Tunneling Pseudo-Interface"

lon91ong commented 7 years ago

@dacoit1983 用Teredo之后,和ISP支不支持IPv6没啥关系

nly4lov commented 7 years ago

一看这么麻烦,我还是算了,反正现在也能翻,虽然只有2个ip。

hhp99 commented 7 years ago

首先,宽带提供商要支持IPV6,然后是操作系统要支持IPV6,最后是家庭局域网要支持IPV6,国内大部分无线路由都不支持IPV6,可以把路由器改成集线器就可以了

dacoit1983 commented 7 years ago

@lon91ong 我的ipv6网页测试通过不了。现在用赛风翻墙。

lon91ong commented 7 years ago

@nly4lov @dacoit1983 @colachen2017 @SaDanic 步骤已尽力简化了,再看不懂就没招了 @hhp99 你说的那些情况Teredo就是针对的解决方案

vert404 commented 7 years ago

太感谢了,我是教育网 aa

toobed commented 7 years ago

确定。

确定。

确定。

确定。

确定。

确定。

Microsoft Windows [版本 6.1.7601] 版权所有 (c) 2009 Microsoft Corporation。保留所有权利。

C:\Users\Administrator\Desktop> netsh int ipv6 add route ::/0 "Teredo Tunneling Pseudo-Interface" 文件名、目录名或卷标语法不正确。

C:\Users\Administrator\Desktop> netsh int ipv6 add route ::/0 "Teredo Tunneling Pseudo-Interface" 文件名、目录名或卷标语法不正确。

C:\Users\Administrator\Desktop>

shiyisyl commented 7 years ago

@toobed 我的是找不到元素,这是怎么回事

shindoujay commented 7 years ago

完全照做,依旧提示

启用IPv6失败,请确认你的网络支持IPv6。

toobed commented 7 years ago

@lon91ong

确定。

确定。

确定。

确定。

确定。

确定。

Microsoft Windows [版本 6.1.7601] 版权所有 (c) 2009 Microsoft Corporation。保留所有权利。

C:\Users\Administrator\Desktop> netsh int ipv6 show int

Idx Met MTU 状态 名称


1 50 4294967295 connected Loopback Pseudo-Interface 1 15 50 1280 disconnected isatap.{74E8059D-217C-4D5E-A46F-870E9 B411211} 20 20 1500 connected 本地连接 3

C:\Users\Administrator\Desktop>

GraceLum commented 7 years ago

@lon91ong 请问 convert ipv6 要怎么用? 开了那个convert的网然后不知道要用什么convert

lon91ong commented 7 years ago

@GraceLum 要输入本地网络连接的IPv4地址,也就是路由器分配给电脑的IP地址 本地网络配置

shiyisyl commented 7 years ago

确定。

确定。

确定。

确定。

确定。

确定。

Microsoft Windows [版本 6.1.7601] 版权所有 (c) 2009 Microsoft Corporation。保留所有权利。

D:\XX-Net-3.6.8\XX-Net-3.6.8>netsh int ipv6 add route ::/0 "Teredo Tunneling Pse udo-Interface" 找不到元素。

照着做出现了这个状况

ENXING commented 7 years ago

@lon91ong
image

toobed commented 7 years ago

谢谢 @lon91ong ,很荣幸得到你热情的帮助,高手啊!

toobed commented 7 years ago

事实证明,lon91ong 的方法确实可行,不管网络是不是支持IPv6,都可以成功!谢谢!

shiyisyl commented 7 years ago

@lon91ong 大神,受教了 谢谢

ENXING commented 7 years ago

@lon91ong 大神 谢谢

Mydong commented 7 years ago

感谢,竟然也弄成功了~~~不容易~

zfanli commented 7 years ago

按照楼主的流程做了,简书里面三个连接也都看了一边,teredo的配置貌似成功了?

Teredo 参数
---------------------------------------------
类型                    : enterpriseclient (Group Policy)
服务器名称              : teredo.remlab.net (Group Policy)
客户端刷新间隔          : 30 秒
客户端端口                : unspecified
状态                    : qualified
客户端类型              : teredo host-specific relay
网络                    : unmanaged
NAT                     : symmetric (port)
NAT 特殊行为   : UPNP: 否,PortPreserving: 是
本地映射           : 10.0.0.26:50900
外部 NAT 映射    : (mask)

但是开启ipv6失败了。 后台得到这个信息。

Oct 07 15:11:02.434 - [WARNING] IPv6 was enabled, but check failed.

是不是没救了 QAQ

Etzan commented 7 years ago

It works, vielen Dank.

zfanli commented 7 years ago

@lon91ong

Idx     Met         MTU          状态                名称
---  ----------  ----------  ------------  ---------------------------
 12          50        1500  connected     WLAN
 16          75        1280  connected     Teredo Tunneling Pseudo-Interface
 14           5        1500  disconnected  以太网
 17          25        1500  disconnected  本地连接* 1
  4          65        1500  disconnected  蓝牙网络连接
  1          75  4294967295  connected     Loopback Pseudo-Interface 1
  7          55        1500  disconnected  以太网 2
TooFlow commented 7 years ago

C:\Users\Administrator>netsh int ipv6 show int

Idx Met MTU 状态 名称


1 50 4294967295 connected Loopback Pseudo-Interface 1 12 50 1280 disconnected isatap.{E4DA4652-8C51-47FB-AE9C-E1A11 8ABE0EA} 13 50 1280 connected 本地连接* 11 20 1500 connected 本地连接

Teredo Tunneling Pseudo-Interface ?

toobed commented 7 years ago

GAEProxy状态信息

您应该考虑开启 IP 扫描器。

状态

属性

本地网络状态 OK IP数量 0 空闲 0 IP延迟 9999 连接池(帮助) 新:0 h1:0 h2:0 浏览器代理设置 OK CA证书状态(下载) OK 扫描IP线程数(设置) 0 屏蔽状态(帮助) OK ---------------------重启之后为什么会这样?我已经重启,管理员权限cmd执行最后一行: netsh int ipv6 add route ::/0 "Teredo Tunneling Pseudo-Interface"做了一遍

zfanli commented 7 years ago

@lon91ong 和 IPv6 有关的都失败了...

项目 结果
使用 IPv4 域名记录进行测试   成功 (3.005s) 使用 ipv4
使用 IPv6 域名记录进行测试   超时 (16.005s)
使用双栈域名记录进行测试   成功 (2.003s) 使用 ipv4
双栈域名和大封包测试   成功 (2.003s) 使用 ipv4
不使用域名的 IPv4 测试   成功 (2.004s) 使用 ipv4
不使用域名的 IPv6 测试   超时 (14.369s)
IPv6 大封包测试   超时 (15.988s)
测试您 ISP 的域名服务器是否使用 IPv6   超时 (6.003s)
查找IPv4服务提供商   成功 (4.665s) 使用 ipv4 ASN 4812
查找IPv6服务提供商   超时 (16.698s)
SchwarzXia commented 7 years ago

开启成功,瞬间12000+ip,低延迟,多连接池,稳

xxnet commented 7 years ago

谁​整理一份放Wiki吧,我在首页公告建个链接。

toobed commented 7 years ago

@shiyisyl 请问你重启计算机以后还是一样吗?

BlankWhite commented 7 years ago

哎 改了还是不行

zfanli commented 7 years ago

@lon91ong 问题解决了,我的问题是自己瞎配置的时候弄了两个下面这样的...

发布    类型     跃点数 前缀                     索引 网关/接口名称
------- -------- ---    ------------------------ --- ------------------------
否        手动        256  ::/0                        1  Loopback Pseudo-Interface 1
否        手动        256  ::/0                       16  Teredo Tunneling Pseudo-Interface

将没用的删除了就可以用了。

感谢 @lon91ong 的热情帮助!!

xxnet commented 7 years ago

感谢 @lon91ong 这个文档已经挂项目首页公告

zsqc commented 7 years ago

厉害了 我的哥!Thank♂You♂Sir!

piaoyun commented 7 years ago

D:\piaoyun\桌面>netsh int ipv6 add route ::/0 "Teredo Tunneling Pseudo-Interface " 文件名、目录名或卷标语法不正确。

Thechubbyduck commented 7 years ago

netsh interface ipv6>show teredo state Teredo Parameters

Type : enterpriseclient Server Name : teredo.remlab.net Client Refresh Interval : 30 seconds Client Port : unspecified

netsh interface ipv6>show teredo state Teredo Parameters

Type : enterpriseclient Server Name : teredo.remlab.net Client Refresh Interval : 30 seconds Client Port : unspecified

teredo 参数只有四行,不显示状态,求解。

Thechubbyduck commented 7 years ago

@lon91ong 刚刚试过,服务器都换了,参数都只有四行。 teredo.remlab.net网址ping得通,感觉不是服务器的问题。

PJNOTHARVEY commented 7 years ago

啊啊啊啊Xp系统 做了一遍 还是启用“IPv6失败,请确认你的网络支持IPv6。”啊

下面是回显信息

Microsoft Windows XP [版本 5.1.2600] (C) 版权所有 1985-2001 Microsoft Corp.

C:\Documents and Settings\Administrator>netsh int ipv6 show int 正在查询活动状态...

索引 Met MTU 状态 名称


5 0 1500 已连接 本地连接 4 2 1280 已断开 Teredo Tunneling Pseudo-Interface 3 1 1280 已连接 6to4 Pseudo-Interface 2 1 1280 已连接 Automatic Tunneling Pseudo-Interface 1 0 1500 已连接 Loopback Pseudo-Interface

还有就是那个命令

“@echo off netsh interface isatap set state default netsh interface teredo set state default netsh interface teredo set state server=teredo.remlab.net netsh interface ipv6 set teredo enterpriseclient netsh int ipv6 set prefix 2002::/16 30 1 netsh int ipv6 set prefix 2001::/32 5 1 cmd”

它会显示 下列命令没有找到: interface isatap set state default。 下列命令没有找到: interface teredo set state default。 下列命令没有找到: interface teredo set state server=teredo.remlab.net。 确定。

确定。

确定。

这会有影响嘛 谢谢啦

lon91ong commented 7 years ago

@PJNOTHARVEY XP的情况没遇到,不过记得Teredo在win7的时候才集成到系统中的,XP应该另外找教程先安装上相关的资料才行 @Thechubbyduck ping通和能不能连上并不相关,今天下午有个朋友就是这样,远程协助查了一圈没找到毛病,换了个服务器就好了,好像连的芬兰的成功的