0
내 응용 프로그램은 전선을 통해 IPv6 주소를 보내고 읽어야합니다. 그것은 단지 내 응용 프로그램에서 읽을 수있을거야,하지만 난 여전히 관습을 따르고 싶습니다. 이것을하기위한 라이브러리 함수가 있습니까?원시 바이트에서 IPv6 주소를 얻으려면 어떻게해야합니까?
내 응용 프로그램은 전선을 통해 IPv6 주소를 보내고 읽어야합니다. 그것은 단지 내 응용 프로그램에서 읽을 수있을거야,하지만 난 여전히 관습을 따르고 싶습니다. 이것을하기위한 라이브러리 함수가 있습니까?원시 바이트에서 IPv6 주소를 얻으려면 어떻게해야합니까?
socket
모듈에는 inet_pton이라는 기능이 있습니다. 그러나 모든 플랫폼에서 사용할 수있는 것은 아닙니다. (이 글을 쓰고있는 Windows 컴퓨터에서는 사용할 수 없습니다.)
ipaddr이라는 비표준 라이브러리를 사용하는 것이 좋습니다. 그것은 당신이 필요로하는 것을 정확하게 수행 할 두 가지 다소 분명한 기능을 가지고 있습니다 :
from ipaddr import ipaddr
raw = '\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00'
ip = ipaddr.IPv6Address(ipaddr.Bytes(raw))
print "IP is: " + str(ip)
original = bytes(ip.packed)
print "Original raw bytes: " + repr(original)