天朝的 IPv6 起步是非常早的。2003 年开始就从教育网开始部署试验网络,启动了中国下一代互联网示范工程。2008 年北京奥运会和 2010 年上海世博会均部署了 IPv6 网络。当时从全世界来看,我国部署 IPv6 的进度都是遥遥领先的。不过奇怪的是,“起了个大早,却赶了个晚集”,IPv6 向民用的普及似乎受到某神秘力量的阻拦,再无音讯,三大运营商、主流机房、云服务商都不提供 IPv6 支持,反而被国外的机房和运营商“弯道超车”了。
直到 2017 年底,中办国办发了《推进互联网协议第六版( IPv6 )规模部署行动计划》。从此以后一发不可收拾,今年上半年工信部发文对运营商、主流机房和云服务商、主流网站对 IPv6 的支持都作了时间上的要求。今年 7 月份,全国各地的移动 4G 网络纷纷开始分配 IPv6 地址,提供 IPv6 网络接入,普及速度令人咋舌。
鉴于很多朋友对 IPv6 还比较陌生,那么就在此开个科普帖吧,内容持续更新。如果大家有其他的问题,或者发现我文中的错误,都可以在此提出。当然这里不讨论类似“什么是 IPv6 ”这种最基本的伸手党问题。
先来几个常见问题:
公网内网只是人为划分,技术上当然支持划分公网内网,这和 IPv4 或者 IPv6 并没有关系。你把公网地址用在内网技术上也是可行的(参见某些地区的二级运营商宽带分配假公网 IPv4 地址的情况)。 只是由于 IPv6 的地址资源丰富,运营商没有必要加装 NAT 设备(而且 NAT 设备成本很高)。目前所以已知的运营商给客户分配的都公网 IPv6 地址,部分运营商甚至支持分配一个独立的地址块(/64,/56 或者 /48 前缀)给你。
目前已分配 IPv6 的公网地址都是 2XXX:
开头的,非常好辨别。
其中 2002:
开头的是 6to4 地址,由用户端设备自动建立,通过隧道技术连接至 IPv6 互联网,不是运营商管理和分配的,服务质量与运营商无关。只要有 IPv4 公网地址,设备支持 6to4 协议,且没有被运营商封锁就能建立。
2001:
开头的是 6in4 地址,是另一种隧道协议。he.net 提供的 IPv6 Tunnel Broker 服务就是采用这种协议。
通过以上两种隧道技术获得的地址也是公网 IPv6 地址,只不过他们不是由运营商提供的,而是用户端设备把 IPv6 数据包封装到 IPv4 的数据包中,再通过第三方 Broker 服务器中转来访问 IPv6 互联网,速度通常比较慢。
如果你的 IPv6 地址形似以2XXX:
开头且不是2001:
或者2002
,那恭喜你,你的运营商已经提供原生 IPv6 网络的接入服务了。
下面说一说常见的非公网地址段:
::1
代表 loopback 地址,表示本机,等价于 IPv4 中的127.0.0.1
。
fe80::/10
地址是所谓的 link local 地址段,只在同一链路上有效,不能跨网段通信,类似于 IPv4 下的169.254.0.0/16
(是不是很熟悉)。
fd00::/8
这个段就是通常意义上的内网地址段了,等价于 IPv4 的10.0.0.0/8
, 172.16.0.0/12
以及192.168.0.0/16
这三个段。如果你要组建 IPv6 内网,通常是在这个大段里随机挑选一个 /64、/56、或者 /48 的子网来用。比如可以挑选 fd12:3456:789a:bcde::/64
作为你家或者你公司的局域网 IP 段。IPv6 规范中鼓励你随机挑选地址段,避免和别人家的地址段重复,以免并网时的麻烦。
fc00::/8
也是一个保留的巨大内网地址段,具体怎么用现在还没有规范。
以操作系统来讲,主流的操作系统( Windows, OS X, Linux, Android, iOS,Windows Phone )早已全部支持 IPv6 协议。Windows XP 没有默认开启,需要手动执行ipv6 install
命令。
家用路由器中我只知道 Netgear 和 Asus 的路由器原生支持 IPv6,其他可以刷 OpenWrt/LEDE 固件的路由器也可以通过刷第三方固件解决。
应用软件中,IE、Chrome、Firefox 等主流浏览器大概很久很久以前就支持 IPv6 了(是的,IE6 都支持),国产“浏览器”没用过不了解。BT 软件中,uTorrent 完美支持 IPv6,当年在大学里很多人用 uTorrent 在教育网 IPv6 网络挂 BT。迅雷据我所知一如既往地不支持(十几年前就有很多用户反馈了,然而。。。)。
勘误:
上文中说2001:开头的是 6in4 地址
是错误的,6in4
并没有固定的地址段,而是由服务商自行分配。
2001
开头的地址仅仅是普通的IPv6公网地址,只不过常见的由HE.net提供的隧道和Windows自动建立的Teredo隧道都恰好以2001
开头而已。
1
oovveeaarr 2018-07-28 17:28:02 +08:00
eMule 呢)
|
2
Liqianyu 2018-07-28 17:39:03 +08:00 via iPad
@oovveeaarr eMule
https://forum.emule-project.net/index.php?showtopic=161184 ed2k 服务器不可能支持 IPv6 了。Kad 还有可能。 |
3
cwbsw 2018-07-28 17:49:35 +08:00 3
2001 开头怎么就成了 6in4 地址了……
只不过常用的免费 HE 隧道是 2001:470 开头,如果 VPS 商给分配地址块,完全可以自己搭一个。 |
4
zts1993 2018-07-28 17:51:39 +08:00 1
今年 v6 是很多企事业单位部门的 kpi 的
|
5
oovveeaarr 2018-07-28 17:54:07 +08:00
@Liqianyu #2 Could not determine your IP address ....
|
6
yexm0 2018-07-28 17:54:58 +08:00 via Android
2001 绝对不能说是 6in4 地址,这是非常错误的结论。2002 的倒是可以这样说
|
7
Danswerme 2018-07-28 17:58:27 +08:00 via Android
全面 v6 之后肉鸡会更多吧
|
8
raysonx OP |
9
itfun 2018-07-28 20:01:58 +08:00 1
我就问一句:对普通大众来说,从 IPv4 迁移到 IPv6 有哪些好处?
|
13
580a388da131 2018-07-28 21:21:46 +08:00
@itfun 感觉对于不懂网络的人来说,除了物联网加速外,貌似没什么明显好处。坏处到时显而易见,大数据更精确了。
|
15
cyyself 2018-07-28 22:50:12 +08:00 2
2001:da8::/32 是教育网的 IPv6 地址段了解一下
6in4 ? 2001:4860:4860:8888 这种 Google 的 DNS 难道也是 6in4 ? |
17
Shura 2018-07-28 22:53:39 +08:00
教育网 ipv6 都是 2001:开头的( https://wenku.baidu.com/view/2ad5bd1352d380eb62946dc4),错误的科普不如不科普。
|
18
x86 2018-07-28 22:53:45 +08:00 via iPhone
普通人:又不是不能用
|
19
Shura 2018-07-28 22:58:28 +08:00
@Shura 补充权威来源:
https://bgp.he.net/AS23911#_prefixes6 https://bgp.he.net/AS23910#_prefixes6 Prefix Description 2001:250::/32 CERNET IPv6 Backbone 2001:da8::/32 China Next Generation Internet CERNET2 2001:252::/32 CNGI International Gateway Network (CNGIIGN) 2001:7fa:5::/48 RIPE Network Coordination Center |
20
121121121 2018-07-28 23:05:34 +08:00
@580a388da131 p2p 下载或者游戏联机方便了
|
21
dynos01 2018-07-28 23:16:46 +08:00 via iPad
2001 是 6in4。。。哪听的小道说法,错误内容不如不科普
|
23
hzqim 2018-07-28 23:31:13 +08:00 via Android
谢谢科普。
请继续✍ |
24
zst 2018-07-28 23:47:31 +08:00 via Android
华北教育网有挺多都是 2001 开头的....BT 的话 utorrent qbittorrent deluge transmission rtorrent 这些应该都可以
|
25
DevNet 2018-07-28 23:56:53 +08:00 via Android 1
老哥,给你勘个误:教育网的 ipv6 试验网叫 CERNET2,开始的时间是 1998 年,距今刚好 20 年。不是 2003 年哈😄
|
26
heiybb 2018-07-29 01:02:23 +08:00 via Android
IPv6 Supported
Address 2001:8003:355c:1f00:19d:5684:6496:7b2f Type Native IPv6 SLAAC No ICMP Filtered Hostname None ISP Telstra Internet 坐标悉尼 2001 开头并不都是 6in4 |
27
l32606 2018-07-29 01:08:02 +08:00
楼主知道运营商分给一般用户,比如家庭宽带的地址是多少个吗?
|
29
flyfishcn 2018-07-29 02:08:28 +08:00
纠正 2 点明显的错误吧
2001::/32 是 Teredo 的地址范围 从 2001:0:0:0:0:0:0:0-2001:0:ffff:ffff:ffff:ffff:ffff:ffff 至于 6in4 隧道,可以从任意一段地址中选择提供。属于包含的关系。6in4 隧道也可以由运营商提供。例如美国的飓风电气 HE.net 、台湾的中華電信 HiNet (非标准的 6in4 隧道) |
30
wzzyj8 2018-07-29 07:05:11 +08:00 via iPhone
@itfun 这个问题金坷垃的宣传片里都有说
非洲 IT 不发达,我们都要支援它,电脑上了 V6,一台能当两台用,日本资源不发达,上了 v6,码农日产 30000 行,软件再也不用向美国进口了 |
31
ImMrWill 2018-07-29 10:50:53 +08:00
我想默默问一句,在家怎么才能访问六维空间。。。
|
32
zhxhwyzh14 2018-07-29 11:27:56 +08:00
@ImMrWill 六维空间好像只对教育网开放?
|
33
xieweizhi007 2018-07-29 12:22:14 +08:00
|
34
expy 2018-07-29 12:36:05 +08:00
好处主要是远程访问跟各种端到端应用吧。
从公司管理家里的设备,各种 p2p 下载软件、游戏联机玩法。 |
36
gfdsa84627 2018-07-30 20:41:39 +08:00
刷 PT 更方便了
|
37
wjh1102 2018-07-30 21:05:34 +08:00
@ImMrWill 找一台学校里面的能够保证一直有外网连接的设备,用 frp 开穿透,然后再用 OpenVPN 搭建 IPv6 over IPv4 的 VPN,就可以了~(意义不是很大)
|
38
sunnyzhi 2018-07-30 23:55:51 +08:00
如果同时获得了 ipv4 和 V6 的地址,在浏览器上访问一个网页,操作系统是不是分别用 V4 和 V6 的 dns 去解析?如果 V4 和 V6 都解析成功,那么是访问 V4 还是 V6 的地址呢?
|
39
raysonx OP @sunnyzhi 如果要访问的域名同时配置了 A 记录和 AAAA 记录才会出现你所说的情况。
不只是浏览器,大多数软件在这种情况下都会优先使用 IPv6 进行连接,如果失败,再转为 ipv4,也就是 ipv6 的优先级比较高。 不过也有例外: 1. Chrome 浏览器从某一版本开始似乎会采用某种算法去探测不同 IP 地址的访问速度,自己来确定优先级。 2. 6to4 地址( 2002:开头)的优先级比 IPv4 地址低。 |
40
sunsh2017 2018-07-31 08:39:05 +08:00 via Android
不会普及的。
|
42
EdwardSherlock 2018-07-31 10:51:11 +08:00
其实目前还是没什么用的。。像江苏电信这种无 PD,单个 /64 地址 的。路由器拨号部署都有点麻烦还不是太稳定。
|
43
raysonx OP @edwardhua1996 印象中运营商都是用 SLAAC 无状态分配地址的。即使没有 pd,也可以用 ndp ( neighbor discovery protocol proxy)向下面的设备继续分配地址
|
44
meinjoy 2018-07-31 20:25:48 +08:00 via iPhone
那以后就用不着内网穿透软件了?
|
45
wonathan 2018-08-01 17:01:53 +08:00
不知道移动固网会不会给 ipv6 的地址。。。。
|
46
cwek 2018-08-02 20:43:22 +08:00
6in4 是手工隧道,不限定地址的。
2001::/32 是 Teredo 隧道前缀。 |
47
cwek 2018-08-02 20:48:02 +08:00
换 IPv6 的好处就是地址分配重洗(因为可用于公网的地址量大幅增加,美国不再独占大头),家用“路由器”真正地成为了路由器。除此之外,除了增加 ICMPv6 的应对之外,扫描地址效率可能大减之外,其他变化不大。
|
48
ysc3839 2018-08-12 01:37:56 +08:00 via Android
@raysonx 现在很多运营商是通过 PPPoE 连接上网的,PPPoE 本身有分配地址的功能。
用 SLAAC 的应该是直接插网线就能使用的情况。 |
49
vagranth 2018-10-09 15:08:38 +08:00
|
51
acess 2019-04-06 17:52:41 +08:00
我只记得当年折腾 OpenWrt 折腾半天也没成功搞定 IPv6 ……
网上有很多教程说直接桥接,然而这不就是路由器退化成交换机…… 电信只给了一个 /64 的块,我不知道该怎么继续往下分,或者说,到底能不能继续往下分(没记错的话好像 lowendspirit 的 VPS 就是继续往下分了)?该不该继续往下分? |
52
acess 2019-04-06 17:55:41 +08:00
前一阵子,我在微博上看到了这则吐槽,感觉貌似有点懂了,但是还是没懂:
https://weibo.com/1219205751/HdUdQ5O5G 原博:“当年人们认为几年就能完成部署,一旦完成,人们就可以开始消灭 Layer-2 的功能膨胀和分层破坏,将重心完全转移到 Layer 3,从而消灭 MAC 地址、DHCP、ARP,连带直接消灭广播,并且在许多场景下,消灭交换机。然后还能部署刚刚为 IPv6 研发的 IPSec,实现全互联网加密。” 评论:“我觉得应该先废掉 DHCPv6,只留 SLAAC ” 博主回复:“当时 IPv6 就是要废除 ARP 和 DHCP 的,但是因为长期的开发和部署时间远远超过预期,而且期间没有统一的过渡方案,于是有了今天的局面:获取 IP 有至少三个方案。如今的 IPv6 就是一个退化到只剩下 128 位 IP 地址的系统了,当年的那些设想都没有实现。而 NDP 则变成了一个更复杂的 ARP。” |
53
acess 2019-04-06 18:17:35 +08:00
刚刚又搜到了这贴:
https://www.v2ex.com/t/332901 有种特别奇怪的感觉……/64 地址块到底是出于什么目的存在的?难道 2^64 个地址全部都只能一个设备自己用,不能分给其他设备用? |