我希望能够从 Python 中执行 ping 和跟踪路由,而不必执行相应的 shell 命令,所以我更喜欢本地 python 解决方案。
如果您不介意使用外部模块并且不使用 UDP 或 TCP,scapy是一个简单的解决方案:
from scapy.all import *
target = ["192.168.1.254"]
result, unans = traceroute(target,l4=UDP(sport=RandShort())/DNS(qd=DNSQR(qname="www.google.com")))
或者你可以使用tcp版本
from scapy.all import *
target = ["192.168.1.254"]
result, unans = traceroute(target,maxttl=32)
请注意,您必须以 root 身份运行 scapy 才能执行这些任务,否则您将得到:
socket.error: [Errno 1] Operation not permitted
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)