网络嗅探
windows下不能获取数据链路层的数据 所以拿不到mac地址,RawSocket 编程 要用管理员权限打开 看到这张图,我又想起了期末考试的时候,考了tcp源地址和目的地址,记反了,丢了四分,我现在还记忆深刻。唉~ 1 #include <winsock2.h> 2 #include <ws2tcpip.h> 3 #include <stdio.h> 4 #include <stdlib.h> 5 #define MAX_HOSTNAME_LAN 255 6 #define SIO_RCVALL _WSAIOW(IOC_VENDOR,1) 7 #define MAX_ADDR_LEN 16 8 9 struct ipheader{ 10 unsigned char ip_h1:4; //先存低位,再存高位。这样两个的顺序就反了 11 unsigned char ip_v:4; 12 unsigned char ip_tos; //服务类型 8位 13 unsigned short int ip_len; //ip数据包总长度 14 unsigned short int ip_id; //16位标识 15 unsigned short int ip_off; //标志加偏移量(16)位 16 unsigned char ip_ttl; //8位 生成时间 17 unsigned