我想在Python中編寫一個套接字服務器,可以接收ICMP數據包。Python的ICMP套接字服務器(不是TCP UDP)
這裏是我的代碼:
s = socket.socket(socket.AF_INET,socket.SOCK_RAW, socket.IPPROTO_ICMP)
host = socket.gethostbyname(socket.gethostname())
s.bind((host,0))
s.setsockopt(socket.IPPROTO_IP, socket.IP_HDRINCL, 1)
s.ioctl(socket.SIO_RCVALL, socket.RCVALL_ON)
不過,我不知道如何接收數據包 - 我試圖使用s.listen但失敗了。 我錯過了什麼,或者我完全錯誤的方向?
謝謝!
什麼是錯誤信息? – MattH