V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
sgissb1
V2EX  ›  问与答

现在有没有哪些应用是做过 ipv6 的 ip 地址处理兼容?

  •  
  •   sgissb1 · 2018-05-04 17:29:59 +08:00 · 959 次点击
    这是一个创建于 2422 天前的主题,其中的信息可能已经有所发展或是发生改变。
    我想表达的意思是。
    ipv4 用“.”分割 ip 中的几个区域,用“:”分割 ip 和端口

    ipv6 则是全体用“:”来做分隔符。

    最近在看代码,内部处理业务代码或拼接服务器地址时用了 ipv4 的规则去处理,如果真要用在 ipv6 的场景下就需要该相应的处理代码。

    不知道现在有哪些应用已经将这类问题已经解决或者规避掉了。
    6 条回复    2018-05-07 15:08:17 +08:00
    ysc3839
        1
    ysc3839  
       2018-05-04 23:43:42 +08:00 via Android
    IPv6 地址用中括号 [] 括起来再加上“:端口”,解析时简单判断一下就可以解决这个问题了。

    至于哪些程序有,我估计 curl 应该有。
    zhjits
        2
    zhjits  
       2018-05-05 10:23:22 +08:00
    如果程序只需要输入 IP 和端口,那么直接分开
    如果程序输入的是 URL,那么 [v6addr]:port 是个不错的做法

    比较好奇你们之前都没考虑这么 parse 会出问题么,比如 IPv4 有很多种写法,点分十进制只是其中一种……
    sgissb1
        3
    sgissb1  
    OP
       2018-05-05 17:09:11 +08:00
    @zhjits ipv4 中表达某个 ip 地址的写法我就知道点分的(环回不算的话)。至于前人为何这么做,我也不晓得。

    @ysc3839 哦,我以前看一些较为旧一点的开源时,似乎在处理的时候也是用点分的。所以也比较好奇 /
    zhjits
        4
    zhjits  
       2018-05-05 23:49:52 +08:00 via iPhone
    @sgissb1 你试试 ping 2130706433
    sgissb1
        5
    sgissb1  
    OP
       2018-05-06 11:57:04 +08:00
    @zhjits 哦,还有 int 型表达的方式,我给忘了。。。。
    zhjits
        6
    zhjits  
       2018-05-07 15:08:17 +08:00
    @sgissb1 不止这一种哦,你去看源代码
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2809 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 08:02 · PVG 16:02 · LAX 00:02 · JFK 03:02
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.