虽然之前也有过 T-Mobile 全面应用 IPv6 的消息 ( https://www.v2ex.com/t/328661 ),但一直做得不是很绝, IPv4 一直还是可以用的。自从 3 月底 4 月初 T-Mobile 推送 28.3 运营商更新更新以后,就时不常发现有些 app 会打不开数据,一直也没细想。直到今天才发现是他们正式淘汰了 IPv4 。
联系了客服吐槽,客服把锅甩给了 Apple - https://developer.apple.com/news/?id=05042016a
道理我都懂,可是虽然原生 app 可以强制用 IPv6 资源,但还有很多 use case 是不可避免要用 IPv4 的,就这么强行不让用了。
目前发现的没法用了的 App 有
这事儿大家怎么看?有没有什么在iPhone上从 IPv6 穿回 IPv4 的解决方案呢?
1
kmahyyg 2017-04-19 11:08:49 +08:00 via Android
tunnel broker (he)
|
2
Sh888 2017-04-19 11:17:31 +08:00
仅提供 ipv4 资源的网站还有很多吧。应该需要一个同时支持 ipv4/ipv6 的 vps ,配置一个 ipv6 vpn 和一个 ipv6 到 ipv4 的转换。
|
3
terry0824 OP @Sh888 IPv4 网站其实没有受到影响。运营商应该是用了 DNS64 和 NAT64 之类的东西进行转换。但是 IP 直连的一些应用就受到影响了。现在手头倒是有同时支持 IPv4 和 IPv6 的 vps ,就是不知道怎么能配置 iOS 原生支持 IPv6 连接的 VPN 。
|
4
dot 2017-04-19 11:29:23 +08:00
T-MO US 这么激进?!……不知道 MVNO 会有影响么,我有个 Project Fi 的卡在国内用,原生 MNO 就是 T-MO ……
|
5
xxxbi 2017-04-19 12:44:38 +08:00
ipv4 被夸大了短缺情况,其实 ipv4 没那么不够用。
|
6
springmarker 2017-04-19 12:46:13 +08:00 via Android
这么猛,这在国内想都不敢想, ipv6 普及了,家里终于会有公网 ip 了
|
8
fcj558 2017-04-19 12:49:00 +08:00 via iPhone
这么激进,合约期到了换运营商吧
|
9
jasontse 2017-04-19 12:49:25 +08:00 via iPad
廉价运营商打算省 IP 钱
|
10
Sh888 2017-04-19 12:54:39 +08:00
@terry0824 主要是 vpn server 需要支持 ipv6 吧。 cisco router 上实现的话应该问题不大,官网应该就有文档。客户端配置话,应该一样的吧。
|
11
techyan 2017-04-19 13:23:33 +08:00
所以其他的 App 都已经全部上 IPv6 了?很好奇 QQ 和仍然死活没上 v6 的 twitter 是怎么做到的。。
|
13
terry0824 OP @techyan 虽然具体细节我不是很懂,但是大部分 IPv4 的服务是不受影响的,应该是做了转发。好像是只要代码里不是 hardcode 写死 IPv4 的地址,而是写域名,那么在做 DNS 解析的时候运营商可以给返回一个虚拟的 IPv6 地址,实际是指向真实的 IPv4 地址。比如网页打开只有 IPv4 的网站仍然可以正常访问。但是 IP 直连的就挂了。不过很有意思的一点是微信的视频不能用,但是 QQ 的视频可以正常使用。
|
14
cwek 2017-04-19 15:21:41 +08:00
写死 v4 地址?那就没办法了,只能自己做 4in6 的隧道了。
|
15
xxxbi 2017-04-19 15:23:27 +08:00
内网 ip 就够用了,有的人非要占个公网 ip 才 happy ,真是服了。
|
16
terry0824 OP @cwek 除了写死 v4 地址的情况,另外比如用 iOS 上的 ssh 工具连接只有 v4 IP 的服务器也会失败,即便是用 hostname 。连接常规的 VPN 也会失败,因为服务端不支持 v6 。
另外请教一下如果自己做 4in6 的隧道,怎样能应用到 iOS 上呢? |
18
Sh888 2017-04-19 17:18:16 +08:00
@xxxbi ipv6 的好处不止是地址数量多, ipv6 包头的低开销、 anycast 特性对移动设备连接的稳定性很有用。这也是移动运营商愿意推动的原因之一吧。
|
19
yexm0 2017-04-19 17:35:59 +08:00 via iPhone
@terry0824 例如像这种用 ss 的 bbs2.6plat.org/d/21
|
20
blueandhack 2017-04-19 18:25:31 +08:00 via iPhone
你这么一说,我才发现,但是似乎对我没什么影响…我用 Nest 好好的啊
http://imgur.com/7d97Agz.png |
21
blueandhack 2017-04-19 18:26:16 +08:00 via iPhone
|
22
wjm2038 2017-04-19 18:33:04 +08:00 via Android
微信很神奇的。。把服务器的 ip 写死在配置里了,定期更新,有时候我就莫名其妙的看到连接不到服务器的提示,但是是仍然可以发消息的
|
23
BlinkinCST 2017-04-19 18:40:09 +08:00 via iPhone
求问国内使用的 Project Fi 有没有影响
|
24
raysonx 2017-04-19 20:48:52 +08:00 1
@terry0824 一般单栈 IPv6 网络下访问 IPv4 地址是用 NAT64 实现的(默认的映射地址段为 64:ff9b::/96 ), DNS 解析用 DNS64 。
比如 domain.com 的 IPv4 地址是 8.8.4.4 ,在 DNS 解析阶段,得到的解析结果会被映射为 64:ff9b::808:404 。当访问 64:ff9b::808:404 是, NAT64 网关会进行地址转换,转换为 IPv4 协议(目的地址还原为 8.8.4.4 ,来源地址是网关的 IPv4 公网地址)后再送入 IPv4 网络,这样就完成了通信。 |
25
raysonx 2017-04-19 20:51:25 +08:00 1
至于你说的 SSH 或者常用的 VPN 协议,都可以在 NAT64 下正常工作,除非不用 DNS 且地址写死。
改本地 hosts 是没用的,因为得不到 IPv4 地址映射后的 IPv6 地址。同理随意更换第三方 DNS 也没用,只能用运营商提供的 DNS 。 |
26
Sh888 2017-04-20 09:26:31 +08:00
@raysonx SSH 和 VPN 是不是指纹(证书)基于 IP 地址验证的关系? IPv6 转 IPv4 可是目的地址和源地址都改了。
|
27
raysonx 2017-04-20 09:45:25 +08:00 1
@Sh888 不验证 IP 地址。
1. SSH 的指纹只检查本地缓存的 hostname 或者 IP 对应的指纹是否发生了改变,地址变化的话只会让你重新确认指纹是否可信,因为它会认为你是在连接一台新机器。 2. VPN 如果使用证书的话,除非证书的 Common Name 或 Subject Alternative Name 里面填的是 IP 地址(意思是证书是颁发给那个 IP 的,很少见,一般都是颁发给域名)。 3. 你用一台只有内网 IP 的机器连接 AWS 也是同种情况, AWS 的机器只有内网 IP ,可是你得用公网 IP 去连接它。同样目的地址和源地址都改了。 |
28
twl007 2017-04-20 09:49:20 +08:00 via iPhone
Waze 也不能用了 哎
|
29
Sh888 2017-04-20 10:15:27 +08:00
@raysonx 谢谢!看来还是应用程序没有使用域名的原因。另外,对于 vpn 的问题,如果 vpn sevrer 配置了双栈,应该就可以支持 ipv6 客户端了吧?
|
30
raysonx 2017-04-20 10:18:16 +08:00 via Android
@Sh888 你说的双栈是指 VPN 的域名同时配置了 A 记录和 AAAA 记录,还是指 VPN 服务器同时接入了 IPv4 和 IPv6 网络?
|
31
Sh888 2017-04-20 10:28:57 +08:00
@raysonx 谢谢!已经想明白了。只要 vpn 协议支持 IPv6 , VPN 隧道内使用 IPv4 或者 IPv6 和隧道本身是否使用 IPv6 没有关系。
|
32
terry0824 OP @raysonx 那么请问 iOS 原生 L2TP 无法连接有哪些可能的原因呢?看了服务器的日志,完全没有收到请求。在手机的设置里也是写的域名而不是 IP 。另外一个发现就是把手机网络开热点共享给 mac 的时候, mac 是可以访问同一台服务器的 L2TP vpn 的,而且在服务器上看日志,来源 IP 是 T-Mobile 的一个 v4 IP 。
同样的情况也适用于 Cisco AnyConnect VPN - 手机无法访问,电脑用同样网络可以访问。 |
36
daxy223 2017-04-21 02:59:00 +08:00
@BlinkinCST 亲测没影响还是 v4
|