如何比较两个 IP 地址并确定它们是完全匹配还是部分匹配还是根本不匹配

Adi*_*ngh 4 python

我需要比较两个不同的 IP 子网,并显示结果是否完全匹配、部分匹配或不匹配。

我需要使用Python。

可以将 IP 分解为列表,但当涉及子网时,这会变得很棘手。例如:

我需要比较 a 和 b,其中 a = 10.10.1.2/25 和 b = 10.10.1.6/24 并显示结果。我是 python 新手,不知道如何完成这项任务。

Ama*_*ria 5

您可以使用python的ipaddress模块​​(内置)

from  ipaddress import ip_interface
# since you have provided interface address
ip1 = ip_interface.ip_address('10.10.1.2/24')
ip2 = ip_interface.ip_address('10.10.1.6/24')
print(ip1 == ip2)
# answer would be False
Run Code Online (Sandbox Code Playgroud)