Saya menyela tcpdump
dengan Ctrl +C dan dapatkan ringkasan total ini:
579204 packets captured
579346 packets received by filter
142 packets dropped by kernel
Apa itu "paket yang dijatuhkan oleh kernel"? Mengapa itu terjadi?
Jawaban yang Diterima:
Dari manual tcpdump:
paket "dijatuhkan oleh kernel" (ini adalah jumlah paket yang dijatuhkan, karena kurangnya ruang buffer, oleh mekanisme pengambilan paket di OS tempat tcpdump berjalan, jika OS melaporkan informasi itu ke aplikasi; jika tidak , itu akan dilaporkan sebagai 0).
Sedikit penjelasan:
tcpdump
menangkap paket mentah yang melewati antarmuka jaringan.
Paket harus diuraikan dan difilter menurut aturan yang Anda tentukan di baris perintah, dan itu membutuhkan waktu, jadi paket yang masuk harus di-buffer (antri) untuk diproses .
Kadang-kadang ada terlalu banyak paket, mereka disimpan ke buffer, tetapi mereka disimpan lebih cepat daripada diproses, jadi akhirnya buffer kehabisan ruang, sehingga kernel menjatuhkan semua paket lebih lanjut sampai ada beberapa ruang kosong di penyangga.
Anda dapat meningkatkan ukuran buffer dengan -B
(--buffer-size
) pilihan seperti ini:
tcpdump -B 4096 ....
Perhatikan bahwa ukurannya ditentukan dalam kilobyte, jadi baris di atas menyetel ukuran buffer menjadi 4 MB.