Python实现局域网IP端口扫描
import socket
import threading# 创建接收路由列表
routers = []# 创建互斥锁
lock = threading.Lock()# 设置需要扫描的端口号列表
port_list = ['3389', '2425','139']# 定义查询路由函数
def search_routers():# 获取本地ip地址列表local_ips = socket.gethostbyname_ex(socket.gethostname())[2]# print(local_ips)# 存放线程列表池all_threads = []# 循环本地网卡IP列表for ip in local_ips:for i in range(1, 255):# 把网卡IP"."进行分割,生成每一个可用地址的列表array = ip.split('.')# 获取分割后的第四位数字,生成该网段所有可用IP地址array[3] = str(i)# 把分割后的每一可用地址列表,用"."连接起来,生成新的ipnew_ip = '.'.join(array)# print(new_ip)# 遍历需要扫描的端口号列表for port in port_list:dst_port = int(port)# 循环创建线程去链接该地址t = threading.Thread(target=check_ip, args=(new_ip, dst_port) )t.start()# 把新建的线程放到线程池all_threads.append(t)# 循环阻塞主线程,等待每一字子线程执行完,程序再退出for t in all_threads:t.join()# 创建访问IP列表方法
def check_ip(new_ip, port):# 创建TCP套接字,链接新的ip列表scan_link = socket.socket(socket.AF_INET, socket.SOCK_STREAM)# 设置链接超时时间scan_link.settimeout(2)# 链接地址(通过指定我们 构造的主机地址,和扫描指定端口)result = scan_link.connect_ex((new_ip, port))#scan_link.close()# print(result)# 判断链接结果if result == 0:# 加锁lock.acquire()print(new_ip, '\t\t端口号%s开放' % port)routers.append((new_ip, port))# 释放锁lock.release()# print(routers)print("正在扫描..., 请稍等...")# 启动程序入口
if __name__ == '__main__':# 启动扫描程序search_routers()
Python实现局域网IP端口扫描相关推荐
- php 根据ip 扫描端口,python实现指定ip端口扫描方式
在Linux中判断一台主机是否可达,可以使用ping命令,而判断端口是否打开,可以使用telnet命令,但是telnet命令没有超时时间的参数,使用起来不是很方便,那么可以利用Python来完成一个端 ...
- python实现指定ip端口扫描
在Linux中判断一台主机是否可达,可以使用ping命令,而判断端口是否打开,可以使用telnet命令,但是telnet命令没有超时时间的参数,使用起来不是很方便,那么可以利用Python来完成一个端 ...
- python 指定端口读取网站_Python实现局域网指定端口扫描
Python实现局域网指定端口扫描 import socket import threading # 创建接收路由列表 routers = [] # 创建互斥锁 lock = threading.Lo ...
- Python编程--使用NMAP端口扫描
Python编程–使用NMAP端口扫描 安装好Python-Namp模块,(pip install python-nmap).创建一个PortScanner()类对象,这使我们能用这个对象完成扫描操作 ...
- 如何让本地局域网IP端口映射到域名
外网用户不能通过访问内网IP来实现访问我们的FTP.Web.SVN等应用服务器,也不能直接通过内网IP来远程桌面到内网主机电脑.对于外网用户,起唯一地址作用的就是域名,你的服务器是需要让外网能够识别的 ...
- 内网IP端口扫描统计+服务识别简单思路
前提:内网是10网段的,几乎所有机器都开了80和22端口,所以以此为依据认为扫描到的都是在线的IP. 目标是得到在线的IP启动了哪些端口,尽量猜测端口对应的服务. Centos7 (macos用bre ...
- python pip scanless 在线端口扫描网站 匿名端口扫描工具 简介
目录 scanless介绍 scanless安装与使用 scanless支持的在线端口扫描网站 在python中 库的使用方式 scanless介绍 官网地址:github.com/vesche/sc ...
- python arp协议分析_通过python对本局域网进行ARP扫描获取MAC
#!/usr/local/bin/python3 """ 对本局域网进行ARP扫描 ARP (Address Resolution Protocol,ARP); 以太网M ...
- python——利用nmap进行端口扫描,爆破ftp密码,上传wellshell.
一.端口扫描 首先安装nmap与python-nmap模块.从http://nmap.org/download.html网站下载nmap安装文件.从http://xael.org/norman/pyt ...
最新文章
- 激光雷达(LiDAR)点云数据知多少?
- python 打开网页、封装自己的浏览器、制作浏览器、打开麦克风和摄像头、忽略ssl证书错误、置顶、无边框
- @EnableAsync @Async 的详解
- 关于反爬虫,看这一篇就够了 1
- java 内存数据库 sql_ssm+redis +Maven用于内存数据库 (No Sql)入门demo
- MapReduce编程实践之自定义数据类型
- 微博回应裁员;罗永浩股权被冻结;“隐形贫困”人群最爱苹果 | 极客头条
- java中的继承(一)
- Windows Service开发点滴20130622
- NBA球星为啥那么多顶薪?数据可视化为你揭晓真相
- 5.4 continue,break跳出循环
- 安装caffe时候找不到boost怎么办?(boost的引用问题make can‘t find Boost‘s include files)
- Unity制作游戏自定义按键
- 为什么C语言执行效率高,运行快?
- android系统wifi控制风扇,可手机APP控制的机箱风扇,光污染新玩法
- Linux环境下无盘工作站的架设和实现一(转)
- 中兴机试 通信算法方向 秋招春招
- AI岗位平均月薪2.58w,如何抓住这波人才红利?
- router-link使用详解
- 【课程笔记】计算机体系结构复习笔记