请问IPPROTO_IP和IPPROTO_RAW 区别是什么啊?

VC/MFC > 网络编程 [问题点数:50分,结帖人CSDN]
等级
本版专家分:71
结帖率 100%
等级
本版专家分:3658
等级
本版专家分:30266
勋章
Blank
黄花 2006年2月 C/C++大版内专家分月排行榜第二
等级
本版专家分:188320
勋章
Blank
进士 2006年 总版技术专家分年内排行榜第五
2004年 总版技术专家分年内排行榜第八
Blank
银牌 2006年10月 总版技术专家分月排行榜第二
2006年9月 总版技术专家分月排行榜第二
Blank
铜牌 2006年5月 总版技术专家分月排行榜第三
Blank
微软MVP 2006年1月 荣获微软MVP称号
2008年1月 荣获微软MVP称号
2007年1月 荣获微软MVP称号
hustdaiwei

等级:

IPPROTO_IP , IPPROTO_RAW

对于socket(AF_INET, SOCK_RAW, IPPROTO_IP),其原型为 int socket (int domain, int type, int protocol); 1 参数protocol用来指明所要接收的协议包,如果是象IPPROTO_TCP(6)这种非0、非255的协议,当操作系统内核...

【转载】IPPROTO_RAW & IPPROTO_IP

http://blog.csdn.net/zimu2702/article/details/7185917对于socket(AF_INET, SOCK_RAW, IPPROTO_IP),其原型为int socket (int domain, int type, int protocol); 1 参数protocol用来指明所要接收的协议包,如果是...

raw_socket(原始套接字)以及普通socket使用终极总结

一、传输层socket(四层socket,普通socket) 可参考本人以下博客: Windows Socket编程之UDP实现大文件的传输:http://blog.csdn.net/luchengtao11/article/details/71016222 Windows Socket编程之TCP实现大文件...

socket(AF_INET,SOCK_RAW,IPPROTO_IP)的意思

这是winsock2.h里的定义。 /* * Protocols */ #define IPPROTO_IP 0 /* dummy for IP */ #define IPPROTO_HOPOPTS 0 /* IPv6 hop-by-hop options */ #define I

IPPROTO_TCP 的数值

int socket(int domain, int type, int protocol); 的第三个参数 这里指使用tcp协议 根据 include/winsock2.h文件 ...#define IPPROTO_IP 0 /* dummy for IP */ #define IPPROTO_ICMP 1 /* control me

socket(AF_INET, SOCK_RAW, IPPROTO_IP)的意思

这是include/linux/in.h里的定义: /* Standard well-defined IP protocols....IPPROTO_IP = 0, /* Dummy protocol for TCP */ IPPROTO_ICMP = 1, /* Internet Control Message Protocol */ IPPROTO_IGM

创建socket函数的第三个参数的意义

在实际编程中,第三个参数用的最多的通常为0或者IPPROTO_TCP,这是有区别的,下面对此参数做一点释解。 这篇文章转自http://blog.chinaunix.net/uid-10298232-id-2964533.html 这是include/linux/in.h里的...

IP承载的协议

enum { IPPROTO_IP = 0, /* Dummy protocol for TCP. */ #define IPPROTO_IP IPPROTO_IP IPPROTO_HOPOPTS = 0, /* IPv6 Hop-by-Hop options. */ #define IPPROTO_HOPOPTS IPPROTO_HOPOPTS IPPROTO_ICMP = 1, /* I

socket(int family, int type, int protocol)各参数解释

family: /* Supported address families. */ #define AF_UNSPEC 0 #define AF_UNIX 1 /* Unix domain sockets */ #define AF_LOCAL 1 /* POSIX name for AF_UNIX */ #define AF_INET 2 /* Internet IP Proto

error: ‘IPPROTO_RAW’ undeclared (first use in this function)

出现此错误的原因是:我没有定义IPPROTO_RAW; 我查了下资料。  int rawsock = socket(AF_INET, SOCK_RAW, protocol);  注意:只有超级用户才有权利创建套接字,否则函数返回-1,并设置errno为EACCES。  ...

Socket详解-socket建立

Socket建立   为了建立Socket,程序可以调用Socket函数,该函数返回一个类似于文件描述符的句柄。socket函数原型为: ...通常为PF_INET,表示互联网协议族(TCP/IP协议族);或者PF_PACKET协议

浅谈原始套接字 SOCK_RAW 的内幕及其应用(port scan, packet sniffer, syn flood, icmp flood)

一、SOCK_RAW 内幕 首先在讲SOCK_RAW 之前,先来看创建socket 的函数: int socket(int domain, int type, int protocol); domain :指定通信协议族(protocol family/address)  C++ Code  1 2 3 4 5 6 7...

#Linux#进程间通信# 套接字(socket)

套接字(socket)是一种通信...也因为这样,套接字明确地将客 户端服务器区分开来。 一个套接口可以看作是进程间通信的端点(endpoint),每个套接口的名字都是唯一的(唯一的含义是不言而喻的),其他进程可以发...

Linux Raw Socket使用总结

STREAM创建的TCP socket,SOCK_DGRAM创建的UDP socket)都只能收发应用层的数据,出于业务应用的需要,可能需要获取IP层甚至是以太层的数据,这就需要用到socket接口中另一种更加强大的类型RAW socket。 使用SOCK_...

