开课学院及实验室:计算机科学与网络工程学院
2020年 5月14 日
学院 计算机科学与网络工程 年级、专业、班 计科183
姓名 *** 学号
实验课程名称 计算机网络实验
成绩
实验项目名称 理解子网掩码、网关和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、课前准备
复习相关知识点。
注意实验中要细心观察实验现象,学习透过网络现象分析网络问题的方法。
3、实验目的
理解上述知识点所涉及的基本概念与原理并能运用于分析实际网络,达到对数据包的传送过程深入理解。
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
两台主机均不设置缺省网关。
用arp -d命令清除两台主机上的ARP表,然后在A与B上分别用ping命令与对方通信,记录实验显示结果。
用arp -a命令可以在两台PC上分别看到对方的MAC地址,记录A、B的MAC地址。
分析实验结果。
结果:
分析:
清除arp表后,使用ping命令,主机会先通过arp协议在用掩码进行与操作后,同个网段内的目的主机获取MAC地址,并存入主机内的arp表,故而俩主机通信后,可以在各自的arp表查找出对应的MAC地址。
步骤2:将A的子网掩码改为:255.255.255.0,其他设置保持不变。
操作1:用arp -d命令清除两台主机上的ARP表,然后在A上"ping"B,记录显示结果。
用arp -a命令能否看到对方的MAC地址。
分析操作1的实验结果。
分析:
主机A将目标设备B的ip地址和自己的子网掩码进行“与”操作,和B不再同一个网段,则A若要获取B的MAC地址,则必须将该ip分组首先发向缺省网关。又由于主机A的缺省网关没有设置,无法进行正确发送,因此无法获取B的MAC地址,无法进行通信
操作2:接着在B上"ping"A,记录B上显示的结果
此时用arp -a命令能否看到对方的MAC地址。
分析操作2的实验结果。
分析:
主机B将A的ip地址与自己的子网掩码进行“与”操作后,发现在同一个网段内,故而可以发送MAC地址获取请求,当A收到后,由于A没有设置网关,无法向B发送自己的MAC地址,故而B无法收到A的MAC地址,无法进行通信。
步骤3:在前面实验的基础上,把A的缺省网关设为:202.192.31.235
在A与B上分别用ping命令与对方通信,记录各自的显示结果
在A与B上分别用tracert命令追踪数据的传输路径,记录结果
分析(3)的实验结果。
结果:
分析:
当A设置网关后,可以通过网关向B发送消息,同样也可以向B发送MAC地址获取请求,而B也因为A可以发送消息给自己,可以获得A的MAC地址,所以双方都可以通信。但A发送消息给B需要通过网关,因为用自己掩码进行“与”操作后A认为和B是不同网段的,需要通过网关,而B用自己的掩码和目的地址进行“与”操作后认为和A是同一网段的,因而可以直接发送。
步骤4:(不用做)用arp -d命令清除A中的ARP表,在A上ping一台外网段的主机,如广大的WWW Server,再用arp -a可观察到A的ARP表中只有缺省网关的MAC地址信息。分析实验结果。
结果:
分析:当源主机要和外网段的主机进行通信时,它并不需要获取远程主机的MAC地址,而是把IP分组发向缺省网关,由网关IP分组的完成转发过程。如果源主机没有缺省网关MAC地址的缓存记录,则它会通过ARP协议获取网关的MAC地址,因此在A的ARP表中只观察到网关的MAC地址记录,而观察不到远程主机的MAC地址。
5、实验报告要求
(1)实验目的
(2)实验环境
(3)实验内容
(4)实验步骤、记录和结果
要求按实验内容记录各项的实验步骤,实验记录(截图)和实验结果
(5)实验分析
分析实验结果,并总结实验中遇到的问题及相应的解决方法。
(6)实验建议