PF_PACKET和AF_PACKET的不同

原创 2012年03月22日 10:35:09

首先查看一下源代码
shell#>vim /usr/include/bits/socket.h


line 62 /* Protocol families.  */
line 83 #define PF_PACKET   17  /* Packet family.  */


line 94 /* Address families.  */
line115 #define AF_PACKET   PF_PACKET

看来数值上是相等的,都是 0x0011。不同之处是,一个代表协议族,一个代表地址族。

相关文章推荐

linux协议栈pf_packet相关分析

一:名词解释: 1,BSD socket层: bsd socket是Berkeley套接字应用程序接口(API)包括了一个用C语言写成的应用程序开发库,主要用于实现进程间通讯,在计算机网络通讯方面...

Linux下PF_PACKET的使用,RARP的server和client程序 (转)

http://blog.csdn.net/zhoujunyi/article/details/1649073 1.介绍 在linux中提供了PF_PACKET接口可以操作链路层的数据。 ...

使用PF_PACKET和SOCK_RAW发送自定义type以太网数据包

本文介绍使用PF_PACKET和SOCK_RAW发送自定义type以太网数据包,使用wireshare抓包可以获取到数据包,为Linux内核增加网络协议做铺垫。 先上码: #include #...

PF_PACKET笔记

PF_PACKET 从设备驱动层接收或发送原始数据包, 可用于用户在物理层以上构建自己的通信协议. socket_type 可为:SOCK_RAW或SOCK_DGRAM. 其中S...

链路层套接字PF_PACKET简介

在linux环境中要从链路层(MAC)直接收发数据帧,可以通过libpcap与libnet两个动态库来分别完成收与发的工作。虽然它已被广泛使用,但在要求进行跨平台移植的软件中使用仍然有很多弊端。 这...
  • yong61
  • yong61
  • 2013年01月28日 17:00
  • 1659

使用PF_PACKET和 SOCK_RAW探测网络包

接着上一篇文章:

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

http://blog.sina.com.cn/s/blog_82f2fc28010132og.html sock_raw(注意一定要在root下使用)原始套接字编程可以接收到本机网卡上的数...
  • zxygww
  • zxygww
  • 2013年10月29日 21:21
  • 1589

PF_PACKET 设备层编程接口

一、描述 解释说明: #include #include /* 需要里面的 glibc 版本号 */ #if __GLIBC__ >= 2 && __GLIBC_MINOR >= 1 #inc...

AF_INET和AF_PACKET区别

man 7 ip man 7 packet    Packet  sockets  are used to receive or send raw packets at the device dr...

AF_PACKET

socket的几种里面常见的2种。 ------历史------- AF_NET最早生出,后来有了AF_PACKET。 ----结束历史------- AF_NET常见。 AF_PA...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:PF_PACKET和AF_PACKET的不同
举报原因:
原因补充:

(最多只允许输入30个字)