ipy模块计算IP地址,包括网段、网络掩码、广播地址、子网数、IP类型等

1、IP地址处理

1.1 判断地址类型是ipv4还是ipv6

import IPy
l1=IPy.IP('192.168.1.5').version()
print(l1)#4,IPv4地址类型
l1=IPy.IP('::1').version()
print(l1)#6,IPv6地址类型

1.2 判断网络ip地址个数,输出结果

import IPy
l1=IPy.IP('192.168.1.0/24')
print(len(l1))#输出ip网段的个数,256
for i in l1:#使用循环列出当前网段的所有IPprint(i)

1.3 判断ip类型,公有、私有、环回等

import IPy
l1=IPy.IP('192.168.1.1').iptype()
print(l1)#PRIVATE
l1=IPy.IP('100.100.100.100').iptype()
print(l1)#CARRIER_GRADE_NAT
l1=IPy.IP('11.11.11.11').iptype()
print(l1)#PUBLIC
l1=IPy.IP('::1').iptype()
print(l1)#LOOPBACK

1.4 反向地址解析

import IPy
l1=IPy.IP('192.168.1.1').reverseNames()#反向地址解析
print(l1)
#['1.1.168.192.in-addr.arpa.']

1.5 ip地址类型转换

import IPy
l1=IPy.IP('192.168.1.1').int()#转换成整形
print(l1)#3232235777
l1=IPy.IP('192.168.1.1').strHex()#十进制转换成十六进制
print(l1)#0xc0a80101
l1=IPy.IP('192.168.1.1').strBin()#十进制转换成二进制
print(l1)#11000000101010000000000100000001
l1=IPy.IP('0xc0a80101')#十六进制转化十进制
print(l1)#192.168.1.1

1.6 判断ip地址所在网段

import IPy
l1=IPy.IP('192.168.1.56').make_net(24)
print(l1)#192.168.1.0/24
l1=IPy.IP('192.168.1.1').make_net('255.255.255.0')
print(l1)#192.168.1.0/24
l1=IPy.IP('192.168.1.56/24',make_net=True)
print(l1)#192.168.1.0/24
l1=IPy.IP('192.168.1.56/255.255.255.0',make_net=True)
print(l1)#192.168.1.0/24
l1=IPy.IP('192.168.1.0-192.168.1.255',make_net=True)
print(l1)#192.168.1.0/24

1.7 strNormal指定输出不同格式类型网段

import IPy
l1=IPy.IP('192.168.1.0/24').strNormal(0)
print(l1)#192.168.1.0
l1=IPy.IP('192.168.1.0/24').strNormal(1)
print(l1)#192.168.1.0/24,默认不写就是它
l1=IPy.IP('192.168.1.0/24').strNormal(2)
print(l1)#192.168.1.0/255.255.255.0
l1=IPy.IP('192.168.1.0/24').strNormal(3)
print(l1)#192.168.1.0-192.168.1.255

2、网络计算

判断两个网段的关系:包含等

2.1 判断ip是否在某个网段

import IPy
l1=IPy.IP('192.168.1.1')
l2=IPy.IP('192.168.1.0/24')
print(l1 in l2)#True

2.2 判断网段是否在某网段中

import IPy
l1=IPy.IP('192.168.1.0/24')
l2=IPy.IP('192.168.0.0/22')
print(l1 in l2)#True

2.3判断重叠关系

import IPy
l1=IPy.IP('192.168.1.0/24').overlaps('192.168.1.0/25')
print(l1)#1,有重叠部分
l1=IPy.IP('192.168.2.0/24').overlaps('192.168.1.0/25')
print(l1)#0,没有重叠部分

3、综合使用

import IPy
用户输入=input('请输入地址或网段:(参考格式:192.168.1.1,192.168.1.0/24,192.198.1.1/255.255.255.0)\n请输入:')
IPS=IPy.IP(用户输入)
if len(用户输入)>=0:print('网络地址:{}'.format(IPS.net()))print('网络掩码:{}'.format(IPS.netmask()))print('广播地址:{}'.format(IPS.broadcast()))print('反向地址解析:{}'.format(IPS.reverseNames()[0]))print('子网个数:{}'.format(len(IPS)))

4、其它用法



收藏以备不时之需。
参考:https://blog.csdn.net/qianshuiliyu/article/details/122955589

