温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

IP地址处理模块IPy之多网络计算

发布时间:2020-08-07 14:51:13 来源:网络 阅读:722 作者:lineqi 栏目:开发技术

判断IP地址和网段是否包含于另一个网段中

>>> IP('10.10.10.0/24')<IP('10.10.11.0/24')

True

>>> '10.10.12.11' in IP('10.10.11.0/24')   

False

>>> '10.10.11.11' in IP('10.10.11.0/24') 

True

网段两个网段是否有重叠

>>> IP('192.168.0.0/23').overlaps('192.168.1.0/24')    #1表示有重叠

1

>>> IP('192.168.2.0/23').overlaps('192.168.1.0/24')    #0表示没重叠


示例

根据输入的IP或子网返回网络、掩码、广播、反向解析、子网数、IP类型

[root@localhost python2.6]# cat netsimple1.py 

#!/usr/bin/env python

#by lineqi

#create time 2015-09-04

from IPy import IP

ip_s = raw_input('please input an IP or net-range:')

ips = IP(ip_s)


if len(ips) >1:

        print('net :%s ' % ips.net())

        print('netmask :%s ' % ips.netmask())

        print('broadcast :%s ' % ips.broadcast())

        print('revese address :%s ' % ips.reverseNames()[0])    #输出第1个子网地址反向解析

        print('subnet :%s ' % len(ips))                         #输出网络子网数

else:

        print('reverse address :%s' % ips.reverseNames())


print('iptype :%s' % ips.iptype())

[root@localhost python2.6]# python netsimple1.py 

please input an IP or net-range:192.168.1.0/28

net :192.168.1.0 

netmask :255.255.255.240 

broadcast :192.168.1.15 

revese address :0.1.168.192.in-addr.arpa. 

subnet :16 

iptype :PRIVATE

[root@localhost python2.6]# python netsimple1.py     

please input an IP or net-range:192.168.1.23

reverse address :['23.1.168.192.in-addr.arpa.']

iptype :PRIVATE



向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI