Follow change of netifaces ipv6 mask
This commit is contained in:
parent
3fcfb88084
commit
2930b9448c
@ -13,16 +13,8 @@ def count_bits(integer):
|
|||||||
return bits
|
return bits
|
||||||
|
|
||||||
|
|
||||||
def v6_to_int(v6):
|
def cidr6(addr, bits):
|
||||||
return int(v6.replace(":", ""), 16)
|
return "{addr}/{bits}".format(addr=addr, bits=bits)
|
||||||
|
|
||||||
|
|
||||||
def prefix6(mask):
|
|
||||||
return count_bits(v6_to_int(mask))
|
|
||||||
|
|
||||||
|
|
||||||
def cidr6(addr, mask):
|
|
||||||
return "{addr}/{bits}".format(addr=addr, bits=prefix6(mask))
|
|
||||||
|
|
||||||
|
|
||||||
def v4_to_int(v4):
|
def v4_to_int(v4):
|
||||||
@ -126,8 +118,9 @@ class NetworkInfo:
|
|||||||
if netifaces.AF_INET6 in network_info:
|
if netifaces.AF_INET6 in network_info:
|
||||||
for v6 in network_info[netifaces.AF_INET6]:
|
for v6 in network_info[netifaces.AF_INET6]:
|
||||||
info["v6"] = v6["addr"]
|
info["v6"] = v6["addr"]
|
||||||
info["v6mask"] = v6["netmask"]
|
mask, bits = v6["netmask"].split("/")
|
||||||
info["v6cidr"] = cidr6(v6["addr"], v6["netmask"])
|
info["v6mask"] = mask
|
||||||
|
info["v6cidr"] = cidr6(v6["addr"], bits)
|
||||||
if not v6["addr"].startswith("fe80::"): # prefer non link-local addresses
|
if not v6["addr"].startswith("fe80::"): # prefer non link-local addresses
|
||||||
break
|
break
|
||||||
return info
|
return info
|
||||||
|
Loading…
Reference in New Issue
Block a user