- 11
- 0
- 约2.82万字
- 约 95页
- 2019-10-26 发布于湖北
- 举报
ICMP协议 为了提高 IP 数据报交付成功的机会,在网际层使用了因特网控制报文协议 ICMP (Internet Control Message Protocol)。 ICMP 允许主机或路由器报告差错情况和提供有关异常情况的报告。 ICMP 不是高层协议,而是 IP 层的协议。 ICMP 报文作为 IP 层数据报的数据,加上数据报的首部,组成 IP 数据报发送出去。 ICMP的位置及封装 ICMP 报文的格式 ICMP报文中各字段的作用 报文类型 ICMP 差错报告报文的数据字段的内容 (1)回送请求和回答:由主机/路由器向一特定主机发出ICMP询问,特定主机收到后必须给出ICMP回答报文。 说明: (2)时间戳请求和回答 说明: (3)地址掩码请求和回答 说明: 检验和 C:\Documents and Settings\wy ping 原始套接字的创建 函数格式: // 创建原始套节字 SOCKET sRaw = socket(AF_INET, SOCK_RAW, IPPROTO_ICMP); IPPROTO_ICMP指定使用ICMP Traceroute程序主要代码 typedef struct icmp_hdr { unsigned char icmp_type; // 消息类型 unsigned char icmp_code; // 代码 unsigned short icmp_checksum; // 校验和 // 下面是回显头 unsigned short icmp_id; // 用来惟一标识此请求的ID号,通常设置为进程ID unsigned short icmp_sequence; // 序列号 unsigned long icmp_timestamp; // 时间戳 } ICMP_HDR, *PICMP_HDR; BOOL SetTTL(SOCKET s, int nValue) { int ret = setsockopt(s, IPPROTO_IP, IP_TTL, (char*)nValue, sizeof(nValue)); return ret != SOCKET_ERROR; } BOOL SetTimeout(SOCKET s, int nTime, BOOL bRecv) { int ret = setsockopt(s, SOL_SOCKET, bRecv ? SO_RCVTIMEO : SO_SNDTIMEO, (char*)nTime, sizeof(nTime)); return ret != SOCKET_ERROR; } void main() { char *szDestIp = “0”; //目的地址 char recvBuf[1024] = { 0 }; // 创建用于接收ICMP封包的原始套节字,绑定到本地端口 SOCKET sRaw = socket(AF_INET, SOCK_RAW, IPPROTO_ICMP); sockaddr_in in; in.sin_family = AF_INET; in.sin_port = 0; in.sin_addr.S_un.S_addr = INADDR_ANY; if(bind(sRaw, (sockaddr*)in, sizeof(in)) == SOCKET_ERROR) { printf( bind() failed \n); return; } SetTimeout(sRaw, 5*1000); // 创建用于发送UDP封包的套节字 SOCKET sSend = socket(AF_INET, SOCK_DGRAM, 0); SOCKADDR_IN destAddr; destAddr.sin_family = AF_INET; destAddr.sin_port = htons(22); destAddr.sin_addr.S_un.S_addr = inet_addr(szDestIp); int nTTL = 1; int nRet; ICMP_HDR *pICMPHdr; int nTick; SOCKADDR_IN recvAddr; do { // 设置UDP封包的TTL值 SetTTL(sSend, nTTL); nTick = GetTickCo
您可能关注的文档
最近下载
- 个人健康体检登记表-副本.docx VIP
- 2025年11月《国家安全战略》中文版.pdf VIP
- 2025年高考英语解密之语篇含答案或解析.docx VIP
- 东芝电梯CV335电气原理图纸全图.pdf VIP
- 2023年DAMA CDGA数据治理工程师考试真题试题库资料(含答案).pdf VIP
- CDGA数据治理工程师认证考试2024真题模拟试卷(100题,含答案).pdf VIP
- 2025年广东省高考物理真题卷(含答案与解析).pdf VIP
- 十二年国民基本教育课程纲要数学领域-CIRN国民中小学课程与教学.PDF
- (完整word版)语言学概论.docx VIP
- 刮宫手术患者同意书标准模板.docx VIP
原创力文档

文档评论(0)