摘要:一、套接字模型 Winsock以两种模式执行I/O操作:阻塞和非阻塞。 在阻塞模式下,执行 I/O 的 Winsock 调用(如 send 和 recv) 直到操作完成才返回。在非阻塞模式下,Winsock 函数会立即返回。 1)阻塞模式 套接字创建时,默认工作在阻塞模式下。例如,对 recv 函数
阅读全文
摘要:1 #include "../common/InitSock.h" 2 #include <stdio.h> 3 CInitSock initSock; // 初始化Winsock库 4 int main() 5 { 6 // 创建套接字 7 SOCKET sListen = ::socket(AF
阅读全文
摘要:// 网络嗅探器.cpp : 定义控制台应用程序的入口点。 // #include "stdafx.h" #include #include #include #pragma comment(lib, "Advapi32.lib") #pragma comment (lib,"ws2_32.lib") class CInitSock { public: CInitSock(...
阅读全文
摘要:原始套接字套接字类型指定为SOCK_RAWsocket(AF_INET, SOCK_STREAM, 0);创建原始套接字时 第三个参数将成为IP头中协议域的值 发送ICMP报文时 必须由程序自己计算校验和FUNC:将数据以字为单位 加到一个双字中 如果数据长度是奇数 最后一个字节将被扩展到字 最后将
阅读全文