Python自动化运维之IP地址处理模块详解


Posted in Python onDecember 10, 2017

实用的IP地址处理模块IPy

在IP地址规划中,涉及到计算大量的IP地址,包括网段、网络掩码、广播地址、子网数、IP类型等

别担心,Ipy模块拯救你。Ipy模块可以很好的辅助我们高效的完成IP的规划工作。

功能:辅助我们高效的完成IP的规划工作

安装:

wget https://pypi.python.org/packages/source/I/IPy/IPy-0.81.tar.gz --no-check-certificate
tar -zxvf Ipy-0.81.tar.gz
cd IPy-0.81
python setup.py install

IP地址、网段的基本处理:

使用方法:

#from IPy import IP
#ip_1 = IP('192.168.1.0/24')
#print(ip_1.len()) # 输出192.168.1.0/24网段的IP个数
#for a in ip_1: 
# print(a) # 输出192.168.1.0/24网段的所有IP清单

IP地址的转化:

#from IPy import IP 
#ip_2 = IP('192.168.1.1') 
#ip_2.reverseNames() # 反响解析地址格式
#ip_2.iptype() # 查看IP地址类型
#ip_2.int() # 将格式转换为整型格式
#ip_2.strHex() # 将格式转换为16进制格式
#ip_2.strBin() # 将格式转换为2进制格式 
#print(IP(0x8188808)) # 将16进制转化为IP格式

IP网段的转化:

#from IPy import IP
# 输出192.168.1.0/24 
#print(IP('192.168.1.0').make_net('255.255.255.0')) 
#print(IP('192.168.1.0/255.255.255.0',make_net=True)) 
#print(IP('192.168.1.0-192.168.1.255',make_net=True)) 
# 通过strNormal() 方法指定上述三种格式的输出: 
#print(IP('192.168.1.0/24').strNormal(0)) # 参数(wantprefixlen)为0,无返回,输出192.168.1.0
#print(IP('192.168.1.0/24').strNormal(1)) # 参数(wantprefixlen)为1,prefix格式,输出192.168.1.0/24 
#print(IP('192.168.1.0/24').strNormal(2)) # 参数(wantprefixlen)为2,decimalnetmask格式,输出192.168.1.0/255.255.255.0 
#print(IP('192.168.1.0/24').strNormal(3)) # 参数(wantprefixlen)为3,lastIP格式,输出192.168.1.0-192.168.1.255

多网络计算方法:

功能:比较两个网段是否存在包含、重叠等关系,比如192.168.1.0/24 和192.168.1.0/25;192.168.0.0/24 和192.168.1.0/24

使用方法:

#from IPy import IP
#IP('192.168.0.0/24')<IP('192.168.1.0/24')
# 判断IP地址和网段是否包含于另一个网段中
#'192.168.1.1' in IP('192.168.1.0/24') 
# 判断两个网段是否存在重叠,使用overlaps()方法 
#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,表示没有重叠

根据输入的IP地址或网段地址,返回网络地址、广播地址、地址反响解析、子网数、IP类型等信息:

#from IPy import IP 
#ip_inp=raw_input('输入IP地址或网段地址')
#ip=IP(ip_inp)
#if len(ip)>1: # 是一个网段
# print('网络地址是:%s' %ip.net())
# print('子网掩码是:%s' %ip.netmask())
# print('广播地址是:%s' %ip.broadcast())
# print('地址反向解析:%s' %ip.reverseName()[0])
# print('网络子网数为:%s' %sip.len()) 
#else: # 是一个IP地址 
# print('IP地址反向解析:%s' %ip.reverseName()[0])
#
#print('16进制地址:%s' %ip.strHex())
#print('2进制地址:%s' %ip.strBin())
#print('IP地址类型:%s' %ip.iptype())

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对三水点靠木的支持。

Python 相关文章推荐
Python 文件操作技巧(File operation) 实例代码分析
Aug 11 Python
easy_install python包安装管理工具介绍
Feb 10 Python
Python多层嵌套list的递归处理方法(推荐)
Jun 08 Python
python生成词云的实现方法(推荐)
Jun 13 Python
pandas 将索引值相加的方法
Nov 15 Python
解决Python2.7中IDLE启动没有反应的问题
Nov 30 Python
python使用magic模块进行文件类型识别方法
Dec 08 Python
Python正则表达式实现简易计算器功能示例
May 07 Python
python原类、类的创建过程与方法详解
Jul 19 Python
学习和使用python的13个理由
Jul 30 Python
Python数据可视化:幂律分布实例详解
Dec 07 Python
python利用xlsxwriter模块 操作 Excel
Oct 14 Python
python利用rsa库做公钥解密的方法教程
Dec 10 #Python
Python跨文件全局变量的实现方法示例
Dec 10 #Python
git进行版本控制心得详谈
Dec 10 #Python
Python内置模块turtle绘图详解
Dec 09 #Python
Python程序退出方式小结
Dec 09 #Python
Python实战小程序利用matplotlib模块画图代码分享
Dec 09 #Python
Python爬取附近餐馆信息代码示例
Dec 09 #Python
You might like
DC最新动画电影:《战争之子》为何内容偏激,毁了一个不错的漫画
2020/04/09 欧美动漫
PHP访问MYSQL数据库封装类(附函数说明)
2010/12/04 PHP
thinkphp模板输出技巧汇总
2014/11/24 PHP
发现的以前不知道的函数
2006/09/19 Javascript
表格 隔行换色升级版
2009/11/07 Javascript
JS 按钮点击触发(兼容IE、火狐)
2013/08/07 Javascript
前端轻量级MVC框架CanJS详解
2014/09/26 Javascript
bootstrap 表单验证使用方法
2017/01/11 Javascript
详解JavaScript中this的指向问题
2017/01/20 Javascript
JS 调试中常见的报错问题解决方法
2017/05/20 Javascript
基于vue+canvas的excel-like组件实例详解
2017/11/28 Javascript
jQuery滚动条美化插件nicescroll简单用法示例
2018/04/18 jQuery
关于JavaScript中高阶函数的魅力详解
2018/09/07 Javascript
node.JS二进制操作模块buffer对象使用方法详解
2020/02/06 Javascript
Openlayers测量距离与面积的实现方法
2020/09/25 Javascript
Python中用字符串调用函数或方法示例代码
2017/08/04 Python
Python面向对象程序设计构造函数和析构函数用法分析
2019/04/12 Python
python并发编程多进程之守护进程原理解析
2019/08/20 Python
浅谈Python3识别判断图片主要颜色并和颜色库进行对比的方法
2019/10/25 Python
HTML5 canvas实现雪花飘落特效
2016/03/08 HTML / CSS
20佳惊艳的HTML5应用程序示例分享
2011/05/03 HTML / CSS
《落花生》教学反思
2014/02/25 职场文书
研究生考核个人自我鉴定
2014/03/27 职场文书
保护环境建议书400字
2014/05/13 职场文书
人事行政经理岗位职责
2014/06/18 职场文书
数学教研活动总结
2014/07/02 职场文书
贯彻落实“八项规定”思想汇报
2014/09/13 职场文书
党员批评与自我批评思想汇报(集锦)
2014/09/14 职场文书
个人收入证明模板
2014/09/18 职场文书
毕业生自荐材料范文
2014/12/30 职场文书
会议欢迎词
2015/01/23 职场文书
2015年行政工作总结范文
2015/04/09 职场文书
入党团支部推荐意见
2015/06/02 职场文书
长征观后感
2015/06/09 职场文书
2015小学教育教学工作总结
2015/07/21 职场文书
小学入学感言
2015/08/01 职场文书