20 lines
575 B
Python
20 lines
575 B
Python
|
#!/usr/bin/env python3
|
||
|
# Nico Schottelius, 2020-01-07
|
||
|
# Detect the DNS64 prefix
|
||
|
# Based on https://tools.ietf.org/html/draft-ietf-behave-nat64-discovery-heuristic-05
|
||
|
|
||
|
import dns.resolver
|
||
|
import ipaddress
|
||
|
|
||
|
|
||
|
if __name__ == '__main__':
|
||
|
dns64_prefix = None
|
||
|
answers = dns.resolver.query('ipv4only.arpa', 'AAAA')
|
||
|
|
||
|
for rdata in answers:
|
||
|
address = str(rdata)
|
||
|
network = ipaddress.IPv6Network("{}/96".format(address),
|
||
|
strict=False)
|
||
|
# print("{}: {}".format(rdata, network))
|
||
|
print("{}".format(network))
|