前言
本篇博客博主将详解IP协议中的各类知识点,坐好板凳发车啦~
一.IP协议格式
1.1 4位版本号(version)
指定IP协议的版本,对于IPv4来说,就是4。
1.2 4位头部长度(header length)
IP头部的长度是多少个32bit,也就是length*4的字节数。4bit表示最大的数字是15,因此IP头部最大长度是60字节。
1.3 8位服务类型(Type Of Service)
3位优先权字段(已经弃用),4位TOS字段,和1位保留字段(必须置为0);
4位TOS分别表示:最小延时,最大吞吐量,最高可靠性,最小成本。这四者相互冲突,只能选择一个。对于ssh/telnet这样的应用程序,最小延时比较重要,对于ftp这样的程序,最大吞吐量比较重要。
1.4 16位总长度(total length)
IP数据报整体占多少个字节
1.5 16位标识(id)
唯一的标识主机发送的报文,如果IP报文在数据链路层被分片了,那么每个片里面的这个id都是相同的。
1.6 3位标志字段
第一位保留(保留的意思是现在不用,但是还没想好以后用不用)
第二位置为1表示禁止分片,这时候如果报文长度超过MTU,IP模版就会丢弃报文
第三位表示更多分片,如果分片了的话,最后一个分片置为0,其他的是1,。类似于一个结束标记。
1.7 13位分片偏移(framegament offset)
是分片相对于原始IP报文开始处的偏移
其实就是在表示当前分片在原报文中处在哪个位置,实际偏移的字节数是这个值*8得到的。因此,除了最后一个报文之外,其他报文的长度必须是8的整数倍(否者报文就不连续了)。
1.8 8位生存时间(time to live TTL)
数据报达到目的地的最大报文跳数。一般起始是128,有的系统也是255。每次经过一个路由,TTL减等于1,一直减到0还没有到达,那么就丢弃了。这个字段主要是用来防止出现路由循环。
1.9 8位协议
表示上层协议(传输层)的类型(用的是哪个协议)
1.10 16位头部校验和
使用CRC进行校验,来鉴别头部是否损坏
1.11 32位源地址和32位目标地址
表示发送端和接收端
1.12 选项字段
不定长,最多40字节
二.IPv4
2.1概念
IP地址(Internet Protocol Address)是指互联网协议地址,又译为网际协议地址。
2.2作用
IP地址是IP协议提供的一种统一的地址格式,它为互联网上的每一个网络和每一台主机分配一个逻辑地址,依次来屏蔽物理地址的差异。
2.3格式
IP协议是一个32位的二进制数,通常被分割为4个“8位二进制数”(也就是4个字节),如:01100100.00000100.00000101.00000110
通常用“点分十进制”的方式来表示,即a.b.c.d的形式(abcd都是0~255之间的十进制整数)如:100.4.5.6。
2.4分配置方式
把IP地址分为两大类
外网IP/公网IP
内网IP/局域网IP,约定10.*,172.16.*~172.31.*,192.168.*。
2.4.1动态分配
设备上网的时候才分配一个IP地址,不上网的时候收回IP地址,每一个IP都是广域网上的地址,每台主机都可以通过IP在网络上相互访问
这种方案并没有增加IP地址的数量,只是提高了利用效率而已,治标不治本。
2.4.2NAT机制
不再强求每台主机都有独立的公网IP地址
约定,每个局域网的IP地址不能重复;
约定,不同局域网的IP地址可以重复;
为一个局域网分配置一个外网IP作为局域网内所有机器访问互联网的对外IP地址,由路由器再给内网分配IP地址,这样的一个IP地址就可以代替很多机器,从而节省了IP资源。
2.4.3IPv6
IPv4是用4个字节,也就是32位来表示IP地址,约等于42亿
IPv6是用16个字节,也就是128位来表示IP地址,约等于42亿*42亿*42亿*42亿。
注:IPv4和IPv6不兼容。
三.IP地址规则-地址管理
3.1组成
IP地址分为两个部分,网络号和主机号
网络号:标识网段,标识局域网,保证相互连接的两个网段具有不同的标识;
主机号:标识主机,同一网段中,主机之间具有相同的网络号,但是必须具有不同的主机号,在一个局域网中的网络号可以相同,但主机号必须不同;
路由器中的WAN口连接上一层网络,LAN口连接本局域网中的主机。
3.2分类
历史悠久的分类方法,一种划分网络号和主机号的方案,把所有IP地址分为五类:
3.3子网掩码
3.3.1表示方式
也是32位,左边都用1来表示,用来确定网络号,不会1和0混着表示,有多少个1,就表示IP地址左侧有多少位是网络号
IP地址与子网掩码进行接位与运算,得到的结果就是网络号。
3.3.2计算方式
四.路由选择
尾语
这篇博客到这里就结束啦,希望可以给大家带来帮助~~