TCPDUMP hanya menangkap koneksi baru

9

Saya menggunakan TCPDUMP untuk menangkap lalu lintas dari alamat IP tertentu. Apakah ada kemungkinan untuk menangkap koneksi baru saja, artinya stream TCP yang dimulai dengan paket SYN?

Terima kasih

Ania Katzenelson
sumber
Sayangnya tidak. tcpdump hanya menangkap paket ketika mereka tiba, ia tidak memelihara informasi sesi apa pun untuk membedakan antara aliran TCP. Anda perlu menganalisis tangkapan di Wireshark jika Anda ingin memisahkan stream (Anda dapat memesan dengan nomor stream misalnya).
Mark Riddell
Hati-hati, bit SYN diatur dalam dua paket pertama dari TCP 3-Way Handshake. Jadi, filter ini akan cocok dengan semua upaya baru untuk membuat koneksi, bukan hanya koneksi yang baru dibuat. Entah bagaimana (aturan perangkat lunak) koneksi tidak diterima itu juga akan ditampilkan.
Malaikat

Jawaban:

7

Untuk menangkap hanya paket TCP SYN:

# tcpdump -i <interface> "tcp[tcpflags] & (tcp-syn) != 0"
pstrozniak
sumber
3
Itu tidak akan menangkap semua lalu lintas untuk sesi baru. Itu hanya akan menangkap paket SYN.
user5870571
1

Berikut ini akan menangkap paket TCP-SYN dan SYN-ACK.

tcpdump -i <interface> "tcp[tcpflags] & (tcp-syn) !=0"

Berikut ini hanya akan menangkap paket TCP-SYN.

tcpdump -i <interface> "tcp[tcpflags] & (tcp-syn) !=0 and tcp[tcpflags] & (tcp-ack) =0"

Alasannya adalah, paket SYN-ACK menyertakan flag SYN dan ACK. Filter pertama hanya mencari keberadaan bendera SYN.

Jika Anda ingin memfilter hanya pada inbound, tambahkan opsi -Q in.

tcpdump -i <interface> -Q in "tcp[tcpflags] & (tcp-syn) !=0 and tcp[tcpflags] & (tcp-ack) =0"
JamesL
sumber