1
給出IPv6地址的二進制或字符串表示及其前綴長度,在Python中提取前綴的最佳方法是什麼?在Python中提取ipv6前綴
是否有願意爲我做這個圖書館,或者我會:
- 轉換地址從字符串爲int(inet_ntop)
- 屏蔽掉前綴
- 轉換前綴回二進制
- 二進制轉換爲字符串(inet_ntop)
給出IPv6地址的二進制或字符串表示及其前綴長度,在Python中提取前綴的最佳方法是什麼?在Python中提取ipv6前綴
是否有願意爲我做這個圖書館,或者我會:
見http://code.google.com/p/ipaddr-py/
有了這個,你可以做
py> p=ipaddr.IPv6("2001:888:2000:d::a2")
py> p.SetPrefix(64)
py> p
IPv6('2001:888:2000:d::a2/64')
py> p.network_ext
'2001:888:2000:d::'
等
使用Python netaddr庫:
>>> from netaddr.ip import IPNetwork, IPAddress
>>> IPNetwork('2001:888:2000:d::a2/64').network
2001:888:2000:d::