人妖在线一区,国产日韩欧美一区二区综合在线,国产啪精品视频网站免费,欧美内射深插日本少妇

新聞動(dòng)態(tài)

Linux中的tcpdump命令示例詳解

發(fā)布日期:2022-03-14 09:58 | 文章來源:gibhub


用簡單的話來定義tcpdump,就是:dump the traffic on a network,根據(jù)使用者的定義對網(wǎng)絡(luò)上的數(shù)據(jù)包進(jìn)行截獲的包分析工具。 tcpdump可以將網(wǎng)絡(luò)中傳送的數(shù)據(jù)包的“頭”完全截獲下來提供分析。它支持針對網(wǎng)絡(luò)層、協(xié)議、主機(jī)、網(wǎng)絡(luò)或端口的過濾,并提供and、or、not等邏輯語句來幫助你去掉無用的信息。

說到這個(gè)tcpdump命令,就不得不提自己參加的中國移動(dòng)內(nèi)蒙古分公司第三代CRM系統(tǒng)的開發(fā)與實(shí)施。如果沒有記錯(cuò)的話,那應(yīng)該是2016年,自己單獨(dú)負(fù)責(zé)整個(gè)10086客服系統(tǒng)自助渠道的整體改造工作;在系統(tǒng)壓測階段,調(diào)用接口平臺時(shí),總是出現(xiàn)超時(shí)現(xiàn)象。后來這個(gè)問題越來越嚴(yán)重,同時(shí)短廳渠道、CBOSS渠道也反饋有這個(gè)問題,這時(shí)這個(gè)問題就引起了大BOSS的注意,然后就是各方專家會診。在這種大型項(xiàng)目中,專家會診,都有一個(gè)特色,就是專家指揮,小弟干活,而我那個(gè)時(shí)候,就是那個(gè)小弟。

好吧,專家發(fā)話了,抓包先。這就開始了我的抓包工作,開始了我對tcpdump的全面理解。

首先需要說的是,這個(gè)tcpdump是一個(gè)非常功能強(qiáng)大的命令,功能強(qiáng)大,那也就意味著這個(gè)命令的使用是非常復(fù)雜的,也就是說,我接下來整理的內(nèi)容也會是非常多的。如果你想去掌握整個(gè)tcpdump命令的話,就需要你稍微有點(diǎn)耐心去把整篇文章讀完。OK,Let's go!

命令簡介

tcpdump是一款強(qiáng)大的網(wǎng)絡(luò)抓包工具,運(yùn)行在Linux平臺上。熟悉tcpdump的使用能夠幫助我們分析、調(diào)試網(wǎng)絡(luò)數(shù)據(jù)。但是要想很好地掌握tcpdump, 就必須對網(wǎng)絡(luò)報(bào)文(TCP/IP協(xié)議)有一定的了解。不過對于簡單的使用來說,只要有網(wǎng)絡(luò)基礎(chǔ)概念就行了。

作為互聯(lián)網(wǎng)上經(jīng)典的的系統(tǒng)管理員必備工具,tcpdump以其強(qiáng)大的功能,靈活的截取策略,成為每個(gè)高級的系統(tǒng)管理員分析網(wǎng)絡(luò),排查問題等所必備的工具之一。在實(shí)際工作中,需要以root權(quán)限去執(zhí)行該命令。

tcpdump是一個(gè)很復(fù)雜的命令,想了解它的方方面面非常不易,也不值得推薦,能夠使用它解決日常工作中的問題才是關(guān)鍵,所以,以下的總結(jié)我將更側(cè)重于從實(shí)際工作出發(fā),整理一些實(shí)際工作中經(jīng)常用到的用法,對于一些冷門用法,我這里基本不會涉及,如果日后在工作中用到了,我這里也會更新進(jìn)來。

