Python 3.4非常简单的数据包嗅探器
如何在选定的服务器和端口上进行数据包嗅探器?类似于Wpe Pro或RPE,但我想使用Python和“print”来编写这些数据包。我试过这个:Python 3.4非常简单的数据包嗅探器,python,sniffer,Python,Sniffer,如何在选定的服务器和端口上进行数据包嗅探器?类似于Wpe Pro或RPE,但我想使用Python和“print”来编写这些数据包。我试过这个: import socket UDP_IP = "xx.xx.xx.xx" UDP_PORT = xxxx sock = socket.socket(socket.AF_INET, # Internet socket.SOCK_DGRAM) # UDP sock.bind((UDP_IP, UDP_PORT)) while True: dat
import socket
UDP_IP = "xx.xx.xx.xx"
UDP_PORT = xxxx
sock = socket.socket(socket.AF_INET, # Internet
socket.SOCK_DGRAM) # UDP
sock.bind((UDP_IP, UDP_PORT))
while True:
data, addr = sock.recvfrom(1024) # buffer size is 1024 bytes
print("received message:", data)
但我认为它不能工作(UDP或其他什么是错误的?)。我如何才能正确地执行它?我有一个工作代码,它先发送,然后接收,大致如下:
# set up the UDP socket
connection = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
connection.settimeout(5)
# Send packet by UDP
connection.sendto(request_bytes, (UDP_IP, UDP_PORT))
# Receive response packet
response_bytes = connection.recv(4096)
您是否缺少settimeout
?是一个简化的面向对象Python包装器,用于当前的tcpdump.org版本和Windows的WinPcap端口
那可能会节省你一些时间