环境:
python 3.7.4
Windows 10 环境
scapy 2.4.4
前置软件安装:
Npcap 网络抓包工具集 (下载网站 https://nmap.org/npcap/#download)
Graohviz 可视化图形软件 (下载网站 http://www.graphviz.org/download/(windwos10 环境需要下载开发版) )
ImageMagick 图片处理软件 (下载网站 https://urban-warrior.org/ImageMagick/download/binaries/ )
代码:
import os, sys, time, subprocess from scapy.as_resolvers import AS_resolver_radb from scapy.all import traceroute # 路由追踪生成拓扑图 domains = 'www.douyu.com' target = domains.split(' ') dport = [80] if len(target) >= 1 and target[0] != '': # 启动路由跟踪 res, unans = traceroute(domains, dport=dport, retry=-2) # traceroute生成的信息绘制成svg res.graph(target="> test04.svg") time.sleep(1) # svg 转格式为 png subprocess.Popen("convert test04.svg test04.png", shell=True) else: print("IP/domain number of errors, exit")
结果图: