Linux系統下網路分析例解

來源:互聯網
上載者:User
文/楊鵬

  Linux作為網路伺服器,特別是作為路由器和網關時,資料的採集和分析是必不可少的。所以,今天我們就來看看Linux中強大的網路資料擷取分析工具——TcpDump。

  顧名思義,TcpDump可以將網路中傳送的資料包的“頭”完全截獲下來提供分析。它支援針對網路層、協議、主機、網路或連接埠的過濾,並提供and、or、not等邏輯語句來協助你去掉無用的資訊。

  和Linux終端狀態下的其他軟體一樣,TcpDump也是依靠參數來工作,本文將結合執行個體來說明。

  資料過濾

  不帶任何參數的TcpDump將搜尋系統中所有的網路介面,並顯示它截獲的所有資料,這些資料對我們不一定全都需要,而且資料太多不利於分析。所以,我們應當先想好需要哪些資料,TcpDump提供以下參數供我們選擇資料:

  -b在資料-鏈路層上選擇協議,包括ip、arp、rarp、ipx都是這一層的。

  例如:tcpdump -b arp將只顯示網路中的arp即地址轉換協議資訊。

  -i選擇過濾的網路介面,如果是作為路由器至少有兩個網路介面,通過這個選項,就可以只過濾指定的介面上通過的資料。例如:

  tcpdump -i eth0隻顯示通過eth0介面上的所有前序。

  src、dst、port、host、net、ether、gateway這幾個選項又分別包含src、dst、port、host、net、ehost等附加選項。他們用來分辨資料包的來源和去向,src host 192.168.0.1指定源主機IP地址是192.168.0.1,dst net 192.168.0.0/24指定目標是網路192.168.0.0。以此類推,host是與其指定主機相關無論它是源還是目的,net是與其指定網路相關的,ether後面跟的不是IP地址而是物理地址,而gateway則用於網關主機。可能有點複雜,看下面例子就知道了:

  tcpdump src host 192.168.0.1 and dst net 192.168.0.0/24

  過濾的是源主機為192.168.0.1與目的網路為192.168.0.0的前序。

  tcpdump ether src 00:50:04:BA:9B and dst……

  過濾源主機物理地址為XXX的前序(為什麼ether src後面沒有host或者net?物理地址當然不可能有網路嘍)。

  Tcpdump src host 192.168.0.1 and dst port not telnet

  過濾源主機192.168.0.1和目的連接埠不是telnet的前序。

  ip icmp arp rarp和tcp、udp、icmp這些選項等都要放到第一個參數的位置,用來過濾資料報的類型。例如:

  tcpdump ip src……

  只過濾資料-鏈路層上的IP前序。

  tcpdump udp and src host 192.168.0.1

  只過濾源主機192.168.0.1的所有udp前序。

  資料顯示/輸入輸出

  TcpDump提供了足夠的參數來讓我們選擇如何處理得到的資料,如下所示:

  -l可以將資料重新導向。

  如tcpdump -l>tcpcap.txt將得到的資料存入tcpcap.txt檔案中。

  -n不進行IP地址到主機名稱的轉換。

  如果不使用這一項,當系統中存在某一主機的主機名稱時,TcpDump會把IP地址轉換為主機名稱顯示,就像這樣:eth0<ntc9.1165>router.domain.net.telnet,使用-n後變成了:eth0<192.168.0.9.1165>192.168.0.1.telnet。

  -nn不進行連接埠名稱的轉換。

  上面這條資訊使用-nn後就變成了:eth0<ntc9.1165>router.domain.net.23。

  -N不列印出預設的網域名稱。

  還是這條資訊-N後就是:eth0<ntc9.1165>router.telnet。

  -O不進行符合代碼的最佳化。

  -t不列印UNIX時間戳記,也就是不顯示時間。

  -tt列印原始的、未格式化過的時間。

  -v詳細的輸出,也就比普通的多了個TTL和服務類型。

  好了,說了這麼多,是不是覺得TcpDump這個工具很好?它還有好多功能限於篇幅不能一一介紹,多讀一讀“協助”都會有很大的收穫,這也算是進入Linux世界的一條捷徑吧。

全文:賽迪網

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.