08 IPv4地址协议以及网络层工作原理

发布时间 2023-08-28 23:11:21作者: 搞笑一下

IP地址表示

一个IPv4地址有32 bit。
一个IPv4地址有32 bit。

IP构成

网络部分:用来标识一个网络,IP地址不能反映任何有关主机位置的地理信息,只能通过网络号码字段判断出主机属于哪个网络,IP地址不能反映任何有关主机位置的地理信息,只能通过网络号码字段判断出主机属于哪个网络

主机部分:用来区分一个网络内的不同主机。用来区分一个网络内的不同主机。

网络掩码:区分一个IP地址中的网络部分及主机部分。用来区分一个网络内的不同主机。网络掩码不是一个IP地址,在二进制的表示上是一堆连续的1、后面接一堆连续的0。通常将网络掩码中1的个数称为这个网络掩码的长度。如:掩码0.0.0.0的长度是0,掩码252.0.0.0的长度是6。网络掩码一般与IP地址结合使用,其中值为1的比特对应IP地址中的网络位;值为0的比特对应IP地址中的主机位,以此来辅助我们识别一个IP地址中的网络位与主机位。即网络掩码中1的个数就是IP地址的网络号的位数,0的个数就是IP地址的主机号的位数。

IP寻址

二层网络寻址:可直接通过IP地址,找到对应的主机接口。 //根据二层设备的MAC地址表进行寻址转发
三层网络寻址:利用网关转发来自不同网段之间的数据包。 //根据具有三层功能的网络设备的路由表进行转发

网关

报文转发过程中,首先需要确定转发路径以及通往目的网段的接口。如果目的主机与源主机不在同一网段(IPV4的网络部分不一致),报文需要先转发到网关,然后通过网关将报文转发到目的网段。
网关是指接收并处理本地网段主机发送的报文并转发到目的网段的设备。为实现此功能,网关必须知道目的网段的路由。网关设备上连接本地网段的接口地址即为该网段的网关地址。

三层网络寻址抓包

完成两个网段内的主机互通
image

PC配置(只演示PC1,剩下都同理):
image

AR1配置:

<Huawei>sys
Enter system view, return user view with Ctrl+Z.
[Huawei]sys AR1
[AR1]INTE GI 0/0/0
[AR1-GigabitEthernet0/0/0]ip add 192.168.2.254 255.255.255.0
[AR1-GigabitEthernet0/0/1]ip add 192.168.1.254 255.255.255.0

三层寻址:
PC1 Ping PC2,在AR1的GE 0/0/1上抓包

第一步:

PC1发现通信的对象不是本网段,需要将数据包转交给网关进行三层转发,所以发送ARP Request获取网关的mac地址
image

第二步:

封装ICMP Request数据包发送给网关,封装数据包时,三层的目的IP为通信的对端,三层的目的MAC地址为网关的MAC地址,以达到数据包给网关再进行三层转发的目的
image

第三步:

AR1上的GE0/0/1口接受到ICMP Request数据包后根据目的IP地址查看路由表,查询路由表后发现去往192.168.2.0/24网段的下一跳为192.168.2.254,再ge0/0/0口
image

第四步:

AR1根据查询路由表重新封装数据包的二层目的MAC地址,目的MAC地址为ge0/0/0
image

第五步:

GI0/0/0接受到数据包后,根据目的IP为本网段的地址,重新封装二层的目的MAC为192.168.2.3的MAC地址,所以需要先发送一个ARP请求包请求到192.168.2.3的MAC地址,在LSW2的gi0/0/1口可以抓到ARP请求的报文,所以第一个ping包超时,从第二个开始成功通信,第二次接受到来自192.168.1.1的ping包时为二层的目的MAC封装为192.168.2.3的MAC地址,然后转发给交换机,之后就是二层通信
image

第六步:

PC3回包,和PC1发过来同理,PC3先发送ARP包找到网关的MAC地址,将网络层的目的IP为192.168.1.1,二层的目的MAC为网关的MAC地址,网关接受到该数据包后,根据路由表将目的MAC设置为ge0/0/1的MAC地址,ge0/0/1口由于处理过PC的ARP请求包所以直接将数据包的目的MAC设置为PC1的MAC地址,然后进行转发给PC1,至此通信完成

PC1:
image

IP地址分类(有类编址)

为了方便IP地址的管理及组网,IP地址分成五类:

image

A/B/C/D/E类默认网络掩码
A类:8 bit, 0.0.0.0~127.255.255.255/8
B类:16 bit,128.0.0.0~191.255.255.255/16
C类:24 bit,192.0.0.0~223.255.255.255/24

IP地址类型

我们通常把一个网络号所定义的网络范围称为一个网段。在一个网段内有如下地址类型

网络地址:用于标识一个网络。
例如:192.168.10.0/24
image

广播地址:用于向该网络中的所有主机发送数据的特殊地址。
例如:192.168.10.255/24
image

可用地址:可分配给网络中的节点或网络设备接口的地址。
例如:192.168.10.1/24
可用地址:可分配给网络中的节点或网络设备接口的地址。
image

IP地址计算

给出一个网络地址,计算出广播地址,网络地址,可用地址
例如172.16.10.1/16这个B类地址的网络地址、广播地址以及可用地址数分别是

image

公网IP地址,私网IP地址

为了节省IP所以区分了公网地址和私网地址,多个私网地址可以通过nat技术(后续介绍)用一个公网地址上网
公网IP地址:IP地址是由IANA统一分配的,以保证任何一个IP地址在Internet上的唯一性。这里的IP地址是指公网IP地址。
私网IP地址:实际上一些网络不需要连接到Internet,比如一个大学的封闭实验室内的网络,只要同一网络中的网络设备的IP地址不冲突即可。在IP地址空间里,A、B、C三类地址中各预留了一些地址专门用于上述情况,称为私网IP地址。
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

特殊IP地址

IP地址空间中,有一些特殊的IP地址,这些IP地址有特殊的含义和作用,举例如下。
image

子网划分

一个网络为一个广播域,当一个部门只有10几个人,最小的C类地址也有254,过于浪费地址,且一个网段对应一个二层广播域,过大的广播域会导致内网不堪重负,子网划分将一个网络号划分成多个子网,每个子网分配给一个独立的广播域。如此一来广播域的规模更小、网络规划更加合理。IP地址得到了合理利用。

如何划分子网(VLSMVariable Length Subnet Mask)

对192.168.10.0/24网段进行子网划分
image
向前借位,形成子网
image