码迷,mamicode.com
首页 > 其他好文 > 详细

IP分类

时间:2020-07-28 10:27:08      阅读:98      评论:0      收藏:0      [点我收藏+]

标签:ip协议   strong   系统   time   默认   否则   udp   dhcp   处理   

屏幕快照 2020-07-27 17.04.28技术图片

  • 版本:占4位,指 IP 协议的版本目前的IP协议版本号为4
  • 首部长度:占4位,可表示的最大数值是15个单位,一个单位为4字节,因此IP 的首部长度的最大值是60字节
  • 区分服务:占8位,用来获得更好的服务,在旧标准中叫做服务类型,但实际上一直未被使用过.后改名为区分服务.只有在使用区分服务(DiffServ)时,这个字段才起作用.一般的情况下不使用
  • 总长度:占16位,指首部和数据之和的长度,单位为字节,因此数据报的最大长度为 65535 字节.总长度必须不超过最大传送单元 MTU
  • 标识:占16位,它是一个计数器,通常,每发送一个报文,该值会加1, 也用于数据包分片,在同一个包的若干分片中,该值是相同的
  • 标志(flag):占3位,目前只有后两位有意义
  • DF:Don‘t Fragment 中间的一位,只有当 DF=0 时才允许分片
  • MF:More Fragment 最后一位,MF=1表示后面还有分片,MF=0 表示最后一个分片
  • 片偏移:占12位,指较长的分组在分片后,该分片在原分组中的相对位置.片偏移以8个字节为偏移单位
  • 生存时间:占8位,记为TTL (Time To Live) 数据报在网络中可通过的路由器数的最大值,TTL 字段是由发送端初始设置一个 8 bit字段.推荐的初始值由分配数字 RFC 指定,当前值为 64.发送 ICMP 回显应答时经常把 TTL 设为最大值 255
  • 协议:占8位,指出此数据报携带的数据使用何种协议以便目的主机的IP层将数据部分上交给哪个处理过程, 1表示为 ICMP 协议, 2表示为 IGMP 协议, 6表示为 TCP 协议, 17表示为 UDP 协议
  • 首部检验和:占16位,只检验数据报的首部不检验数据部分.这里不采用 CRC 检验码而采用简单的计算方法
  • 源地址和目的地址:都各占4字节,分别记录源地址和目的地址

屏幕快照 2020-07-27 17.05.16技术图片

IP地址
MAC地址用于同网段通信,当跨网段通信时,需要使用另一种地址:IP地址。和MAC地址不同,IP地址是逻辑地址,正因为是逻辑地址,所以一个网卡上可能有1个或多个Ip地址(其中一个为主IP),甚至出故障的时候网卡上不会分配IP地址
IP地址用于在网络上地位寻址,它是网络层的概念,需要工作在三层的网络设备(比如路由器,三层交换机)来帮忙识别并作出相应操作,所以,数据包要达到非本网段内的对方主机,需要经过一次或多次路由,最终才能找到对方主机并将数据包交给对方。

IP地址分为IPv4和IPv6,这里只介绍IPv4
每个IP地址4个字节共32位,全部都是0和1,每个8位是IP地址的一部分,所以每一部分最小是0(二进制位全为0),最大是255(二进制位全为1)。IP地址通常采用点分十进制的方式记录,即使用点将各部分连接起来
例如:192.168.100.10.对应的二进制格式:11000000 10101000 01100100 00001010
每个IP地址都分为网络部分和主机部分,网络部分描述的是这个IP地址在哪个网络段,主机部分描述的是这个IP地址在这个网段的哪个标识

  • A类:
    • 0 000 0000 - 0 111 1111: 1-127
    • 网络数:126, 127
    • 每个网络中的主机数:2^24-2
    • 默认子网掩码:255.0.0.0
    • 私网地址:10.0.0.0
  • B类:
    • 10 00 0000 - 10 11 1111:128-191
    • 网络数:2^14
    • 每个网络中的主机数:2^16-2
    • 默认子网掩码:255.255.0.0
    • 私网地址:172.16.0.0-172.31.0.0
  • C类:
    • 110 0 0000 - 110 1 1111: 192-223
    • 网络数:2^21
    • 每个网络中的主机数:2^8-2
    • 默认子网掩码:255.255.255.0
    • 私网地址:192.168.0.0-192.168.255.0
  • D类:组播
    • 1110 0000 - 1110 1111: 224-239
  • E类:保留未使用
    • 240-255

公共IP地址
屏幕快照 2020-07-27 17.07.00技术图片

私有IP地址
屏幕快照 2020-07-27 17.07.41技术图片
特殊地址

  • 0.0.0.0
    • 0.0.0.0不是一个真正意义上的IP地址。它表示所有不清楚的主机和目的网络
  • 255.255.255.255
    • 限制广播地址。对本机来说,这个地址指本网段内(同一广播域)的所有主机
  • 127.0.0.1~127.255.255.254
    • 本机回环地址,主要用于测试。在传输介质上永远不应该出现目的地址为“127.0.0.1”的 数据包
  • 224.0.0.0到239.255.255.255
    • 组播地址,224.0.0.1特指所有主机,224.0.0.2特指所有路由器。224.0.0.5指OSPF 路由器,地址多用于一些特定的程序以及多媒体程序
  • 169.254.x.x
    • 如果Windows主机使用了DHCP自动分配IP地址,而又无法从DHCP服务器获取地址,系统会为主机分配这样地址

子网掩码
子网掩码用来表示IP地址中的哪些位是网络位,哪些位是主机位。所以,子网掩码是决定IP地址属于哪个网段。子网掩码必须结合IP地址一起使用,否则它将是没有意义的。子网掩码中全位1的部分是网络位,全位0的部分是主机位。0和1必须连续出现,子网掩码的二进制表示中不能出现类似101,10001这种1和0隔开的情况

根据A,B,C这些IP地址分类,其实能判断出各类的子网掩码
例如,
A类地址的网络位是1个字节,所以它的子网掩码的第一个字节全为1,即255,剩下三个字节全为0。所以,A类地址的子网掩码就是255.0.0.0
B类地址的网络位是2个字节,所以子网掩码是255.255.0.0
C类地址的网络位是3个字节,所以子网掩码是255.255.255.0
反之,根据IP地址和子网掩码,也能推断出它的网段,这才是它的真正作用

例如:IP地址为192.168.100.33,子网掩码是255.255.255.0,显然子网掩码的前3个字节全是1,那么IP地址的前3个字节192.168.100是它的网络位,那么它所在的网段就是192.168.100.0这个网段(是否记得,主机位全为0时,表示网段)

每次通信时,首先根据自己的IP地址和子网掩码来判断出自己的网段,再用自己的子网掩码和对方的IP地址计算目标所在的网段,如果在同一网段,那么在封装成帧的时候,封装的是目标主机的MAC地址,而如果不是在同一个网段,则封装的是本地路由器的MAC地址作为目标MAC地址

子网掩码必须结合IP地址一起使用,通常会将它们写在一起,例如:192.168.100.23 255.255.255.0;但也支持另外一种写法,直接将子网掩码为1的位数写在IP地址的后面,例如,255.255.255.0这个子网掩码中有24位是1,所以,IP地址和子网掩码结合的方式可以写成192.168.100.23/24,172.168.100.23/16.这种写法叫做CIDR

IP分类

标签:ip协议   strong   系统   time   默认   否则   udp   dhcp   处理   

原文地址:https://blog.51cto.com/14812296/2513780

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!