使用Python获取网段IP个数以及地址清单的方法
Python  /  管理员 发布于 7年前   242
使用Python获取网段的IP个数以及地址清单需要用到IPy的库,而相应的方法主要就是IP。
写小脚本如下:
from IPy import IP ip = IP('192.168.0.0/16') print(ip.len()) for x in ip: print(x)
运行结果:
GreydeMac-mini:01_系统基础信息模块详解 greyzhang$ python ip.py
65536192.168.0.0192.168.0.1192.168.0.2192.168.0.3192.168.0.4192.168.0.5192.168.0.6192.168.0.7192.168.0.8192.168.0.9192.168.0.10192.168.0.11192.168.0.12192.168.0.13192.168.0.14192.168.0.15192.168.0.16192.168.0.17……………………192.168.255.241192.168.255.242192.168.255.243192.168.255.244192.168.255.245192.168.255.246192.168.255.247192.168.255.248192.168.255.249192.168.255.250192.168.255.251192.168.255.252192.168.255.253192.168.255.254192.168.255.255
从上面的结果中可以看出,这个王端中共有65535个IP,同时脚本输出了所有的IP地址清单。至于这个IP地址的含义可以再做一下简单的解释。代码中的192.168.0.0/16其实是一个私有地址网段。早起的网络设计中,总是尝试给所有的计算机分配一个固定的地址,但是随着局域网的发展这个多少有点不必要了。私有的局域内部网络很多时候并不需要保护共有IP。未连接到互联网上的机器并不需要使用唯一的IP地址,因为它并不在因特网上路由,也不需要与IP地址注册表协调。在RFC 1981中保留了IPV4的三个费重叠地址,具体的地址说明如下:
而代码中,用到的便是上面表格中的第三个。针对前面两个的网段IP数目进行获取如下:
In [67]: ip1 = IP('172.16.0.0/12')In [68]: ip1.len()Out[68]: 1048576In [69]: ip2 = IP('10.0.0.0/8')In [70]: ip2.len()Out[70]: 16777216
以上这篇使用Python获取网段IP个数以及地址清单的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
122 在
学历:一种延缓就业设计,生活需求下的权衡之选中评论 工作几年后,报名考研了,到现在还没认真学习备考,迷茫中。作为一名北漂互联网打工人..123 在
Clash for Windows作者删库跑路了,github已404中评论 按理说只要你在国内,所有的流量进出都在监控范围内,不管你怎么隐藏也没用,想搞你分..原梓番博客 在
在Laravel框架中使用模型Model分表最简单的方法中评论 好久好久都没看友情链接申请了,今天刚看,已经添加。..博主 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 @1111老铁这个不行了,可以看看近期评论的其他文章..1111 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 网站不能打开,博主百忙中能否发个APP下载链接,佛跳墙或极光..
Copyright·© 2019 侯体宗版权所有·
粤ICP备20027696号