天天看點

tcpdump dns流量監控

為了看清楚DNS通信的過程,下面我們将從主機1:192.168.0.141上運作host指令以查詢主機www.jd.com對應的IP位址,并使用tcpdump抓取這一過程中LAN上傳輸的以太網幀。

具體的操作過程如下:

# tcpdump -i eth0 -nt -s 500 port domain

然後在另外一個終端中輸入下面的指令:

#host-t A www.jd.com

下圖是host-t A www.jd.com輸出的資料:

tcpdump dns流量監控

下圖是tcpdump監聽到的資料:

tcpdump dns流量監控

其中IP位址192.168.0.1是預設網關的位址。

root@linux_ever:~# route

核心 IP 路由表

目标            網關            子網路遮罩        标志  躍點   引用  使用 接口

default         192.168.0.1     0.0.0.0         UG    0      0        0 eth0

192.168.0.0     *               255.255.255.0   U     1      0        0 eth0

這一次執行tcpdump抓包時,我們使用“port domain”來過濾資料包,表示隻抓取使用domain(域名)服務的資料包,即DNS查詢和應答封包。tcpdump的輸出如下:

IP 192.168.0.141.53511 > 192.168.0.1.53: 65362+ A? www.jd.com. (28)

IP 192.168.0.1.53 > 192.168.0.141.53511: 65362 2/0/0 CNAME www.jdcdn.com., A 14.152.71.1 (68)

這兩個資料包開始的“IP”指出,它們後面的内容描述的是IP資料報。tcpdump以“IP位址.端口号”的形式來描述通信的某一端;以“>”表示資料傳輸的方向,“>”前面是源端,後面是目的端。可見,第一個資料包是測試主機1(IP位址是192.168.0.141)向其首選DNS伺服器(IP位址是192.168.0.1.53)發送的DNS查詢封包(目标端口53是DNS服務使用的端口),第二個資料包是伺服器回報的DNS應答封包。

本文轉自張昺華-sky部落格園部落格,原文連結:http://www.cnblogs.com/bonelee/p/7966914.html,如需轉載請自行聯系原作者

繼續閱讀