从 Python 中的 ipaddress.IPv4Network 获取错误地址

Getting wrong address from ipaddress.IPv4Network in Python

我正在使用 ipaddress 库获取带子网掩码的 IP 地址,但在放入所有数据后它 returns 错误的地址。 有什么问题?我之前用的时候还不错。

import ipaddress
myip=ipaddress.IPv4Network('192.13.192.123/3',strict=False)

输出是 192.0.0.0/3 而不是 192.13.192.123/3

您正在使用 IPv4Network 而不是 ip_address.

myip = ipaddress.ip_address('192.13.192.123') 将 return 192.13.192.123

myip = ipaddress.IPv4Network('192.13.192.123/24', strict=False) 将 return 192.13.192.0/24 因为 netmask255.255.255.0

myip = ipaddress.IPv4Network('192.13.192.123/3', strict=False) 将 return 192.0.0.0/24 因为 netmask224.0.0.0