IPy对网段的处理

引用

from IPy import *

ip = IP('192.168.0.0/16')

print ip.len()     #65536 网段的长度

for i in ip:

    print i   #输出所有这个网段的ip地址

 

ip = IP('192.168.10.20')

print ip.iptype()    #    公有'PUBLIC'   私有'PRIVATE'     

 

IP('8.8.8.8').int()    #转成十进制数字

IP('8.8.8.8').strHex()     #转换成8进制数字

IP('8.8.8.8').strBin()     #转换成2进制数字

IP('0x8080808')         #把8进制数字转换成IP地址

 

根据掩码计算出ip网段

IP('192.168.1.0').make_net('255.255.255.0')     #输出192.168.1.0/24

IP('192.168.1.0/24').strNormal(0)      #无返回'192.168.1.0'

IP('192.168.1.0/24').strNormal(1)      #prefix格式,'192.168.1.0/24'

IP('192.168.1.0/24').strNormal(2)      #decimalnetmask格式,'192.168.1.0/255.255.255.0'

IP('192.168.1.0/24').strNormal(3)      #lastIP格式,'192.168.1.0-192.168.1.255'

 

多网络计算

IP比较

IP('10.9.1.0/24') < IP('10.9.2.0/24')     #返回True

'192.168.2.100' in IP('192.168.2.0/24')     #返回True

'192.168.1.0/24' in IP('192.168.0.0/16')

判断是否重叠

IP('192.168.0.0/23').overlaps('192.168.1.0/24')     #返回1   代表存在重叠

IP('192.168.1.0/24').overlaps('192.168.2.0/24')     #返回0    代表不存在重叠

转载于:https://www.cnblogs.com/zz27zz/p/9686496.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值