Saya punya masalah dengan mengendus ESP8266. Saya menggunakan raspberry pi 3 sebagai titik akses wifi (tidak ada wpa digunakan), laptop sebagai server dan esp untuk berkomunikasi ke server.
Ketika saya menggunakan tcpdump pada raspberry saya dengan
tcpdump -i <interface> host <device ip> -vv
output hanya dicapai oleh awal awal esp (protokol arp) dan hanya itu. Namun, saya perlu jenis dan konten http / tanggal untuk tujuan saya.
Apakah ada di antara Anda yang punya solusi untuk ini?
EDIT Ok Saya telah menemukan solusi melalui penggunaan iptables. Saya dapat mendefinisikan prerouting ke port tertentu dan mendengarkannya dengan bantuan tcpdump. Itu benar-benar nyaman dan saya pikir saya bisa mendapatkan semua data yang saya butuhkan.
wlan0
, dan RaspPi meneruskan ke laptop melalui LAN. Apa yang terjadi jika Anda melakukannyatcpdump -i wlan0
? Apakah Anda melihat permintaan HTTP? Juga, google "proxy transparan" atau "mitmproxy" untuk membuat proses lebih mudah.Jawaban:
Lalu lintas antara dua klien WLAN dapat diteruskan oleh driver secara langsung, dan dalam hal ini tidak akan pernah mencapai antarmuka, itulah sebabnya Anda tidak melihatnya. Saya tidak tahu apakah mungkin untuk mengatur titik AP ke mode di mana lalu lintas ini juga terlihat.
Salah satu solusinya adalah dua gunakan dua AP, satu untuk ESP8266 dan satu untuk laptop / server, dan secara jelas maju di antara mereka.
Sunting
Jika Anda tidak hanya ingin menangkap dengan
tcpdump
,wireshark
dll, tetapi memeriksa dan memodifikasi lalu lintas HTTPmitmproxy
, maka itu tergantung:Bisakah Anda memberi tahu semua aplikasi ESP8266 yang relevan untuk menggunakan RaspPi sebagai proxy, dengan konfigurasi atau variabel lingkungan? Jika ya, satu AP sudah cukup.
Apakah Anda memerlukan proxy transparan, di mana itu akan berfungsi bahkan jika Anda tidak bisa / tidak bisa mengkonfigurasi pengaturan proxy eksplisit? Maka Anda memerlukan dua AP (atau WLAN + LAN, atau 2x LAN). Tidak ada jalan lain. Karena kalau tidak, sekali lagi komunikasi apa pun antara ESP8966 dan server tidak akan meninggalkan antarmuka, jadi
mitmproxy
jangan melihatnya.sumber