首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
测试工具
SmokePing
IPv6 访问测试
Coding
V2EX  ›  宽带症候群

T-Mobile US 正式淘汰 IPv4

  •  
  •   terry0824 · 2017-04-19 11:04:25 +08:00 · 4570 次点击
    这是一个创建于 970 天前的主题,其中的信息可能已经有所发展或是发生改变。

    虽然之前也有过 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 有

    • 网易新闻 - 这个大概是网易的锅,毕竟 app 和数据都是他们提供,可能是一直没更新吧
    • 所有 SSH 类 app - 需要访问只有 IPv4 地址的机器的时候就没办法了
    • VPN - 包括 iOS 原生功能以及 Cisco AnyConnect ,工作和个人需求都受到影响
    • 家庭监控摄像头类 app - 例如 Nest Cam 之类用 P2P 直接把视频流从家庭网络传到手机上的,如果家里的路由或者摄像头本身不支持 IPv6 ( which is 常见情况)就用不了

    这事儿大家怎么看?有没有什么在iPhone上从 IPv6 穿回 IPv4 的解决方案呢?

    第 1 条附言  ·  2017-04-19 12:40:34 +08:00
    刚刚测试了一下,微信的语音和视频功能也受到了影响
    36 回复  |  直到 2017-04-21 02:59:00 +08:00
        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   2017-04-19 11:20:56 +08:00
    @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 了
        7
    xi_lin   2017-04-19 12:47:40 +08:00
    @xxxbi 要不是 nat 续了一波命早不够用了吧
        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 是怎么做到的。。
        12
    Patrik   2017-04-19 15:17:15 +08:00
        13
    terry0824   2017-04-19 15:18:50 +08:00
    @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   2017-04-19 15:37:33 +08:00
    @cwek 除了写死 v4 地址的情况,另外比如用 iOS 上的 ssh 工具连接只有 v4 IP 的服务器也会失败,即便是用 hostname 。连接常规的 VPN 也会失败,因为服务端不支持 v6 。
    另外请教一下如果自己做 4in6 的隧道,怎样能应用到 iOS 上呢?
        17
    techyan   2017-04-19 15:42:47 +08:00
    @terry0824 可能一个是 P2P 连接,一个是经过腾讯服务器中转。
        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   2017-04-20 13:04:18 +08:00
    @raysonx 那么请问 iOS 原生 L2TP 无法连接有哪些可能的原因呢?看了服务器的日志,完全没有收到请求。在手机的设置里也是写的域名而不是 IP 。另外一个发现就是把手机网络开热点共享给 mac 的时候, mac 是可以访问同一台服务器的 L2TP vpn 的,而且在服务器上看日志,来源 IP 是 T-Mobile 的一个 v4 IP 。

    同样的情况也适用于 Cisco AnyConnect VPN - 手机无法访问,电脑用同样网络可以访问。
        33
    bclerdx   2017-04-20 15:40:53 +08:00
    @Patrik 不错的东西,收藏!
        34
    raysonx   2017-04-20 16:10:00 +08:00
    @terry0824 会不会是 iOS 的 L2TP 根本不支持 IPv6 ?
        35
    NETBB   2017-04-20 16:39:56 +08:00
    @terry0824 SS 就可以吧, SS 可以支持双栈的。
        36
    daxy223   2017-04-21 02:59:00 +08:00
    @BlinkinCST 亲测没影响还是 v4
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   944 人在线   最高记录 5043   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 35ms · UTC 18:48 · PVG 02:48 · LAX 10:48 · JFK 13:48
    ♥ Do have faith in what you're doing.