Advanced Port Scanner 是一款广泛使用的免费端口扫描工具,支持快速扫描局域网内所有计算机的开放端口和服务。其功能全面,易于使用,是网络管理员和安全分析师必备的工具之一。
一、扫描功能
Advanced Port Scanner 主要用于扫描局域网内计算机的开放端口。其支持三种扫描方式:TCP、UDP 和 SNMP。用户可以手动选择一个或多个扫描方式,扫描某个IP地址或整个子网。同时,用户可选定扫描端口的范围或选择常用端口列表。Advanced Port Scanner 还支持多线程扫描,提高扫描速度。
import socket
import threading
def scan(port):
sock=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
sock.settimeout(1)
result=sock.connect_ex(('192.168.1.1',port))
if result==0:
print("Port {} is open".format(port))
sock.close()
for port in range(1,100):
t=threading.Thread(target=scan,args=(port,))
t.start()
上述代码是使用 Python 实现端口扫描的简单示例。这里采用多线程方式,可以比较快速地扫描指定IP地址的1至100端口。用户可以根据实际需求,自行修改端口范围和目标IP地址。
二、显示结果
扫描完成后,Advanced Port Scanner 会将开放端口一览无余地呈现于用户面前。每个计算机的开放端口都以表格形式展示,用户可以从中了解到开放端口的具体信息,如端口号、协议类型、服务类型、主机名等。此外,Advanced Port Scanner 还可以自动识别计算机的操作系统信息、运行的Web服务器、共享文件夹等相关信息。
下面是 Advanced Port Scanner 的扫描结果示例:
除了图形界面外,Advanced Port Scanner 还支持以文本或 HTML 格式输出扫描结果,方便用户进行保存或进一步分析。
import csv
results=[{'IP':'192.168.1.1','Port':'80','Protocol':'TCP'},{'IP':'192.168.1.1','Port':'21','Protocol':'TCP'}]
with open('scan_results.csv','w',newline='') as csvfile:
fieldnames=['IP','Port','Protocol']
writer=csv.DictWriter(csvfile,fieldnames=fieldnames)
writer.writeheader()
for result in results:
writer.writerow(result)
上述代码可以将扫描结果存储为 CSV 格式文件,方便用户用 Excel 等工具进行查看和分析。
三、其他功能
除了扫描功能外,Advanced Port Scanner 还具备许多其他实用的功能,下面列举一部分:
远程访问
Advanced Port Scanner 可以远程访问其他计算机的共享文件夹、FTP 服务器和远程桌面等服务。用户只需要输入目标计算机的 IP、用户名和密码,即可快速连接并操作。
端口关闭
Advanced Port Scanner 可以批量关闭指定计算机上的开放端口。用户只需在开放端口列表中选定要关闭的端口,即可实现一键关闭。
WHOIS 查询
Advanced Port Scanner 内置 WHOIS 工具,可以查询指定域名的 WHOIS 信息,如注册人、注册商、DNS 等。此外,用户还可以从菜单中直接访问 WHOIS 网站,进行更详细的查询。
四、总结
Advanced Port Scanner 是一款非常实用的端口扫描工具,不仅支持快速扫描开放端口,还具备许多其他实用的功能,如远程访问、端口关闭和 WHOIS 查询等。其功能全面,易于使用,可以为网络管理员和安全分析师提供有力的帮助。