python如何计算多个IP网段的可用地址数,图是我是写的代码,可是12行没有计算出可用地址。

Python015

python如何计算多个IP网段的可用地址数,图是我是写的代码,可是12行没有计算出可用地址。,第1张

你IP.txt 中的数据格式是什么样子的?

计算两个IP之间有多少个IP数,可以转化成int 相减呀。

IPy.IP(ip2).int() - IPy.IP(ip2).int() +1 就是ip2和ip1之间有多少个ip数量了。

#!/usr/bin/python

import fcntl, socket, struct

def getHwAddr(ifname):

    s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)

    info = fcntl.ioctl(s.fileno(), 0x8927,  struct.pack('256s', ifname[:15]))

    return ':'.join(['%02x' % ord(char) for char in info[18:24]])

print getHwAddr('eth0')

水平有限,不会造轮子,只为学习。

在原来写端口扫描的基础上进一步爬取web服务的title信息,方便收集信息。

适用于在外网收集资产形成IP字典后去批量获取title,意在最快地寻找脆弱点。

自行安装BeautifulSoup4、requests库。

V1.0

python3 写的单线程爬取web系统的title信息。

注解

1.使用BeautifulSoup4库来解析HTML,爬取title信息;

2.打印title时,带有颜色的输出;

3.在开放443、4433、8443端口时,采用https进行访问;

4.解决SSL认证问题;

V1.0.1

python3 单线程写的爬取网站title信息。增加了OptionParser模块,运行时看起来比较舒服。

注解

1.依然是从IP字典里爬取,实际运行脚本时,即使没有获取title,也应该手动访问开放的端口,往往有意外惊喜;

2.端口内置在脚本里,可自行修改;

V1.1

python3写的多线程爬取web系统的title。

注解

1.只是使用threading模块,没有添加到队列,也没有加锁;本身port_list也不多;

V1.2

python3 写的多线程加队列的来爬取web系统的title信息。

注解

1.增加了queue队列,和多线程配合使用。更加实用;

V1.3

python3 写的多线程加队列的来爬取web系统的title信息。

增加result输出结果到文本,适应于内外网端口扫描并获取title

python3 编写扫描IP网段如192.168.1.0/24某些指定应用端口爬取title信息。 在代理进行内网渗透时内网资产不容易找到。

适用于内网、外网环境。

自行安装BeautifulSoup4、requests库。

V2.0

python3写的扫描IP段并爬取title信息,收集资产。

注解

1.使用ipaddress模块获取C段地址,也可以是B段;

2.只使用threading模块,没有添加队列queue;

V2.1

python3 写的多线程扫描IP段爬取title。在一定线程下,代理探测内网资产title的非常使用。

注解

1.port_list列表移动到scan方法里;

2.将IP添加到queue队列,而不是端口;

V2.2

python3 写的多线程扫描IP段爬取title。

注解

1.只是增加了result_out方法,将结果输出到指定文件;

https://github.com/aedoo/WebServiceScanner/blob/master/webservicescanner.py