锐捷 | 子网划分与ARP协议原理

锐捷 | 子网划分与ARP协议原理

_

一、IPv4编址和子网划分

1. IPv4地址概述

IPv4协议簇是TCP/IP协议簇中最重要的协议簇,主要工作在TCP/IP协议栈中的网络层,网络层可以提供数据传输功能,传输过程中可以按照IP报文逐个发送。

  • 地址结构:IPv4地址长度为32位,包括网络位和主机为两部分

  • 网络位:标识IP地址所属的网段

  • 主机位:标识IP地址在网段中的具体节点

IPv4报文结构

  • 版本:目前的IP协议版本号为4

  • 服务类型:用于IP报文的标记,区分数据的重要度,多用于QoS

  • 生存时间:IP报文所允许通过路由器的最大数量,每经过一台路由TTL会减少1,用于防环

  • 协议:指出IP报文携带的数据库使用的协议(TCP还是UDP协议)

  • 源IP地址:标识IP数据报的源端设备

  • 目的IP地址:标识IP数据报的目的地址

2. IPv4地址分类

在早期网络中,IP地址没有掩码的概念。而是根据网络大小,按照"有类"的方式将网络划分为ABCDE五类。ABC类IP地址的网络位是固定的,DE类则没有网络位和主机位。可以根据网络位进行确定,网络位一致则可以理解为处于同一广播域。

如何根据首段地址区分网络类

计算A类的地址范围
0 XXXXXXX.主机位.主机位.主机位
​
最小: 0 XXXXXXX.主机位.主机位.主机位,将X全部换为0,转换为十进制= 0.主机位.主机位.主机位
当然IPv4地址不可能以0开头,所以+1得出:1.主机位.主机位.主机位
最大: 0 XXXXXXX.主机位.主机位.主机位,将X全部换为1,转换为十进制= 127.主机位.主机位.主机位
所以得出A类的地址范围为= 1 ~ 127
  • A类地址范围:1.0.0.0 ~ 126.255.255.255

  • B类地址范围:128.0.0.0 ~ 191.255.255.255

  • C类地址范围:192.0.0.0 ~ 223.255.255.255

  • D类地址范围:224.0.0.0 ~ 239.255.255.255

  • E类地址范围:240.0.0.0 ~ 247.255.255.255

3. 私有IP地址和特殊地址

私有地址只能应用在内网,在内网边界通过NAT将数据的所有地址转换为公网地址

  • A类地址中的私有地址:10.0.0.0至10.255.255.255

  • B类地址中的私有地址:172.16.0.0至172.31.255.255

  • C类地址中的私有地址:192.168.0.0至192.168.255.255

特殊地址

  • 本地环回地址:127.X.X.X 【用于测试使用】

  • 网络地址:例192.168.1.0/24 【主机位全为0,用于表示整个子网】

  • 广播地址:例192.168.1.254/24 【主机位全为1,用于广播】

  • 本地广播地址:255.255.255.255

  • 未知地址:0.0.0.0 【网络位和主机位全为0】

4. 子网掩码与子网划分

子网掩码

  • 用于区分IP地址中的网络位和主机位

  • 子网掩码由连续的1和0组成:1对应网络位,0对应主机位

VLSM可变长子网掩码

  • 使用多个不同的子网掩码把网络划分为不同大小的子网

  • 改变子网掩码将大网络划分为若干个小网络

子网划分

  • 子网的个数= 2x (x代表子网的位数)

  • 每个子网内有效的主机个数为 = 2y-2 (y代表主机位数)

子网划分案例

# 192.168.10.213 255.255.255.192(26)
​
1、根据IPv4地址的首段判断,该地址为C类地址,子网掩码为 255.255.255.0(24)
2、计算子网位: 255.255.255.192 - 255.255.255.0 = 0.0.0.192  --> 将192转换为二进制得出 1100 0000
3、子网数:子网缩写运算,26-24=2,2^2=4个
4、主机数:32-26=6, 2^6=64个
5、有效主机数= 64-2=62(减去广播地址和网络地址)

5. CIDR子网聚合

CIDR,无类域间路由。将多个“有类”的子网合并成一个,用来减少路由表中的路由条目。在自然分类中,A类、B类和C类地址的网络位和主机位长度是固定的,分别对应着不同大小的网络和主机数量,这种固定的分类方式导致了IP地址空间的浪费和不均匀分配。

子网划分则是一种对网络进行更小粒度划分的技术,以进一步提高IP地址的利用率。然而,子网划分仍然受到原始分类的限制。CIDR不受制于A、B、C类地址空间的限制,它使用前缀长度来表示IP地址的网络部分的位数

CIDR消除了自然分类地址和子网划分之间的界限,使得IP地址的分配和路由选择更加统一和简化

6. 节约IP地址的技巧

在分配IP地址时,需要注意:

  • 配置Loopback地址,使用的子网掩码为32

  • 配置互联地址时,使用的子网掩码为/30

  • 对业务网关进行统一设定,如网关设置为 x.x.x.254

