计算机网络实验2 理解子网掩码、网关和 ARP 协议的作用

实验二:理解子网掩码、网关和 ARP 协议的作用

1、相关知识点:
(1)子网掩码(Subnet Mask) 子网掩码的主要功能是告知网络设备,一个特定的 IP 地址的哪一部分是包含网络地址 与子网地址,哪一部分是主机地址。网络的路由设备只要识别出目的地址的网络号与子网号 即可作出路由寻址决策,IP 地址的主机部分不参与路由器的路由寻址操作,只用于在网段 中唯一标识一个网络设备的接口。本来,如果网络系统中只使用 A、B、C 这三种主类地址, 而不对这三种主类地址作子网划分或者进行主类地址的汇聚,则网络设备根据 IP 地址的第 一个字节的数值范围即可判断它属于 A、B、C 中的哪一个主类网,进而可确定该 IP 地址的 网络部分和主机部分,不需要子网掩码的辅助。 但是在实际网络规划中,他们并不利于有效地分配有限的地址空间。对于 A,B 类地址, 很少有这么大规模的公司能够使用,对于 C 类地址所容纳的主机数又相对太少。所以有类别 的 IP 地址并不适用于网络规划。同时随着加入互联网的网络越来越多,路由寻经表急剧膨 胀,这样不仅会降低网关寻径效率(甚至可能使寻径表溢出,从而造成寻径故障),更重要 的是将增加内外部路径刷新时的开销,从而加重网络负担。 为了提高 IP 地址使用效率及路由效率,在基础的 IP 地址分类上对 IP 编址进行了相应 改进。但为了使系统在对 A、B、C 这三种主类网进行了子网的划分,或者采用无类别的域间 选路技术 CIDR 对网段进行汇聚的情况下,也能对 IP 地址的网络及子网部分与主机部分作正 确的区分,就必须依赖于子网掩码的帮助。 子网掩码使用与 IP 相同的编址格式,子网掩码为 1 的部分对应于 IP 地址的网络与子网 部分,子网掩码为 0 的部分对应于 IP 地址的主机部分。将子网掩码和 IP 地址作"与"操作后, IP 地址的主机部分将被丢弃,剩余的是网络地址和子网地址。例如,一个 IP 分组的目的 IP 地址为:10.2.2.1,若子网掩码为:255.255.255.0,与之作"与"运算得:10.2.2.0,则网 络设备认为该 IP 地址的网络号与子网号为:10.2.2.0。

(2)网关(Gateway) 在 Internet 中的网关一般是指用于连接两个或者两个以上网段的网络设备,通常使用 路由器(Router)作为网关。在 TCP/IP 网络体系中,网关的基本作用是根据目的 IP 地址的 网络号与子网号,选择最佳的出口对 IP 分组进行转发,实现跨网段的数据通信。

(3)ARP 协议(Address Resolution Protocol) 在以太网(Ethernet)中,一个网络设备要和另一个网络设备进行直接通信,除了知道 目标设备的网络层逻辑地址(如 IP 地址)外,还要知道目标设备的第二层物理地址(MAC 地址)。ARP 协议的基本功能就是通过目标设备的 IP 地址,查询目标设备的 MAC 地址,以 保证通信的顺利进行。 当一个网络设备需要和另一个网络设备通信时,它首先把目标设备的 IP 地址与自己的 子网掩码进行"与"操作,以判断目标设备与自己是否位于同一网段内。如果目标设备在同一 网段内,并且源设备没有获得与目标 IP 地址相对应的 MAC 地址信息,则源设备以第二层广 播的形式(目标 MAC 地址为全 1)发送 ARP 请求报文,在 ARP 请求报文中包含了源设备与目 标设备的 IP 地址。同一网段中的所有其他设备都可以收到并分析这个 ARP 请求报文,如果
某设备发现报文中的目标 IP 地址与自己的 IP 地址相同,则它向源设备发回 ARP 响应报文, 通过该报文使源设备获得目标设备的 MAC 地址信息。 如果目标设备与源设备不在同一网段,则源设备首先把 IP 分组发向自己的缺省网关 (Default Gateway),由缺省网关对该分组进行转发。如果源设备没有关于缺省网关的 MAC 信息,则它同样通过 ARP 协议获取缺省网关的 MAC 地址信息。 为了减少广播量,网络设备通过 ARP 表在缓存中保存 IP 与 MAC 地址的映射信息。在一 次 ARP 的请求与响应过程中,通信双方都把对方的 MAC 地址与 IP 地址的对应关系保存在各 自的 ARP 表中,以在后续的通信中使用。ARP 表使用老化机制,删除在一段时间内没有使用 过的 IP 与 MAC 地址的映射关系。

