python3.2 ICMP侦听器抛出错误

时间:2012-09-13 15:29:24

标签: sockets udp python-3.2

我正在收听GPS装置的帖子。在wireshark中,我看到了我设备上的帖子。但是在我的python代码中,我没有抓住它们。这是我使用的代码。它几乎是pydocs/sockets的逐字逐句。我从网络上的其他内容得到了很多回复,但我没有看到我的设备ip。

#HOST = socket.gethostbyname(socket.gethostname())
HOST = ''
SENDER = '166.161.24.104'
PORT = 22335
BUFFSIZE = 1024
TIMEOUT = 60 # seconds

import socket

# the public network interface
HOST = socket.gethostbyname(socket.gethostname())

# create a raw socket and bind it to the public interface
s = socket.socket(socket.AF_INET, socket.SOCK_RAW, socket.IPPROTO_IP)
s.bind((HOST, 22335))

# Include IP headers
s.setsockopt(socket.IPPROTO_IP, socket.IP_HDRINCL, 1)

# receive all packages
s.ioctl(socket.SIO_RCVALL, socket.RCVALL_ON)

while True:
    # receive a package
    ans, addr = s.recvfrom(BUFFSIZE)
    print(addr[0])

# disabled promiscuous mode
s.ioctl(socket.SIO_RCVALL, socket.RCVALL_OFF)

这会发布我网络上正在通话的所有IP地址的列表。

0 个答案:

没有答案