3

我经营一家小型托管公司。几个月以来,似乎越来越多的类似公司受到了这些 dns 反射/放大拒绝服务的打击。我们很幸运能被这些避开,至少现在是这样。但我想做好准备,所以我找到了一个 Python 脚本(我懂一点 Python),并想对我的一些服务器进行压力测试。

在我安装了 scapy、pypcap 和所有其他依赖项后,我得到了一个错误回溯。

Traceback (most recent call last):
 File "C:\Python25\lib\threading.py", line 486, in __bootstr
   self.run()
 File "dnsdos.py", line 230, in run
   send(IP(dst=ns, src=self.target)/UDP()/DNS(rd=1,qd=DNSQR(
rbose=0)
 File "C:\Python25\lib\site-packages\scapy\sendrecv.py", lin
   __gen_send(conf.L3socket(*args, **kargs), x, inter=inter,
unt,verbose=verbose, realtime=realtime)
 File "C:\Python25\lib\site-packages\scapy\sendrecv.py", lin

   s.send(p)
 File "C:\Python25\lib\site-packages\scapy\arch\pcapdnet.py"

   ifs = dnet.eth(iff)
 File "dnet.pyx", line 112, in dnet.eth.__init__
OSError: No error

这是有问题的代码行:

send(IP(dst=ns, src=self.target)/UDP()/DNS(rd=1,qd=DNSQR(qname=A_record)), verbose=0)

这会导致第 251 行的 \lib\site-packages\scapy\sendrecv.py 出现错误,即

__gen_send(conf.L3socket(*args, **kargs), x, inter=inter, loop=loop, count=count,verbose=verbose, realtime=realtime)

在第 234 行

s.send(p)

并在第 237 行的 \lib\site-packages\scapy\arch\pcapdnet.py 上

ifs = dnet.eth(iff)

如果需要,我可以将这 3 个文件的全部代码上传到 pastebin 或其他地方。我试图寻找问题所在,但我无法弄清楚。我确实认为这些论点可能被错误地传递出去。不能说太多,因为我所做的只有套接字编码比这个简单得多。

操作系统:Windows 7 x64
Python 2.5

4

0 回答 0