如何调用python-nmap来实现扫描局域网存活主机(代码)


当前第2页 返回上一页

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

#!/usr/bin/python

#_*_ coding:utf8 _*_

import netifaces,nmap

 

def get_gateways():

    return netifaces.gateways()['default'][netifaces.AF_INET][0]

 

def get_ip_lists(ip):

    ip_lists = []

    for i in range(1, 256):

        ip_lists.append('{}{}'.format(ip[:-1], i))

    return ip_lists

 

def main(ip=None):

    ip=get_gateways()

    ip_lists=get_ip_lists(ip)

    nmScan,temp_ip_lists,hosts = nmap.PortScanner(),[],ip[:-1]+'0/24'

    ret = nmScan.scan(hosts=hosts, arguments='-sP')

    print('扫描时间:'+ret['nmap']['scanstats']['timestr']+'\n命令参数:'+ret['nmap']['command_line'])

    for ip in ip_lists:

        print('ip地址:'+ip+':')

        if ip not in ret['scan']:

            temp_ip_lists.append(ip)

            print('扫描超时')

        else:print('已扫描到主机,主机名:'+ret['scan'][ip]['hostnames'][0]['name'])

    print(str(hosts) +' 网络中的存活主机:')

    for ip in temp_ip_lists:ip_lists.remove(ip)

    for ip in ip_lists:print(ip)

 

if __name__ == '__main__':

    main()

实验截图:

以上就是如何调用python-nmap来实现扫描局域网存活主机(代码)的详细内容,更多文章请关注木庄网络博客!!

返回前面的内容

相关阅读 >>

Python里upper什么意思

ubuntu16.04设置Python3为默认及一些库的安装

Python编程快速上手实例

Python中是否存在三元运算符

Python代码画出爱心曲线

Python默认安装怎么卸载

利用 Python 对目录下的文件进行过滤删除实例详解

Python面向对象之访问限制

Python什么时候用多进程编程

Python re.match函数是什么,了解Python match函数的使用

更多相关阅读请进入《Python》频道 >>




打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...