IP地址处理模块IPy之IP地址、网段基本处理
2015-09-04 14:36
309 查看
一、安装IPy
wget http://www.mylinuxer.com/down/IPy-0.82a.tar.gz [root@localhost opt]# tar -zxvf IPy-0.82a.tar.gz
[root@localhost opt]# cd python-ipy-IPy-0.82a/
[root@localhost python-ipy-IPy-0.82a]# python setup.py install
二、IP地址、网段基本处理
[root@localhost ~]# python
Python 2.6.6 (r266:84292, Oct 12 2012, 14:23:48)
[GCC 4.4.6 20120305 (Red Hat 4.4.6-4)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> from IPy import IP
>>> ip=IP('192.168.0.0/16')
>>> print ip.len() #输出该网段的IP个数
65536
>>> ip=IP('192.168.1.108')
>>> ip.reverseNames() #反向解析地址格式
['108.1.168.192.in-addr.arpa.']
>>> ip.iptype() #返回网络类型
'PRIVATE'
>>> ip.int() #返回十进制格式
3232235884
>>> ip.strHex() #返回十六进制格式
'0xc0a8016c'
>>> ip.strDec()
'3232235884'
根据IP与掩码生成网段格式
>>> ip.make_net('255.255.0.0')
IP('192.168.0.0/16')
>>> print(IP('192.168.1.108/255.255.255.0',make_net=True))
192.168.1.0/24
>>> print(IP('192.168.1.108/255.255.0.0',make_net=True))
192.168.0.0/16
>>> print(IP('192.168.1.0-192.168.1.255',make_net=True))
192.168.1.0/24
通过strNormal方法指定不同的wantperfixlen参数值以定制不同输出类型的网段,输出类型为字符串。
>>> IP('192.168.1.0/24').strNormal(0)
'192.168.1.0'
>>> IP('192.168.1.0/24').strNormal(1)
'192.168.1.0/24'
>>> IP('192.168.1.0/24').strNormal(2)
'192.168.1.0/255.255.255.0'
>>> IP('192.168.1.0/24').strNormal(3)
'192.168.1.0-192.168.1.255'
wget http://www.mylinuxer.com/down/IPy-0.82a.tar.gz [root@localhost opt]# tar -zxvf IPy-0.82a.tar.gz
[root@localhost opt]# cd python-ipy-IPy-0.82a/
[root@localhost python-ipy-IPy-0.82a]# python setup.py install
二、IP地址、网段基本处理
[root@localhost ~]# python
Python 2.6.6 (r266:84292, Oct 12 2012, 14:23:48)
[GCC 4.4.6 20120305 (Red Hat 4.4.6-4)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> from IPy import IP
>>> ip=IP('192.168.0.0/16')
>>> print ip.len() #输出该网段的IP个数
65536
>>> ip=IP('192.168.1.108')
>>> ip.reverseNames() #反向解析地址格式
['108.1.168.192.in-addr.arpa.']
>>> ip.iptype() #返回网络类型
'PRIVATE'
>>> ip.int() #返回十进制格式
3232235884
>>> ip.strHex() #返回十六进制格式
'0xc0a8016c'
>>> ip.strDec()
'3232235884'
根据IP与掩码生成网段格式
>>> ip.make_net('255.255.0.0')
IP('192.168.0.0/16')
>>> print(IP('192.168.1.108/255.255.255.0',make_net=True))
192.168.1.0/24
>>> print(IP('192.168.1.108/255.255.0.0',make_net=True))
192.168.0.0/16
>>> print(IP('192.168.1.0-192.168.1.255',make_net=True))
192.168.1.0/24
通过strNormal方法指定不同的wantperfixlen参数值以定制不同输出类型的网段,输出类型为字符串。
>>> IP('192.168.1.0/24').strNormal(0)
'192.168.1.0'
>>> IP('192.168.1.0/24').strNormal(1)
'192.168.1.0/24'
>>> IP('192.168.1.0/24').strNormal(2)
'192.168.1.0/255.255.255.0'
>>> IP('192.168.1.0/24').strNormal(3)
'192.168.1.0-192.168.1.255'
相关文章推荐
- Linux网络编程:原始套接字的魔力【上】
- 牛津书虫系列102册1.27G书虫配套6.8G MP3 百度网盘下载
- 我实在是没有发现两个程序的区别 但是运行结果就是不一样啊?
- 开发入行真功夫--史上最牛编程入门图书隆重上市
- 学习笔记PDF.js专题
- socks5 代理
- 按内容查找
- Linux运维工程师非常有用Linux命令之ifconfig
- 运维老鸟分享linux运维发展路线规划
- WSAENOBUFS 错误问题 解决方法
- reinterpret_cast static_cast 区别
- PyQt4学习资料
- rm -rf 使用技巧
- 数据库的一些概念
- 关于lvs的activeconn超级大的问题
- redis服务监控
- 关于学习Perl语言(一)想学Perl必看
- 关于学习Perl语言(二)想学Perl必看
- Nginx问题定位之监控进程异常退出
- Redis配置文件解析