使用 网卡混杂模式 编写网络抓包程序

使用 网卡混杂模式 编写网络抓包程序 ... 都说在winsock2中支持抓包功能了,在网上找了个例子,修改一下,在windows xp + VC2003 下测试通过。不知道能不能做成QQ消息嗅探工具,试验中 ...#pragma

Linux raw socket

Linux raw socket==========================================1. 为什么要详细了解raw socket呢? 其实很早以前就对原始套接字有了一定的了解,那时候还做过一个小的抓包程序,当时以为对原始套接字很熟悉了,但是...

调用IPPROTO_RAW发送后,如果源IP不是本地IP,服务端收不到对应的包,不知为什么

调用IPPROTO_RAW发送后,如果源IP不是本地IP,服务端收不到对应的包,不知为什么? 如果源IP与本地IP相同,对端网络可以收到。 如果源IP与本地IP不同,对端网络收不到包。 使用函数:golang syscall.Socket...

原始套接字 IP_HDRINCL

原始套接字可以访问ICMPICMP等协议包,可以读写内核不处理的IP数据包。可以创建自定义的IP数据包首部。一句话,使用原始套接字可以 编写基于IP协议的通讯程序。 1.创建原始套接字具体格式如下:int sockfd;...

MFC之socket创建失败

今天看了socket编程,写了段代码,模拟的ping命令,但是过程很曲折。 先写下socket的原型: SOCKET socket { int af, int type, protocol }; 如果成功,则返回套接...SOCK_STREAM:字节流套接字,提供有序的

sd = WSASocket(AF_INET, SOCK_RAW, IPPROTO_ICMP, 0, 0, 0);

//初试化RAW Socket, 设置ttl, 初试化dest // 返回值 表失败 int setup_for_ping(char* host, int ttl, SOCKET& sd, sockaddr_in& dest) { // Create the socket sd = WSASocket(AF_INET, SOCK_RAW, IPPROTO_ICMP...

linux下RAW SOCKET

raw socket,即原始套接字,可以接收本机网卡上的数据帧或者数据包,对与监听网络的流量分析是很有作用的.一共可以有3种方式创建这种socket 1.socket(AF_INET, SOCK_RAW, IPPROTO_TCP|IPPROTO_UDP|IPPROTO_ICMP)...

Linux——原始套接字

1096746.htmlhttp://linux.chinaitlab.com/c/389513.html 第一条:概述使用原始套接字(raw socket)可以发送接收到主机网卡上的数据帧或者数据包,简而言之,可以编写基于IP协议的程序。man中指出:Raw sockets ...

网络编程原始套接字SOCKET_RAW

SOCKET_STREAM 流式套接字  ...IPPROTO_IP IP协议  IPPROTO_ICMP INTERNET控制消息协议,配合原始套接字可以实现ping的功能  IPPROTO_IGMP INTERNET 网关服务协议,在多播中用到 在AF_INET地址族下

第十章 原始套接口 ----------------------第一节 创建原始套接口

注意对于Windows 95, Windows 98, and Windows Me来说,在Winsock里没有目录条目的IP有SOCK_RAW套接口类型,可是,这不能防碍你创建这种套接口。它的意思是你不通过使用一个WSAPROTOCOL_INFO结构来创建一个原始套接口...

socket()的一些参数

原文链接:...一共可以有3种方式创建这种socket 1.socket(AF_INET, SOCK_RAW, IPPROTO_TCP|IPPROTO_UDP|IPPROTO_ICMP)发送接收ip数据包,不能用IPPROTO_IP,因

linux中提供了PF_PACKET接口可以操作链路层的数据

sock_raw(注意一定要在root下使用)原始套接字编程可以接收到本机网卡上的数据帧或者数据包,对于监听网络的流量分析是很有作用的....   ...1.socket(AF_INET, SOCK_RAW, IPPROTO_TCP|IPPROTO_U

原始套接字SOCK_RAW

实际上,我们常用的网络编程都是在应用层的报文的收发操作,也就是大多数程序员接触到的流式套接字(SOCK_STREAM)数据包式套接字(SOCK_DGRAM)。而这些数据包都是由系统提供的协议栈实现,用户只需要填充应用层报文...

C/C++ Windows API——Udp

// UdpDemo.cpp : Defines the entry point for the console application. //#include "stdafx.h" #include #include <WS2tcpip.h>//inet_ntop, inet_pton#pragma comment(lib, "WS2_32.lib") ...

addrinfo的结构体

struct addrinfo { int ai_flags; int ai_family; //AF_INET,AF_INET6,UNIX etc int ai_socktype; //STREAM,DATAGRAM,RAW int ai_protocol; //IPPROTO_IP, IPPROTO_IPV4, IPPROTO_IPV6 etc size_t ai_addr

嵌入式 IPPROTO_IP

对于socket(AF_INET, SOCK_RAW, IPPROTO_IP),其原型为 int socket (int domain, int type, int protocol); 1 参数protocol用来指明所要接收的协议包,如果是象IPPROTO_TCP(6)这种非0、非255的协议,当操作系统内核...

相关热词 c# 指定打印机名称 c# 在调试窗口输出信息 c# 点对点即时通讯 c#判断数字是否为空 c# 小端 浮点数 c# typeof返回值 c#初始化字符串 c#dataset用法 c#实现凝聚层次聚类 c#最简单线程