一、實(shí)現(xiàn) Sniffer 的基本功能。 Sniffer 是一種用于監(jiān)測網(wǎng)絡(luò)性能、使用情況的工具。
能夠指定需要偵聽的網(wǎng)卡(考慮一臺機(jī)器上多張網(wǎng)卡的情況)
能夠偵聽所有進(jìn)出本主機(jī)的數(shù)據(jù)包,解析顯示數(shù)據(jù)包( ICMP 、 IP 、 TCP 、 UDP 等)各個字段。比如,對 IP 頭而言,需要顯示 版本、頭長度、服務(wù)類型、數(shù)據(jù)包長度、標(biāo)識、 DF/MF 標(biāo)志、段內(nèi)偏移、生存期、協(xié)議類型、源目的 IP 地址、選項(xiàng)內(nèi)容、數(shù)據(jù)內(nèi)容。要求顯示數(shù)據(jù)的實(shí)際含義(例如用 asciI 表示);
能夠偵聽來源于指定 IP 地址的數(shù)據(jù)包,能夠偵聽指定目的 IP 地址的數(shù)據(jù)包,顯示接收到的 TCP 和 UDP 數(shù)據(jù)包的全部實(shí)際內(nèi)容。需要考慮一個 TCP 或 UDP 包劃分為多個 IP 包傳輸?shù)那闆r;
能夠根據(jù)指定的協(xié)議類型來過慮包,例如,只偵聽 ICMP 包,或只偵聽 ICMP 和 UDP 包。
功能驗(yàn)證手段:在運(yùn)行 Sniffer 的同時,執(zhí)行標(biāo)準(zhǔn)的 Ping 、 Telnet 和瀏覽網(wǎng)頁等操作,檢查 Sniffier 能否返回預(yù)期的結(jié)果。
Windows 平臺上可以用 winpcap 類庫;在 linux 平臺上可以使用 libpcap 類庫。也可以調(diào)用 Sockets 等有關(guān)的網(wǎng)絡(luò)類庫。
標(biāo)簽:
Sniffer
61548
網(wǎng)卡
監(jiān)測網(wǎng)絡(luò)
上傳時間:
2017-09-09
上傳用戶:siguazgb