2 zdgm zdgm_ 于 2014.12.11 11:31 提问

linux的xterm开启的终端里使用原始套接字发送数据包出错,求助

xterm下原始套接字可以接收数据包,但是发送数据包时出错,怎么解决?
错误是【error 101】network is unreachable.
代码如下:
proto = socket.getprotobyname('tcp') # only tcp
sock = socket.socket( socket.AF_INET, socket.SOCK_RAW, proto )
packet_base = sock.recvfrom(1024)[0]
s = socket.socket(socket.AF_INET, socket.SOCK_RAW, socket.IPPROTO_TCP)
s.setsockopt(socket.IPPROTO_IP, socket.IP_HDRINCL, 1)
s.sendto(packet_base, ('123.123.123.123' , 12312))

1个回答

Hjupan
Hjupan   2014.12.11 12:38
已采纳

从错误信息看,似乎是目标机器网络不通。
看iptables有没有阻止这个端口。

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!