由于本人使用的是XP SP3版本,此版本关闭了发送原始套接字的功能,所以没有最后调试成功。
有WIN2000的朋友能够帮忙调试的话请把调试结果高诉我,调试时可用科来软件嗅探数据包。
.386
.model flat, stdcall
option casemap :none
include windows.inc
include user32.inc
includelib user32.lib
include kernel32.inc
includelib kernel32.lib
include wsock32.inc
includelib wsock32.lib
;;IP数据包头部结构定义
ip_head struct
h_lenver db ? ;4位IP版本号+4位首部长度
TOS db ? ;8位服务类型
ip_len dw ? ;16位IP+TCP数据包总长度
ident dw ? ;16位标识
frag_and_flags dw ? ;3位分片标志+13位分片偏移
ttl db ? ;8位生存时间
proto1 db ? ;8位协议类型
checksum dw ? ;16位校验和
sourceIP dd ? ;32位源IP
destIP dd ? ;32位目的IP
ip_h