星期六, 5月 13, 2023

如何用Python判斷網段是否重疊

來源:python – Check if two CIDR addresses intersect? – Stack Overflow

可以用 ipaddress 這個模組,這在 python3 是內建的。

import ipaddress
n1 = ipaddress.ip_network('192.168.1.0/24')
n2 = ipaddress.ip_network('192.168.2.0/24')
n3 = ipaddress.ip_network('192.168.2.0/25')
print( n1.overlaps(n2) )  # False
print( n1.overlaps(n3) )  # False
print( n2.overlaps(n3) )  # True
print( n2.overlaps(n1) )  # False

沒有留言: