我正在尝试使用Scapy用Python编写一个发出DNS请求并接收DNS响应的脚本。 这就是我写的:
std::map<K,V>& Process( std::map<K,V>& gData)
{
//...some here...
realProcessing(...some arguments...)
}
std::map<K,V*>& Process( std::map<K,V*>& gData)
{
//...another wrapper here...
realProcessing(...some arguments...)
}
当我运行这段代码时,Ping(ICMP)工作并收到响应,但是当它发送DNS查询时会说:
packet = IP(dst="1.1.1.1")/ICMP()
res = sr1(packet)
if res:
print "---------------------------------------"
print "Host is Up, trying DNS Query"
print "---------------------------------------"
packet = IP(dst="1.1.1.1") / UDP() / DNS(rd=1, qd=DNSQR(qname="www.google.com"))
sr1(packet)
else:
print "Destination Unreachable!"
它一直打印点,直到我停止它并打印:“接收到83个数据包,得到0个答案,剩下1个数据包”。
您知道如何解决此问题吗? 预先感谢您的回答。
答案 0 :(得分:0)
一些可以帮助您的事情:
python setup.py install
安装(在Unix上为sudo)iface=...
中的sr1
)。完整列表可用get_if_list()