二、Python3自动化运维——IP地址处理模块IPy相关推荐

  1. Python自动化运维——IP地址处理模块

    模块:IPy 功能:辅助我们高效的完成IP的规划工作 安装: 学习python中有什么不懂的地方,小编这里推荐加小编的python学习群:895 817 687 有任何不懂的都可以在里面交流,还有很好 ...

  2. 超级实用的IP地址处理模块IPY详解

    文章目录 实用的IP地址处理模块IPY详解 一.IPy模块介绍 二.安装 三.基本使用 1.IP地址.网段的基本处理 2.多网络计算方法详解 四.实战 参考资料 实用的IP地址处理模块IPY详解 一. ...

  3. IP地址处理模块IPy

    IP地址处理模块IPy 计算IP地址,包括网段.网络掩码.广播地址.子网数.IP类型等 1.IP地址处理 1.判断地址类型是ipv4还是ipv6 import IPy l1=IPy.IP('192.1 ...

  4. python笔记系列:IP地址处理模块IPy

    IP地址处理模块IPy wget https://pypi.python.org/packages/source/I/IPy/IPy-0.81.tar.gz --no-check-certificat ...

  5. python ipaddress模块_Python学习笔记-IP地址处理模块Ipy

    IP地址处理模块Ipy IPy模块可以很好的辅助我们高效完成IP的规划工作. 安装IPy模块[root@kurol ~]# python36 -m easy_install -i http://pyp ...

  6. Python3 自动化运维之IPy 网络ip地址管理

    1.环境准备 Python3.6 sublime text 3 IPy 2.安装 pip install IPy  或者 pip3 install IPy 3.代码 #ip地址 网段的基本处理 fro ...

  7. 二、Python3自动化运维——IPy模块

    文章目录 1 源码安装 2 IP地址.网段的基本处理 2.1 IPy模块包含IP类,使用它可以方便处理绝大部分格式为IPv6及IPv4的网络和地址.比如通过version方法就可以区分出IPv4与IP ...

  8. 六、Python3自动化运维——电子邮件 smtplib模块

    上一节要注意的点: re.sub 第一个参数是指匹配的正则表达式.第二个参数是指匹配到的要换成什么,第三个参数是原字符串 destination_dir = re.sub(dir1,dir2,item ...

  9. Linux运维-ip地址配置

    软件工具: VMware 16 Pro 链接:https://pan.baidu.com/s/1EcH0wjYaQxgYnKOe-vnPsg             提取码:0qlm centos7镜 ...

最新文章

  1. 面试官问:BitMap了解么?在什么场景下用过?碰到过什么问题?
  2. “网络实名制”的背后
  3. EBB-11、Linux启动流程
  4. Linux下如何查看系统启动时间和运行时间(转)
  5. 防水耐脏,超大容量双肩包,限时拼团仅需49元
  6. BugkuCTF-MISC题又一张图片,还单纯吗
  7. vsflexgrid 最后一行 求和_合并单元格求和、计数、平均值,这个方法很实用
  8. java alarm api_JAVA抽象类及接口使用方法解析
  9. python中pycharm倒计时_pycharm中的快捷键和简单设置
  10. 【端口扫描工具】mascan核心使用
  11. Java是什么?Java能干嘛?
  12. [NLP]OpenNLP文档分类器的使用
  13. mk突变点检测_科学网—从网上找的M-K突变检验的程序 - 张乐乐的博文
  14. 关于日历点击跳转以及短信点击跳转到指定联系人界面的一些记录
  15. 汉字笔顺字帖在线生成器网站源码
  16. 阿里巴巴java开发手册(alibaba网址在线查看或下载)
  17. 手机连接投影机的步骤_手机连接投影机的步骤(投影仪无线网连接步骤)
  18. Arduino实验十四 无源蜂鸣器与有源蜂鸣器
  19. 一本书被撕掉一页:剩余页码数之和是140
  20. 报表合并软件怎么快速将多表格文件整合到一个表

热门文章

  1. 【保姆级教程】基于WordPress在阿里云服务器上搭建个人博客网站
  2. 我在CSDN上学Python-2
  3. 02-react Fiber 架构
  4. cloudstack 安全组
  5. 树莓派安装linux
  6. 破局思维:打造爆款产品的方法论
  7. selenium.模拟键盘操作(Keys)
  8. 计算机及网络验收表,08040501_信息网络系统调试检验批质量验收记录
  9. 快速赚到100万可行方法
  10. 京东云入选2019年度TOP100全球软件案例 新一代服务治理框架加速行业落地