Check if two CIDR addresses intersect?

后端 未结 4 2046
时光说笑
时光说笑 2020-12-16 14:40

Given two CIDR addresses say 192.168.2.0/14 and 192.168.2.0/32

How do I check if two ip addresses overlap in \"python2.6\"??

I have gone through netaddr and

4条回答
  •  半阙折子戏
    2020-12-16 15:14

    Using ipaddr:

    >>> import ipaddr
    >>> n1 = ipaddr.IPNetwork('192.168.1.0/24')
    >>> n2 = ipaddr.IPNetwork('192.168.2.0/24')
    >>> n3 = ipaddr.IPNetwork('192.168.2.0/25')
    >>> n1.overlaps(n2)
    False
    >>> n1.overlaps(n3)
    False
    >>> n2.overlaps(n3)
    True
    >>> n2.overlaps(n1)
    False
    

提交回复
热议问题