[英]what does mean “compatible=true”, in changing IPv4 address to IPv6 address in netaddr module in python
例如:
import netaddr
addr = netaddr.IPAddress('192.168.1.1')
addr = addr.ipv6()
addr = addr.ipv(ipv4_compatible=True)
第3行將輸出::ffff:192.168.1.1
,但第4行將輸出::192.168.1.1
。 我的問題是,它們到底是什么意思?
如果您想得到一個簡單的答案,請參閱Wikipedia上有關“ IPv4映射的IPv6地址 ”的一些信息,
例如,:: ffff:192.0.2.128表示IPv4地址192.0.2.128。 與IPv4兼容的IPv6地址不建議使用的格式為:: 192.0.2.128。
因此,使用ipv4_compatible = True將使用不贊成使用的格式,而不是當前格式。 否則,您當然可以閱讀標准(RFC 4291)。
請記住,以這種方式將IPv4映射到IPv6地址實際上並不意味着您將使用IPv6。 即使已為IPv6打開套接字,使用這些地址也僅告訴操作系統使用IPv4而不是IPv6。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.