2、课前准备

  1. 复习相关知识点。
  2. 注意实验中要细心观察实验现象,学习透过网络现象分析网络问题的方法。

3、实验目的

  1. 理解上述知识点所涉及的基本概念与原理并能运用于分析实际网络,达到对数据包的传送 过程深入理解。

4、实验内容 在实验中,利用 ping 命令来检验主机间能否进行正常的双向通信。在"ping"的过程中, 源主机向目标主机发送 ICMP 的 Echo Request 报文,目标主机收到后,向源主机发回 ICMP 的 Echo Reply 报文,从而可以验证源与目标主机能否进行正确的双向通信。 实验的拓扑结构:如图(1)所示。
在这里插入图片描述
A 与 B 为实验用的 PC 机,使用 Windows 操作系统。

步骤 1:设置主机的 IP 地址与子网掩码: A(1 号机): 202.192.31.机号 255.255.248.0 B(2 号机): 202.192.30.机号 255.255.248.0
两台主机均不设置缺省网关。

  1. 用 arp -d 命令清除两台主机上的 ARP 表,然后在 A 与 B 上分别用 ping 命令与对方通信, 记录实验显示结果。
  2. 用 arp -a 命令可以在两台 PC 上分别看到对方的 MAC 地址,记录 A、B 的 MAC 地址。
    分析实验结果。

实际操作
A主机
1)用arp -d命令清除ARP表
2)然后在A上ping B
3)再用arp -a查看ARP表
在这里插入图片描述
在这里插入图片描述
B主机
1) 用arp -d命令清除ARP表,
2)在A上完成A ping B 后 再用arp -a查看ARP表
在这里插入图片描述
分析:A、B主机之所以会保留对方的ip地址和Mac地址:两者在同一网段,为了减少广播量,网络设备通过 ARP 表在缓存中保存 IP 与 MAC 地址的映射信息。在一 次 ARP 的请求与响应过程中,通信双方都把对方的 MAC 地址与 IP 地址的对应关系保存在各 自的 ARP 表中,以在后续的通信中使用。
步骤 2:将 A 的子网掩码改为:255.255.255.0,其他设置保持不变。

  1. 操作 1:用 arp -d 命令清除两台主机上的 ARP 表,然后在 A 上"ping"B,记录显示结果。 用 arp -a 命令能否看到对方的 MAC 地址。 分析操作 1 的实验结果。

主机A
在这里插入图片描述
主机B
在这里插入图片描述

  1. 操作 2:接着在 B 上"ping"A,记录 B 上显示的结果 此时用 arp -a 命令能否看到对方的 MAC 地址。 分析操作 2 的实验结果。

在这里插入图片描述
在这里插入图片描述
**分析:A ping B失败的原因:**在A ping B时,主机A会先将主机B的ip地址与自身的掩码进行“与”运算计算出主机B的网络号(该网络号只是主机A算出来用作判断是否在同一网段用的,并不是主机B真实网络号)。同时主机A也会用自身ip地址与自身掩码进行运算得出自身网络号,主机A得出两个网络号不相同,则不在同一网络段,因此想通过路由器进行转发到其它网络段,但由于主机A并未设置缺省网关,故A ping B失败。
**分析:B ping A出现超时原因:**在B ping A中,同样主机B也会计算自身的网络号与主机A的网络号,得出两主机在同一网络上,于是主机B向A发送数据报, A接受到次报文,就能把B的ip信息保存到自己的arp缓存表,但是真实的主机A的网络号并不与主机B的网络号相同,因为主机A的子网掩码的修改,导致主机B无法接受主机A的响应报文,因此显示B ping A超时。

步骤 3:在前面实验的基础上,把 A 的缺省网关设为:202.192.31.235

扫描二维码关注公众号,回复: 11343087 查看本文章
  1. 在 A 与 B 上分别用 ping 命令与对方通信,记录各自的显示结果
  2. 在 A 与 B 上分别用 tracert 命令追踪数据的传输路径,记录结果 分析(3)的实验结果。
    主机A在这里插入图片描述
    主机B
    在这里插入图片描述
    分析: 主机A通过计算两台主机的网络号不同,因此通过缺省网关转发ICMP数据包,通过路由器转发到主机B。完成了A ping B过程。通过ICMP数据包,主机B分析数据包,获得了主机A的真实的IP地址与Mac地址,因此B ping A也能成功。

如有错误,请多多指教

猜你喜欢

转载自blog.csdn.net/weixin_43334673/article/details/106379439
今日推荐