命令詳解
下面就先對tcpdump一些常用的選項(xiàng)進(jìn)行總結(jié)。

  • -s number:tcpdump默認(rèn)只會截取前96字節(jié)的內(nèi)容,要想截取所有的報(bào)文內(nèi)容,就需要使用這個(gè)選項(xiàng),其中number是需要截取的報(bào)文字節(jié)數(shù),如果是0的話,表示截取報(bào)文全部內(nèi)容;
  • -nn:表示不解析域名,直接顯示IP,在netstat命令中,也有這個(gè)選項(xiàng);
  • -X:同時(shí)使用hex和ascii顯示報(bào)文內(nèi)容;
  • -S:顯示絕對的序列號(sequence number),而不是相對編號;
  • -i:指定監(jiān)聽的網(wǎng)卡,如果為-i any則表示監(jiān)聽所有的網(wǎng)卡;
  • -v,-vv,-vvv:顯示更多的詳細(xì)信息;
  • -c number:表示截取number個(gè)報(bào)文,然后結(jié)束;
  • -w:將監(jiān)聽到的數(shù)據(jù)包寫入文件中保存,而并不分析和打印出來;
  • -A:只使用ascii打印報(bào)文的全部數(shù)據(jù),不要和-X選項(xiàng)一起使用。截取HTTP請求的時(shí)候可以用sudo tcpdump -nSA port 80

雖然tcpdump命令的選項(xiàng)特別多,但是常用的選項(xiàng)也就上面那幾個(gè),我這里將更多的把注意力放在使用實(shí)例上,通過使用實(shí)例來學(xué)習(xí)tcpdump這個(gè)命令。

過濾器

先進(jìn)行使用實(shí)例詳解時(shí),有必要先掌握tcpdump一些基本的使用理論知識,先來說說過濾器。

在服務(wù)器上的網(wǎng)絡(luò)報(bào)文是異常的多,很多時(shí)候我們只關(guān)注和具體問題有關(guān)的數(shù)據(jù)報(bào)文,而這些有用的報(bào)文只占到很小的一部分,為了不讓我們在報(bào)文的海洋里迷失自己,我們就非常有必要學(xué)習(xí)一下tcpdump提供的靈活而且功能強(qiáng)大的過濾器。

過濾器也可以簡單地分為三類:type,dir和proto。

type:主要用來區(qū)分過濾報(bào)文源類型,主要由host主機(jī)報(bào)文,net網(wǎng)段報(bào)文和port指定端口的報(bào)文組成;

dir:只過濾報(bào)文的源地址和目的地址,主要包括src源地址和dst目的地址;

proto:只過濾報(bào)文的協(xié)議類型,支持tcp,udp和icmp等;使用的時(shí)候可以省略proto關(guān)鍵字:

  • tcpdump -i eth1 arp
  • tcpdump -i eth1 ip
  • tcpdump -i eth1 tcp
  • tcpdump -i eth1 udp
  • tcpdump -i eth1 icmp

在我們使用tcpdump命令時(shí)是離不開這些過濾器的。

條件組合

在茫茫網(wǎng)絡(luò)中,想要找到那個(gè)你想要的網(wǎng)絡(luò)包,還是有一定難度的。為了抓住那個(gè)我們想要的網(wǎng)絡(luò)包,在我們抓包命令中,包含越多的限制條件,抓的無關(guān)包就會越少,所以在進(jìn)行抓包時(shí),我們可以使用“與”(and、&&)、“或”(or、||)和“非”(not、!)來將多個(gè)條件組合起來。這對我們需要基于某些條件來分析網(wǎng)絡(luò)包是非常有用的。

使用實(shí)例

命令:tcpdump -i eth1

說明:監(jiān)視指定網(wǎng)絡(luò)接口的數(shù)據(jù)包

命令:tcpdump host 210.27.48.3

說明:截獲210.27.48.3主機(jī)收到的和發(fā)出的所有數(shù)據(jù)包

命令:tcpdump host 210.27.48.4 and (210.27.48.5 or 210.27.48.6)

說明:截獲210.27.48.3主機(jī)和210.27.48.5或者210.27.48.6主機(jī)進(jìn)行通信的所有數(shù)據(jù)包

