2015-06-18 50 views
0

如何在選定的服務器和端口上進行數據包嗅探器?像Wpe Pro或RPE,但我想使用Python和'打印'來寫這些數據包。我試過這個:Python 3.4非常簡單的數據包嗅探器

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或其他什麼是錯的?)。我如何正確地做到這一點?

回答

0

我有工作發送然後接收代碼,並將其變爲一個小東西是這樣的:

# 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是對你的思念是這樣嗎?

0

pypcaplibpcap的一個簡化的面向對象的Python包裝 - 當前的tcpdump.org版本和Windows的WinPcap端口。

這可能會爲您節省一些時間。