Python 如何解决这个问题;TypeError";:没有一个
我想用ProfiNet协议来模拟发送数据包。该程序在Linux下运行良好,但出于某种原因,我想让它在windows下运行,当我尝试让它运行时,我得到了以下结果:Python 如何解决这个问题;TypeError";:没有一个,python,Python,我想用ProfiNet协议来模拟发送数据包。该程序在Linux下运行良好,但出于某种原因,我想让它在windows下运行,当我尝试让它运行时,我得到了以下结果: >>>python Fuzzer.py -w false -s 00:1E:37:3A:CC:50 -d 6c:ae:8b:29:6f:72 -t dcp -i eth0 -c 100 Profinet Fuzzer. Call it like Fuzzer.py -w false -s 00:19:99:9d:
>>>python Fuzzer.py -w false -s 00:1E:37:3A:CC:50 -d 6c:ae:8b:29:6f:72 -t dcp -i eth0 -c 100
Profinet Fuzzer. Call it like
Fuzzer.py -w false -s 00:19:99:9d:ed:ab -d 00:1b:1b:17:ba:8a -t pnio -i eth0 -c 10
or try Fuzzer.py -h for help.
Needs Administrator-Rights to send packages!
Fuzzing will start with following parameters:
Source: 00:1E:37:3A:CC:50
Destination: 6c:ae:8b:29:6f:72
Frametype: dcp
Number of packets: 100
Interface: eth0
Sniffing: false
Traceback (most recent call last):
File "Fuzzer.py", line 144, in <module>
fuzzer(packets, options.interface)
File "Fuzzer.py", line 74, in fuzzer
responses.append(srp(packet, timeout=1))
File "C:\Python27\lib\site-packages\scapy\sendrecv.py", line 357, in srp
s = conf.L2socket(iface=iface, filter=filter, nofilter=nofilter, type=type)
File "C:\Python27\lib\site-packages\scapy\arch\pcapdnet.py", line 240, in __in
it__
self.ins = open_pcap(iface, 1600, 0, 100)
File "C:\Python27\lib\site-packages\scapy\arch\windows\__init__.py", line 347,
in <lambda>
pcapdnet.open_pcap = lambda iface,*args,**kargs: _orig_open_pcap(pcapname(if
ace),*args,**kargs)
File "C:\Python27\lib\site-packages\scapy\arch\pcapdnet.py", line 171, in <lam
bda>
open_pcap = lambda *args,**kargs: _PcapWrapper_pypcap(*args,**kargs)
File "C:\Python27\lib\site-packages\scapy\arch\pcapdnet.py", line 135, in __in
it__
self.iface = create_string_buffer(device)
File "C:\Python27\lib\ctypes\__init__.py", line 69, in create_string_buffer
raise TypeError(init)
TypeError: None
python Fuzzer.py-w false-s 00:1E:37:3A:CC:50-d6c:ae:8b:29:6f:72-tdcp-i eth0-c100
Profinet模糊器。就像
Fuzzer.py-wfalse-s00:19:99:9d:ed:ab-d00:1b:1b:17:ba:8a-tpnio-ieth0-c10
或者尝试Fuzzer.py-h寻求帮助。
需要管理员权限才能发送包!
模糊将从以下参数开始:
资料来源:00:1E:37:3A:CC:50
目的地:6c:ae:8b:29:6f:72
帧类型:dcp
封包数目:100
接口:eth0
嗅探:错
回溯(最近一次呼叫最后一次):
文件“Fuzzer.py”,第144行,在
fuzzer(包、选项、接口)
文件“Fuzzer.py”,第74行,在Fuzzer中
追加(srp(数据包,超时=1))
文件“C:\Python27\lib\site packages\scapy\sendrecv.py”,第357行,在srp中
s=conf.L2socket(iface=iface,filter=filter,nofilter=nofilter,type=type)
文件“C:\Python27\lib\site packages\scapy\arch\pcapdnet.py”,第240行,在
它__
self.ins=open_pcap(iface,1600,0100)
文件“C:\Python27\lib\site packages\scapy\arch\windows\\uuuu init\uuuu.py”,第347行,
在里面
pcapdnet.open_pcap=lambda iface,*args,**kargs:_orig_open_pcap(pcapname)(如果
ace),*args,**kargs)
文件“C:\Python27\lib\site packages\scapy\arch\pcapdnet.py”,第171行,在
打开\u pcap=lambda*args,**kargs:\u PcapWrapper\u pypcap(*args,**kargs)
文件“C:\Python27\lib\site packages\scapy\arch\pcapdnet.py”,第135行,在
它__
self.iface=创建字符串缓冲区(设备)
文件“C:\Python27\lib\ctypes\\uuuu init\uuuuu.py”,第69行,在创建字符串缓冲区中
raise TypeError(初始化)
类型错误:无
操作系统是Windows7Ultimate,Python版本是2.7.9,gcc编译器是use tdm gcc
为什么我会得到这个,我如何解决这个问题?提前感谢。上面说
需要管理员权限才能发送软件包代码>在顶部。我猜您需要以管理员身份运行
从回溯中猜测,它看起来像pcapname('eth0')
返回None
。也许您需要以管理员身份运行以获取接口的pcap名称?我已使用管理员权限运行此程序,但它仍然显示此错误。也许在Linux和Windows下用于获取pcapname的函数不一样?eth0
似乎是unix下的接口名称,而不是Windows。我想windows系统的名称不同吧?