命令:tcpdump net 192.168.1.0/24

說明:截獲192.168.1.0/24整個(gè)網(wǎng)絡(luò)的數(shù)據(jù)包

命令:tcpdump -i eth0 src host 210.27.48.3

說明:監(jiān)視eth0網(wǎng)卡上源地址是210.27.48.3的所有網(wǎng)絡(luò)包

命令:tcpdump -i eth0 dst host 210.27.48.3

說明:監(jiān)視eth0網(wǎng)卡上目的地址是210.27.48.3的所有網(wǎng)絡(luò)包

命令:tcpdump tcp port 23 and host 210.27.48.3

說明:獲取主機(jī)210.27.48.3上端口為23的應(yīng)用發(fā)出和接收的所有TCP協(xié)議包

命令:tcpdump udp port 123

說明:獲取本機(jī)123端口發(fā)出和接收的所有UDP協(xié)議包

命令:tcpdump src host 10.126.1.222 and dst net 10.126.1.0/24

說明:截獲源主地址為10.126.1.222,目的地址是10.126.1.0/24整個(gè)網(wǎng)絡(luò)

命令:tcpdump -i eth0 -s0 -G 60 -Z root -w %Y_%m%d_%H%M_%S.pcap

說明:抓取報(bào)文后按照指定時(shí)間間隔保存;-G選項(xiàng)后面接時(shí)間,單位為秒;上述命令就是每隔60秒生存一個(gè)文件

命令:tcpdump -i eth0 -s0 -C 1 -Z root -w eth0Packet.pcap

說明:抓取報(bào)文后按照指定報(bào)文大小保存;-C選項(xiàng)后接文件大小,單位為MB;上述命令就是每抓包文件達(dá)到1MB時(shí)就使用一個(gè)新的文件保存新抓的報(bào)文

上面說到tcpdump抓包后生成對應(yīng)的文件,那這個(gè)文件如何進(jìn)行分析呢?是的,有這么樣一個(gè)叫做“Wireshark”的軟件,可以非常完美的和tcpdump進(jìn)行結(jié)合,提供可視化的分析界面;有興趣的話可以去學(xué)習(xí)一下,后續(xù)如果有時(shí)間,我也整理一個(gè)“Wireshark”入門系列。

總結(jié)

拖的時(shí)間比較長,終于整理完畢!當(dāng)然了,tcpdump這么復(fù)雜的一個(gè)命令,我這里并沒有進(jìn)行非常全面的整理,但是我這里整理的內(nèi)容絕對不會影響你在工作中使用tcpdump這個(gè)命令。還是那個(gè)“二八定律”,復(fù)雜的命令,常用的功能也就占用20%,其余80%都是比較偏僻生冷的功能,或者說工作中很少會用到的功能。

好了,以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,如果有疑問大家可以留言交流,謝謝大家對本站的支持。

版權(quán)聲明:本站文章來源標(biāo)注為YINGSOO的內(nèi)容版權(quán)均為本站所有,歡迎引用、轉(zhuǎn)載,請保持原文完整并注明來源及原文鏈接。禁止復(fù)制或仿造本網(wǎng)站,禁止在非www.sddonglingsh.com所屬的服務(wù)器上建立鏡像,否則將依法追究法律責(zé)任。本站部分內(nèi)容來源于網(wǎng)友推薦、互聯(lián)網(wǎng)收集整理而來,僅供學(xué)習(xí)參考,不代表本站立場,如有內(nèi)容涉嫌侵權(quán),請聯(lián)系alex-e#qq.com處理。

相關(guān)文章

實(shí)時(shí)開通

自選配置、實(shí)時(shí)開通

免備案

全球線路精選!

全天候客戶服務(wù)

7x24全年不間斷在線

專屬顧問服務(wù)

1對1客戶咨詢顧問

在線
客服

在線客服:7*24小時(shí)在線

客服
熱線

400-630-3752
7*24小時(shí)客服服務(wù)熱線

關(guān)注
微信

關(guān)注官方微信
頂部