資源簡介
計算機(jī)網(wǎng)絡(luò)實驗
ip報文的截取與分析
linux下編程,寫程序獲取ip報文的 類型,長度,源地址和目的地址等。。。。
代碼片段和文件信息
#include?
#include?
#include?
#include?
#include?
#include?
#include?
int?main()
{
/*套接口捕獲鏈路幀*/
int?i=0;
int?fd;
/*利用類型為SOCK_PACKET的套接口來捕獲鏈路幀*/
fd=socket(AF_INETSOCK_PACKEThtons(0x0003));//函數(shù)返回值的意義?
//AF_INET=ARPA?Internet?protocols即TCP/IP協(xié)議族?
/*設(shè)置網(wǎng)卡的工作方式*/
struct?ifreq?ifr; //?in?‘net/if.h‘
char?*dev=“eth0“;
strcpy(ifr.ifr_namedev);???//?interface?name?
i=ioctl(fdSIOCGIFFLAGS&ifr);//SIOCGIFFLAGS(0x8913)表示取出工作方式
//返回0:成功????-1:出錯
if(i<0)
{
close(fd);
perror(“can‘t?get?flags\n“);
//exit(0);
}
ifr.ifr_flags|=IFF_PROMISC; //在標(biāo)志中加入“混雜“方式
i=ioctl(fdSIOCSIFFLAGS&ifr); //獲取所有
評論
共有 條評論