【发布时间】:2015-09-15 23:54:50
【问题描述】:
我学会了通过 Python 使用 socket 发送数据包,但是在 Windows 机器上运行下面的代码时出现错误(socket.error errno=10022),在 Linux 上一切正常。我该如何解决?
try:
s = socket.socket(socket.AF_INET, socket.SOCK_RAW, socket.IPPROTO_TCP)
except socket.error , msg:
print 'Socket could not be created. Error Code : ' + str(msg[0]) + ' Message ' + msg[1]
sys.exit()
s.setsockopt(socket.IPPROTO_IP, socket.IP_HDRINCL, 1)
source_ip = self.source
dest_ip = self.destination
packet = '';
ip_header = self.construct_ip_header()
tcp_header = self.construct_tcp_header()
packet = ip_header + tcp_header
s.sendto(packet, (dest_ip , 0 ))
【问题讨论】: