0
openwrt에서 tcpdump를 사용하여 패킷을 캡처하고 netcat을 사용하여 라즈베리 파이에 보냅니다. 문제는 여러 라우터를 사용하여 요청을 포착하고 라스베리 파이로 전달하려는 것입니다.추가 문자열 보내기 netcat
tcpdump -i wlan0 -e -s 256 -l type mgt subtype probe-req |nc 192.168.0.230 22222
그리고 난 파이썬 스크립트로 패킷 정보를받을 :
이import socket
HOST = 'localhost' # use '' to expose to all networks
PORT = 12345
def incoming(host, port):
"""Open specified port and return file-like object"""
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
# set SOL_SOCKET.SO_REUSEADDR=1 to reuse the socket if
# needed later without waiting for timeout (after it is
# closed, for example)
sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
sock.bind((host, port))
sock.listen(0) # do not queue connections
request, addr = sock.accept()
return request.makefile('r', 0)
# /-- network ---
for line in incoming(HOST, PORT):
print line,
출력 :
이15:17:57 801928 3933710786us tsft 1.0 Mb/s 2412 Mhz 11b -38dB signal antanna 1 BSSID: broadcast SA:xxxx ....
원하는 출력 :
192.168.0.130 15:17:57 801928 3933710786us tsft 1.0 Mb/s 2412 Mhz 11b -38dB signal antanna 1 BSSID: broadcast SA:xxxx ....
하지만 내가 어떻게 추가 할 수 명령에 대한 라우터의 IP 주소 ? 그래서 마녀 라우터가 패킷을받은 것을 볼 수 있습니다. 아니면 어떻게 라우터를 식별하기 위해 "router1"과 같은 여분의 문자열을 보낼 수 있습니까?