Linux tcpdump command ialah penganalisis paket rangkaian yang berkuasa yang digunakan untuk memantau dan menyelesaikan masalah trafik rangkaian. Ia membolehkan pengguna menangkap dan memaparkan paket yang bergerak melalui antara muka rangkaian, memberikan pandangan berharga ke dalam aktiviti rangkaian. Ia merupakan alat yang digunakan secara meluas untuk diagnostik rangkaian, analisis keselamatan dan analisis trafik.
Penggunaan Utama dan Sintaks tcpdump Perintah #
. tcpdump arahan mengikut struktur sintaks asas:
tcpdump [OPTIONS] [EXPRESSION]
- PILIHAN ubah suai tingkah laku tcpdump, seperti -i untuk menentukan antara muka atau -w untuk menulis output ke fail.
- EXPRESSION menapis paket yang ditangkap berdasarkan kriteria seperti IP sumber/destinasi, port atau protokol. Jika ditinggalkan, ia menangkap semua paket.
tcpdump Jadual Cheatsheet Perintah #
| Perintah | Penerangan Produk |
tcpdump -i eth0 |
Tangkap paket pada antara muka rangkaian eth0 |
tcpdump -i eth0 port 80 |
Tangkap trafik HTTP (port 80) pada antara muka eth0 |
tcpdump -w capture.pcap |
Tulis paket yang ditangkap ke fail (capture.pcap) |
tcpdump -r capture.pcap |
Baca dan paparkan paket daripada fail yang ditangkap sebelum ini |
tcpdump -n |
Paparkan alamat IP dan port tanpa menyelesaikan nama hos atau nama perkhidmatan |
tcpdump -c 100 |
Tangkap hanya 100 paket dan kemudian berhenti |
tcpdump -v |
Sediakan output verbose, menunjukkan lebih banyak butiran paket |
tcpdump -X |
Paparkan kandungan paket dalam kedua-dua heksadesimal dan ASCII |
. tcpdump Pilihan Perintah #
-i: Tentukan Antara Muka #
Untuk menangkap paket pada antara muka rangkaian tertentu, gunakan -i pilihan diikuti dengan nama antara muka (cth, eth0, wlan0):
tcpdump -i eth0
Perintah ini menangkap semua paket pada eth0 antara muka pengguna.
-w: Tulis Output ke Fail #
Untuk menyimpan paket yang ditangkap ke fail untuk analisis kemudian, gunakan -w pilihan:
tcpdump -w capture.pcap
Ini menulis semua paket yang ditangkap ke fail bernama capture.pcap.
-r: Baca Paket daripada Fail #
Untuk membaca paket daripada fail yang ditangkap sebelum ini, gunakan -r pilihan:
tcpdump -r capture.pcap
Perintah ini membaca dan memaparkan paket yang disimpan dalam capture.pcap fail.
-n: Tunjukkan Output Berangka #
. -n pilihan menghalang tcpdump daripada melaksanakan resolusi DNS untuk alamat IP dan nama perkhidmatan, sebaliknya memaparkan alamat mentah:
tcpdump -n
Ini berguna apabila anda ingin melihat alamat IP mentah dan port tanpa menyelesaikannya kepada nama hos.
-c: Tangkap Bilangan Paket Tertentu #
Untuk menangkap hanya bilangan paket tertentu dan kemudian berhenti, gunakan -c pilihan:
tcpdump -c 100
Ini menangkap hanya 100 paket, selepas itu ia akan berhenti menangkap secara automatik.
-v: Output Verbose #
. -v pilihan menyediakan maklumat paket yang lebih terperinci, termasuk medan tambahan seperti TTL, saiz tetingkap dan pilihan:
tcpdump -v
Ini berguna apabila anda memerlukan maklumat yang lebih terperinci tentang setiap paket.
-X: Tunjukkan Output Hex dan ASCII #
. -X pilihan memaparkan kandungan setiap paket dalam kedua-dua format heksadesimal dan ASCII:
tcpdump -X
Ini boleh berguna untuk memeriksa data yang tepat dalam setiap paket.
Contoh Penggunaan tcpdump Perintah #
Tangkap Paket pada Antara Muka Tertentu #
Untuk menangkap semua paket pada eth0 antara muka:
tcpdump -i eth0
Perintah ini menangkap dan memaparkan semua trafik rangkaian yang melaluinya eth0.
Tangkap Trafik HTTP (Port 80) #
Untuk menangkap paket HTTP (biasanya pada port 80) pada eth0 antara muka:
tcpdump -i eth0 port 80
Ini menapis trafik untuk hanya menunjukkan paket yang ditakdirkan untuk atau datang dari port 80, yang biasanya digunakan untuk trafik HTTP.
Tangkap dan Simpan Trafik ke Fail #
Untuk menyimpan semua trafik yang ditangkap ke dalam a .pcap fail untuk analisis kemudian:
tcpdump -w capture.pcap
Ini mencipta fail capture.pcap mengandungi paket yang ditangkap.
Baca Paket yang Ditangkap daripada Fail #
Untuk membaca dan menganalisis paket yang ditangkap sebelum ini daripada capture.pcap fail:
tcpdump -r capture.pcap
Perintah ini membuka fail dan memaparkan paket yang ditangkap.
Output Verbose untuk Maklumat Paket Terperinci #
Untuk melihat butiran lanjut tentang setiap paket yang ditangkap, gunakan -v pilihan:
tcpdump -v
Ini akan memaparkan maklumat tambahan, seperti TTL, saiz tetingkap dan banyak lagi.
Tangkap Trafik untuk Tempoh Tertentu #
Untuk menangkap trafik untuk tempoh tertentu atau bilangan paket, anda boleh mengehadkan tangkapan menggunakan -c pilihan:
tcpdump -i eth0 -c 50
Perintah ini menangkap 50 paket pada eth0 antara muka dan kemudian berhenti secara automatik.
Tangkap dan Paparkan Data Heksadesimal dan ASCII #
Untuk melihat kandungan paket dalam kedua-dua format heksadesimal dan ASCII:
tcpdump -X
Ini akan memaparkan kedua-dua perwakilan heksadesimal dan setara ASCII bagi setiap data paket.
Menggunakan tcpdump untuk Penyelesaian Masalah Rangkaian #
. tcpdump arahan amat berguna untuk mendiagnosis isu rangkaian. Berikut adalah beberapa contoh praktikal:
Mengenal pasti Kehilangan Paket atau Isu Latensi #
Dengan menangkap dan menganalisis paket rangkaian, anda boleh mengesan kehilangan paket atau isu kependaman. Sebagai contoh, anda mungkin menangkap paket ICMP untuk melihat masa perjalanan pergi balik:
tcpdump -i eth0 icmp
Penapis ini untuk paket ICMP, yang biasanya digunakan untuk menyelesaikan masalah sambungan rangkaian (cth, ping).
Menganalisis Trafik Antara Dua Hos #
Untuk menangkap trafik antara dua hos tertentu, anda boleh menggunakan host penapis:
tcpdump -i eth0 host 192.168.1.10
Ini menangkap semua trafik yang melibatkan 192.168.1.10 pada eth0 antara muka pengguna.
Memantau Permintaan DNS #
Untuk menangkap pertanyaan DNS, tapis untuk trafik UDP pada port 53:
tcpdump -i eth0 port 53
Perintah ini menangkap pertanyaan dan respons DNS pada eth0 antara muka pengguna.
Ringkasan #
Secara ringkasnya, Linux tcpdump arahan ialah alat yang sangat serba boleh dan berkuasa untuk analisis rangkaian dan penyelesaian masalah. Keupayaannya untuk menangkap dan menapis paket rangkaian menjadikannya amat diperlukan untuk pentadbir dan profesional keselamatan. Sama ada anda menangkap semua trafik pada antara muka, menganalisis protokol atau port tertentu atau menyimpan data untuk pemeriksaan kemudian, tcpdump menyediakan penyelesaian yang teguh dan fleksibel untuk bekerja dengan trafik rangkaian.
Menggunakan tcpdump berkesan membolehkan anda mendiagnosis isu, mengoptimumkan konfigurasi rangkaian dan meningkatkan keselamatan dengan memantau tingkah laku rangkaian dalam masa nyata.