使用tcpdump查看原始数据包
點(diǎn)擊上方 "后端架構(gòu)師"關(guān)注,?星標(biāo)或置頂一起成長(zhǎng)
后臺(tái)回復(fù)“大禮包”有驚喜禮包!
關(guān)注訂閱號(hào)「后端架構(gòu)師」,收看更多精彩內(nèi)容每日英文
Nothing can't be figured out.The past just can't be reached again. How strong I need to be obsessive in sth.I'm not indifferent to some certain things.The fact is what if I care.
沒(méi)有什么過(guò)不去,只是再也回不去。要有多堅(jiān)強(qiáng),才敢念念不忘。。有些事不是我不在意,而是我在意了又能怎樣。
每日掏心話
微笑可以減輕緊張的情緒和壓力,不管面對(duì)多么憤怒或者沖動(dòng)得人,只要微笑示之,都能坦然以對(duì),微笑一把神奇的鑰匙,可以打開(kāi)別人心靈的窗戶,傳遞心靈的善意。
來(lái)自:jianshu.com/p/e80227d2f3d1 |?責(zé)編:樂(lè)樂(lè)
后端架構(gòu)師(ID:study_tech)第 1059?次推文
往日回顧:萬(wàn)字好文,理解Elasticsearch和面試總結(jié)
??? ?
? ?正文? ?
盡管Snort之類的工具在篩選通過(guò)我們的網(wǎng)絡(luò)而來(lái)的所有內(nèi)容方面做得非常出色,但有時(shí)必須要查看原始數(shù)據(jù)。為此,我們最好的工具是“ tcpdump”。
使用tcpdump的最基本方法是簡(jiǎn)單地發(fā)出以下命令:
tcpdump您可以使用-v選項(xiàng)獲得更多詳細(xì)信息,而-vv可以獲取更多信息。
有用的選項(xiàng)
假設(shè)您已登錄到要管理的遠(yuǎn)程計(jì)算機(jī)。如果您不帶任何選項(xiàng)運(yùn)行“ tcpdump”,則輸出將被來(lái)自您的SSH連接的數(shù)據(jù)包淹沒(méi)。為避免這種情況,只需從輸出中消除端口22:
tcpdump?not?port?22您可以使用許多不同的端口來(lái)執(zhí)行此操作:
tcpdump?not?port?143?and?not?port?25?and?not?port?22如果要進(jìn)行相反的操作,即僅監(jiān)視某個(gè)端口(這對(duì)于調(diào)試網(wǎng)絡(luò)應(yīng)用程序非常有用),則可以執(zhí)行以下操作:
tcpdump?port?143您還可以從網(wǎng)絡(luò)上的特定主機(jī)獲取數(shù)據(jù):
tcpdump?host?hal9000如果您的計(jì)算機(jī)具有多個(gè)網(wǎng)絡(luò)接口,則還可以指定要收聽(tīng)的網(wǎng)絡(luò)接口:
tcpdump?-i?eth1您還可以指定協(xié)議:
tcpdump?udp您可以在/ etc / protocols中找到協(xié)議列表。
保存輸出以備后用
在某些情況下,您可能希望將輸出重定向到文件,以便以后可以詳細(xì)研究它或使用其他程序來(lái)解析輸出。在以下示例中,您仍然可以在將輸出保存到文件時(shí)觀看輸出:
在公眾號(hào)后端架構(gòu)師后臺(tái)回復(fù)“Java”,獲取Java面試題和答案。
tcpdump?-l?|?tee?tcpdump_`date?+%Y%m%e-%k.%M`在上面的示例中,我們可以使用日期和時(shí)間來(lái)標(biāo)識(shí)每個(gè)轉(zhuǎn)儲(chǔ)。在處理一天中特定時(shí)間出現(xiàn)的問(wèn)題時(shí),這可能會(huì)派上用場(chǎng)。
tcpdump還可以選擇將其輸出轉(zhuǎn)儲(chǔ)為二進(jìn)制格式,以便以后讀取。要?jiǎng)?chuàng)建一個(gè)二進(jìn)制文件:
tcpdump?-w?tcpdump_raw_`date?+%Y%m%e-%k.%M`稍后,您可以讓tcpdump使用以下命令讀取文件
tcpdump?-r?tcpdump_raw_YYYMMDD-H.M您也可以使用ethereal程序打開(kāi)原始轉(zhuǎn)儲(chǔ)并解釋它。
tcpdump為我們提供了有關(guān)往返于網(wǎng)絡(luò)的所有數(shù)據(jù)包的信息。
將Ethereal與tcpdump一起使用Ethereal
Ethereal是一種也可以用來(lái)捕獲網(wǎng)絡(luò)數(shù)據(jù)包的工具。安裝后,您可以打開(kāi)您制作的原始轉(zhuǎn)儲(chǔ)文件。
查看正在發(fā)生的事情變得相當(dāng)容易。您可以看到源IP和目標(biāo)IP以及它是什么類型的數(shù)據(jù)包。這很容易,然后即可對(duì)您可能遇到的網(wǎng)絡(luò)問(wèn)題進(jìn)行故障排除并分析可疑行為。只是為了增加一則軼事,當(dāng)我編寫(xiě)本課并解釋自己的轉(zhuǎn)儲(chǔ)時(shí),我在個(gè)人工作站上看到了一些奇怪的活動(dòng)。我?guī)缀趺扛艄潭〞r(shí)間就查詢世界上不同IP的機(jī)器上的端口32772。我為端口32772運(yùn)行了一個(gè)特定的轉(zhuǎn)儲(chǔ),如下所示:
tcpdump?port?32772?-w?dump_32772讀取原始輸出
如您所見(jiàn),即使從tcpdump讀取所謂的“人類可讀”輸出也可能有點(diǎn)神秘。看下面的示例,我只是從轉(zhuǎn)儲(chǔ)中選出一個(gè)隨機(jī)數(shù)據(jù)包:
17:26:22.924493?IP?www.linux.org.www?>?test.linux.org.34365:?P?2845:3739(894)?ack?1624?win?9648?<nop,nop,timestamp?326501459?24374272>我們所擁有的是對(duì)https://www.linux.org/的Web服務(wù)器請(qǐng)求。時(shí)間戳記過(guò)后,您會(huì)在主機(jī)名(即端口80)的末尾注意到.www。這將被發(fā)送到發(fā)出請(qǐng)求的主機(jī)test.linux.org的端口34365。“ P”代表TCP“ oush”功能。這意味著應(yīng)該立即發(fā)送數(shù)據(jù)。在2845:3739(894)之后的數(shù)字中,2845標(biāo)記第一個(gè)數(shù)據(jù)包的八位位組的編號(hào)。數(shù)字3739是數(shù)據(jù)包發(fā)送的最后一個(gè)字節(jié)的數(shù)字加1。數(shù)字894是發(fā)送的數(shù)據(jù)包的長(zhǎng)度。表示“ ack 1624”的部分是“ acknowledge”的TCP術(shù)語(yǔ)-表示該數(shù)據(jù)包已被接受,下一個(gè)預(yù)期的數(shù)據(jù)包編號(hào)為1624。之后,我們看到“ win 9648”發(fā)送主機(jī)正在等待窗口大小為9648個(gè)八位位組的數(shù)據(jù)包。這之后是時(shí)間戳。
現(xiàn)在,如果您認(rèn)為難以解釋,則使用-x選項(xiàng),它將在十六進(jìn)制輸出中包含數(shù)據(jù)包內(nèi)容。
18:12:45.149977?IP?www.linux.org.www?>?test.linux.org.34536:?.?1:1449(1448)? ack?487?win?6432?<nop,nop,timestamp?329284215?27156244>0x0000:??4500?05dc?6a81?4000?4006?493b?c0a8?0006??E...j.@.@.I;....0x0010:??c0a8?0009?0050?86e8?8fa4?1d47?1c33?e3af??.....P.....G.3..0x0020:??8010?1920?b4d9?0000?0101?080a?13a0?7a77??..............zw0x0030:??019e?5f14?4854?5450?2f31?2e31?2032?3030??.._.HTTP/1.1.2000x0040:??204f?4b0d?0a44?6174?653a?2054?6875?2c20??.OK..Date:.Thu,.0x0050:??3135我們可以從輸出中得知這是一個(gè)HTTP請(qǐng)求。至于其余的,它不是人類可讀的,但是我們很容易知道這是一個(gè)合法的數(shù)據(jù)包。使用這種格式的另一個(gè)好處是,即使我們無(wú)法完全解釋此數(shù)據(jù)包的狀況,也可以將其發(fā)送給可能的人。最終,這是未經(jīng)任何過(guò)濾通過(guò)網(wǎng)絡(luò)傳輸?shù)脑紨?shù)據(jù)。
PS:歡迎在留言區(qū)留????下你的觀點(diǎn),一起討論提高。如果今天的文章讓你有新的啟發(fā),歡迎轉(zhuǎn)發(fā)分享給更多人。
歡迎加入后端架構(gòu)師交流群,在后臺(tái)回復(fù)“007”即可。
猜你還想看
阿里、騰訊、百度、華為、京東最新面試題匯集
太贊了,用Java寫(xiě)了一個(gè)類QQ界面聊天小項(xiàng)目,可在線聊天(附源碼)~
基于token的多平臺(tái)身份認(rèn)證架構(gòu)設(shè)計(jì)
阿里云盤(pán)正式上架,速度25MB/s!(附下載鏈接和激活碼)
嘿,你在看嗎?
總結(jié)
以上是生活随笔為你收集整理的使用tcpdump查看原始数据包的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: libgdx 处理加速传感器
- 下一篇: HDU1718--Rank