成员     长度(Bit)     描述
Version     4      IP头的版本号,目前是IPv4,最新是IPv6
Header Length     4      IP头的长度,若没有特殊选择,IP头总是20字节长
Type of Service     8      服务类型,定义了数据传输的优先级、延迟、吞吐量和可靠性等特性
Total Packet Length     16      IP包的长度,若没有特殊选项,一般为20字节长
Identification     16      IP包标识,主机使用它唯一确定每个发送的数据报
Flag     3      IP数据分割标志
Fragment Offset     13      IP数据分割偏移
Time to Live      8      数据报在网络上的存活时间,每通过一个路由器,该数值减一
Protocol      8      TCP/IP协议类型,比如:ICMP为1,IGMP为2,TCP为6,UDP为17等
Header Checksum     16     头部检验和
Source IP Address      32     源IP地址
Destination IP Address     32      目的IP地址
Other       其他选项
Data        数据

struct iphdr
     {
       unsigned char ihl:4, version:4, tos;
       unsigned short tot_len, id, frag_off;
       unsigned char ttl, protocol;
       unsigned short check;
       unsigned int saddr, daddr;
     };
    
     struct igmphdr
     {
       unsigned char type, code;
       unsigned short cksum;
       struct in_addr group;
     };

typedef struct ethdr
{
     unsigned char   eh_dst[6];
     unsigned char   eh_src[6];
     unsigned short eh_type;
}

struct udphdr
{
     unsigned short souceport;
     unsigned short destport;
     unsigned short length;
     unsigned short checksum;
}

struct tcphdr { unsigned short source;
        unsigned short dest;
        unsigned long seq;
        unsigned long ack_seq;       
        unsigned short doff:4;
        unsigned char flags;
        unsigned short window;       
        unsigned short check;
        unsigned short urg_ptr;
};

转载于:https://www.cnblogs.com/voswin/articles/1271774.html

IP头结构&其他解析相关推荐

  1. IP头、TCP头、UDP头详解以及定义

    一.MAC帧头定义 /*数据帧定义,头14个字节,尾4个字节*/ typedef struct _MAC_FRAME_HEADER {  char m_cDstMacAddress[6];    // ...

  2. IP头,TCP头,UDP头,MAC帧头定义(转)

    源:IP头,TCP头,UDP头,MAC帧头定义 一.MAC帧头定义 /*数据帧定义,头14个字节,尾4个字节*/ typedef struct _MAC_FRAME_HEADER {char m_cD ...

  3. #获得请求来源ip_以太网数据包TCP、IP、ICMP、UDP、ARP协议头结构详解

    以太网首部 目地MAC地址(8字节) 源MAC地址(8字节) 类型(2字节) 1.IP头的结构 版本(4位) 头长度(4位) 服务类型(8位) 封包总长度(16位) 封包标识(16位) 标志(3位) ...

  4. ip tcp udp mpeg4头结构的定义

    IP包头结构浅析 版本号(Version):长度4比特.标识目前采用的IP协议的版本号.一般的值为0100(IPv4),IPv6的值(0110) IP包头长度(Header Length):长度4比特 ...

  5. 【旧文章搬运】Win7可变对象头结构之InfoMask解析

    原文发表于百度空间,2010-08-11 ========================================================================== 对Win ...

  6. 计算机网络—IP头部结构,TCP头部结构,UDP头部结构

    文章目录 IP头部结构 TCP头部结构 UDP头部结构 TCP和UDP的区别 MAC地址.IP地址.端口号 数据传输过程图解 IP头部结构 IP头部结构图如下 注意:一行32bit为4字节,扩展的时候 ...

  7. bitmap 位图 头结构

    转自:http://www.cnblogs.com/lzlsky/archive/2012/08/16/2641698.html 位图BITMAPINFOHEADER 与BITMAPFILEHEADE ...

  8. IP头以及头的各部分含义

    我们来看一下IP的头的结构: IP的头每行有32位,分为版本,头长度,区分服务等十多项内容. 第一个版本,记录IP头为IPv4的头还是IPv6的头.如果是IPv4的头往往为4,如果是IPv6的头则是6 ...

  9. IP 数据报结构和各字段含义

    IP 数据报位于 OSI 七层模型中的网络层,对应与 TCP/IP 四层模型中的网络层(也称网际层).网络层用来处理网络上流动的数据包(网络传输中最小的数据单元),规定了怎样的路径把数据包传输到目标计 ...

最新文章

  1. Windows 系统执行Shell 脚本的方法
  2. Java8的集合:HashSet的实现原理
  3. 七日存留查询(MYSQL)
  4. 模糊数学笔记:六、模糊模型识别-II(择近原则)
  5. node 微信授权 获取openid
  6. Repeater片段
  7. CSS的三种定位,月薪30K
  8. java 字符串转换int_java IPV4字符串转int或long
  9. 金山IPO造富效应:中国最贵程序员群生态
  10. MarkDown 语法手册
  11. java cobar_Cobar-Client 实现策略总结
  12. plist图片列表分割拆分器(修复输出图片错误的BUG)
  13. google翻译出错什么原因?翻译英文页面时中文闪了下就显示“翻译出错请重试”
  14. springboot实战—BMI体脂计算器-服务器端
  15. 《算法之美》-- 读书笔记(4)-- 2019
  16. 陈艾盐:春燕百集访谈节目第二十集
  17. tree.js 酷炫的效果,人脸识别签到思路,html5 3D微信头像自动抽奖代码
  18. 【题解】洛谷P1914 小书童——密码 c++
  19. 如何在 Pandas DataFrame 中插入一行
  20. 大数据中心成立ppt_云计算数据中心 ppt的搜索结果-阿里云开发者社区

热门文章

  1. Spark学习之路 (十五)SparkCore的源码解读(一)启动脚本
  2. Atom-无懈可击的Markdown编辑器
  3. python print 用法
  4. less background url相对路径取不到编译报错问题
  5. 洛谷1020导弹拦截
  6. JS编程建议——7:小心保留字的误用
  7. 使用OKHttp3实现下载(断点续传、显示进度)
  8. java.util.Date和java.sql.Date
  9. SQL SERVER 2012 修改数据库默认位置不立即生效
  10. CSS3无前缀脚本prefixfree.js与Animatable使用