【问题标题】:How to expand ipv6 address using python?如何使用python扩展ipv6地址?
【发布时间】:2017-04-11 19:04:28
【问题描述】:

我想将 ipv6 地址的简写符号转换为 ipv6 寻址格式的简写符号;我知道我们可以使用ipaddress 库对 IP 地址执行各种操作。例如我想将::abc:7:def 转换为0000:0000:0000:0000:0000:0abc:0007:0def

【问题讨论】:

    标签: python python-3.x ipv6


    【解决方案1】:

    您正在寻找IPv6Address 对象的exploded 属性。你可以通过拨打ipaddress.ip_address得到这个:

    > import ipaddress
    > addr = ipaddress.ip_address('::abc:7:def')
    > print(addr.exploded)
    0000:0000:0000:0000:0000:0abc:0007:0def
    

    【讨论】:

    • 确保以 unicode 格式输入 IPv6 地址,否则您可能会在 Python 2 上遇到错误
    • 这也适用于“IPv4 映射的 IPv6 地址”:import ipaddress; print(ipaddress.ip_address('::ffff:192.0.2.128').exploded) -> 0000:0000:0000:0000:0000:ffff:c000:0280。这很好。 :)
    猜你喜欢
    • 2011-06-15
    • 2012-08-19
    • 1970-01-01
    • 2018-09-23
    • 2017-11-05
    • 1970-01-01
    • 2022-01-12
    • 2017-11-09
    相关资源
    最近更新 更多