二、ARP协议原理与应用

OSI参考模型将网络划分为7层,IP地址工作在第三层网络层中,MAC地址工作在第二层数据链路层。

在以太网发送IP数据包时,先封装网络层的包头再封装数据链路层的包头,由于在发送时只知道目标IP地址而不知道MAC地址,又不能跨越层,所以需要使用ARP地址解析协议。

ARP协议可以根据网络层IP数据包头中的IP地址信息解析出对应的MAC地址,确保通信。ARP协议不能穿越路由器,不能被转发到其它广播域中。

ARP缓存表:用于存储IP地址和经过解析的MAC地址对应关系。

1. ARP的工作流程和工作原理

工作流程

工作原理

  1. 先查看本地ARP表,如果本地ARP表中没有目的IP地址对应的MAC表项,则广播发送ARP请求包

  2. 源主机发送ARP request 请求包,请求目的主机的MAC地址

  3. 同网段内的所有主机都能收到ARP request请求包,但是只有目的主机才会回复ARP reply数据包【广播发送,单播回复】

  4. 源主机收到ARP reply 数据包后,将目的主机的 IP-MAC对应关系添加进ARP表中,完成数据的以太网封装【指的是将数据包封装在以太网帧中的过程,帧包含源和目的设备的MAC地址和数据本身】**,进行数据交互

具体的案例讲解

2. ARP缓存表

  • 动态表项:通过ARP协议自动学习,可以被更新,缺省老化时间为120秒

  • 静态表项:手动配置,不能被更新,没有老化时间限制

Windows系统查看ARP表项

arp -a

Linux系统查看ARP表项

arp -v

RGOS查看ARP表项

show arp

3. 免费ARP

免费ARP,也被称为Gratuitous ARP或无故ARP,是一种特殊的ARP请求报文。

  • IP地址冲突检测:免费ARP报文通过广播的方式发送到网络中,如果某台主机使用了当前主机的IP地址,则会回复一个ARP响应;收到ARP响应后,主机会发出IP地址冲突的警告。

  • 更新ARP表项:当某台主机的MAC地址变化或IP地址变化,该主机会发送免费的ARP广播,网络中所有主机的ARP表项中如果存在该条目将会根据免费的ARP报文来更新自己的缓存表。

免费ARP报文还在一些特定场景中产生,如主机/系统启动期间进行网口/接口配置时,或者网卡进行了某些配置变动导致网口重新启动(如插拔网线、自动获取IP地址、手动更改IP地址、掩码、网关等参数)时。

4. 代理ARP

代理ARP(Proxy ARP)是ARP协议的一个变种,用于处理非自身发起的ARP请求。

  • 提供网络通信效率和稳定性:在局域网中,当一个主机需要和另一个主机进行通信,它需要知道该主机的MAC地址。如果缓存表中没有对应的MAC地址,主机会发送ARP请求广播;代理ARP能够代替主机完成ARP协议的操作,响应ARP请求,并将主机的IP地址和MAC地址进行映射记录在本地缓存表中。

  • 解决跨网段ARP请求:出现跨网段的ARP请求时,路由器会将自己的MAC地址返回给发起ARP广播请求的主机,实现MAC地址的代理(善意的欺骗),使主机能够通信。

ARP请求的源IP地址与路由器的IP地址处在同一个子网中,且路由器有ARP请求的IP地址的路由,代理ARP就可以使网络中的主机无需配置默认网关和路由策略,就能实现与其他网络中的计算机通信。

  • 源IP地址与路由器的IP地址处于同一个子网中:发送ARP请求的主机与路由器在同一个网段中,在TCP/IP网络中,处于同一个网段的主机可以直接通信无需经过路由器转发。当主机需要获取目标主机的MAC地址时,会直接在本地子网中发送ARP广播

  • 路由器有ARP请求的IP地址路由:即使发送ARP请求的主机与路由器同一网段,当请求的目标IP地址可能在另一个网段中。这样就需要路由器只能存在通往目标IP地址段的路由条目,这样才可以处理跨网段的通信

  • 也就是说,代理ARP允许路由器代替目标主机响应ARP请求,路由器会告知发送ARP请求的主机,自己知道如何达到目标IP地址,并提供自身的MAC地址作为“下一跳”地址。这样主机可以将数据包发送到路由器,由路由器将数据包根据路由发送到目标网络中。

5. RARP反向地址解析协议

用于将物理地址(MAC地址)转换为网络层地址(IP地址)的协议。

它主要在以太网上实现,用于网络启动和其他情况下的动态IP地址分配。当一个设备需要知道相应的IP地址时,它会在网络上广播一个RARP请求包,拥有该IP地址的设备会向请求设备返回一个RARP响应包,从而告诉请求设备所需的IP地址。这种机制主要用于实现无盘系统的网络启动,例如某些工作站。


锐捷 | OSI参考模型TCP/IP协议栈与Windows常用命令 2026-03-23
锐捷 | 二层交换与VLAN原理 2026-03-23

评论区