HNU-计算机网络-实验4-网络层与链路层协议分析(PacketTracer)

news2024/11/15 8:49:10

计算机网络 课程基础实验四
网络层与链路层协议分析(PacketTracer)

计科210X 甘晴void 202108010XXX

在这里插入图片描述

文章目录

  • 计算机网络 课程基础实验四<br>网络层与链路层协议分析(PacketTracer)
    • 一、实验目的
    • 二、实验内容
      • 4.1 路由器交换机的基本配置
        • (1)路由器的一些基本配置
        • (2)静态路由
        • (3)子网划分
        • (4)配置RIP
        • (5)交换机的基本配置
      • 4.2 了解 ICMP 数据包的格式
        • (0)准备.设置PC,Server,Router参数
        • (1)步骤 1. 捕获并评估到达 Eagle Server 的 ICMP 回应报文
        • (2)步骤 2. 捕获并评估到达 192.168.253.1 的 ICMP 回应报文。
        • (3)步骤 3. 捕获并评估超过 TTL 值的 ICMP 回应报文。
      • 4.3 检查 ARP 交换
        • (★)ARP简介
        • (0)准备
        • (1)任务 1:使用 Packet Tracer 的 arp 命令
          • ①步骤 1. 访问命令提示符窗口。
          • ②步骤 2. 使用 ping 命令在 ARP 缓存中动态添加条目。
        • (2)任务 2:使用 Packet Tracer 检查 ARP 交换
          • ①步骤 1. 配置 Packet Tracer 捕获数据包。
          • ②步骤 2. 准备 Pod 主机计算机以执行 ARP 捕获。
          • ③步骤 3. 捕获并评估 ARP 通信。
    • 三、实验感悟

【给助教的验收建议】

  • 实验4.1基本上就是把提供的5个环境看一遍,没有太大的意义,(实际上环境都是搭好的,没必要跟着再去复现一遍,可以直接验证不必再按照提示配置),因此这部分不必看文件,如果感兴趣,就随机问一两个问题就好了(如提供一个子网地址,你怎么划分这样的问题)
  • 实验4.2和实验4.3没有提供拓扑图与文件,这个需要自己动手实现,难度上来说4.2会比4.3高一点,4.3主要就是一个原理知道就可以,4.2的ICMP各部分还是可以研究一下的。因此这部分可以对着自己实现的文件现场操作或者提问。

一、实验目的

通过本实验,进一步熟悉PacketTracer的使用,学习路由器与交换机的基本配置,加深对网络层与链路层协议的理解。

二、实验内容

4.1 路由器交换机的基本配置

分别打开下面的实验文件,按照提示完成实验(按照文件中的说明逐步完成即可)。

  • 4.路由器的一些基本配置.pkt
  • 8.静态路由.pkt
  • 15.子网划分.pkt
  • 16.配置RIP.pkt
  • 11.交换机的基本配置.pkt

【做完之后补充】

实际这一部分更像是让我们了解基础的知识与PacketTracer的实现,不像是一个具体的实验。如果没时间的话,其实没必要跟着敲一遍,还是搞懂每个部件是干什么的,每个协议的作用和原理,每个命令的含义更为重要。

(1)路由器的一些基本配置

实验界面如下:

在这里插入图片描述

双击“路由器0”进入路由器,点击上方栏的CLI(command-line interface,即命令行)

R1>show version
查看网络设备操作系统IOS版本,IOS映像文件,存储器大小,接口类型及配置登记值等信息。
R1>enable
进入特权模式,可以进行配置查看
R1#configure terminal
进入全局模式,用户可以对路由器进行配置
R1(config)#hostname R1
将路由器主机名修改为R1
R1(config)#no ip domain-lookup
关闭域名解释
R1(config)#line console 0
进入终端配置模式
R1(config-line)#logging synchronous
设置输入同步(输入时,IOS的系统提醒或日志不会打断输入)
R1(config-line)#exec-timeout 20 00
设置执行会话时间,不做任何操作,20分后断开
R1(config-line)#end
结束设置

命令行部分截图如下:

在这里插入图片描述

(2)静态路由

实验提供关于静态路由简介如下:

转发数据包是路由器的最主要功能。路由器转发数据包时需要查找路由表,管理员可以通过手工的方法在路由器中直接配置路由表,这就是静态路由。虽然静态路由不适合于在大的网络中使用,但是由于静态路由简单、路由器负载小、可控性强等原因,在许多场合中还经常被使用。

路由器在转发数据时,要先在路由表(routing table)中查找相应的路由。

路由器有这么三种途径建立路由:

(1)直连网络:路由器自动添加和自己直接连接的网络的路由

(2)静态路由:管理员手动输入到路由器的路由

(3)动态路由:由路由协议(routing protocol)动态建立的路由

静态路由的缺点是不能动态反映网络拓扑,当网络拓扑发生变化时,管理员就必须手工改变路由表;然而静态路不会占用路由器太多的CPU 和RAM 资源,也不占用线路的带宽。

配置静态路由的命令为“ip route”,命令的格式如下:

ip route 目的网络 掩码 { 网关地址 | 接口 }

例子:ip route 192.168.1.0 255.255.255.0 s0/0

例子:ip route 192.168.1.0 255.255.255.0 12.12.12.2

在写静态路由时,如果链路是点到点的链路(例如PPP 封装的链路),采用网关地址和接口都是可以的;然而如果链路是多路访问的链路(例如以太网),则只能采用网关地址,即不能:ip route 192.168.1.0 255.255.255.0 f0/0 。

实验界面如下:(注意R1R2R3对应关系)

在这里插入图片描述

①路由器配置

首先对这三个路由器进行设置,按照深蓝色框框出的进行路由器配置。

【注意】先在命令行内enable>configure terminal进入设置模式,否则会报错“Invalid input detected at ^ marker”(没进入设置模式);在设置完,最后show ip route之前要使用end退出设置模式。

【提示符含义】

  • 用户模式:R1>
  • 特权模式:R1#
  • 全局配置模式:R1(config)#
  • 接口配置模式:R1(config-if)#
  • (本实验由于简单起见,没有设置密码这一步,cisco提供了设置与验证密码的功能)

设置R1:

R1>enable
R1#configure terminal
Enter configuration commands, one per line.  End with CNTL/Z.
R1(config)#hostname R1
R1(config)#int loopback 0
R1(config-if)#ip address 1.1.1.1 255.255.255.0
R1(config-if)#exit
R1(config)#int s2/0
R1(config-if)#ip address 192.168.1.1 255.255.255.0
R1(config-if)#no shutdown
R1(config-if)#clock rate 64000
R1(config-if)#ip route 2.2.2.0 255.255.255.0 s2/0
R1(config)#ip route 3.3.3.0 255.255.255.0 192.168.1.2
R1(config)#show ip route
            ^
% Invalid input detected at '^' marker.
	
R1(config)#end
R1#
%SYS-5-CONFIG_I: Configured from console by console

R1#show ip route
Codes: C - connected, S - static, I - IGRP, R - RIP, M - mobile, B - BGP
       D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
       N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
       E1 - OSPF external type 1, E2 - OSPF external type 2, E - EGP
       i - IS-IS, L1 - IS-IS level-1, L2 - IS-IS level-2, ia - IS-IS inter area
       * - candidate default, U - per-user static route, o - ODR
       P - periodic downloaded static route

Gateway of last resort is not set

     1.0.0.0/24 is subnetted, 1 subnets
C       1.1.1.0 is directly connected, Loopback0
     2.0.0.0/24 is subnetted, 1 subnets
S       2.2.2.0 is directly connected, Serial2/0
     3.0.0.0/24 is subnetted, 1 subnets
S       3.3.3.0 [1/0] via 192.168.1.2
C    192.168.1.0/24 is directly connected, Serial2/0

R1#

设置R2:(由于R2是中继节点,故要设置两端的链路接口,设置会长一点)

R2>enable
R2#configure terminal
Enter configuration commands, one per line.  End with CNTL/Z.
R2(config)#hostname R2
R2(config)#int loopback0
R2(config-if)#ip address 2.2.2.2 255.255.255.0
R2(config-if)#exit
R2(config)#int s2/0
R2(config-if)#ip address 192.168.1.2 255.255.255.0
R2(config-if)#no shutdown
R2(config-if)#exit
R2(config)#int s3/0
R2(config-if)#ip address 192.168.100.1 255.255.255.0
R2(config-if)#no shutdown
R2(config-if)#clock rate 64000
R2(config-if)#ip route 1.1.1.0 255.255.255.0 s2/0
R2(config)#ip route 3.3.3.0 255.255.255.0 s3/0
R2(config)#end
R2#
%SYS-5-CONFIG_I: Configured from console by console

R2#show ip route
Codes: C - connected, S - static, I - IGRP, R - RIP, M - mobile, B - BGP
       D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
       N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
       E1 - OSPF external type 1, E2 - OSPF external type 2, E - EGP
       i - IS-IS, L1 - IS-IS level-1, L2 - IS-IS level-2, ia - IS-IS inter area
       * - candidate default, U - per-user static route, o - ODR
       P - periodic downloaded static route

Gateway of last resort is not set

     1.0.0.0/24 is subnetted, 1 subnets
S       1.1.1.0 is directly connected, Serial2/0
     2.0.0.0/24 is subnetted, 1 subnets
C       2.2.2.0 is directly connected, Loopback0
     3.0.0.0/24 is subnetted, 1 subnets
S       3.3.3.0 is directly connected, Serial3/0
C    192.168.1.0/24 is directly connected, Serial2/0
C    192.168.100.0/24 is directly connected, Serial3/0

R2#

设置R3:

R3>enable
R3#configure terminal
Enter configuration commands, one per line.  End with CNTL/Z.
R3(config)#hostname R3
R3(config)#int loopback0
R3(config-if)#ip address 3.3.3.3 255.255.255.0
R3(config-if)#exit
R3(config)#int s2/0
R3(config-if)#ip address 192.168.100.2 255.255.255.0
R3(config-if)#no shutdown
R3(config-if)#ip route 1.1.1.0 255.255.255.0 s2/0
R3(config)#ip route 2.2.2.0 255.255.255.0 s2/0
R3(config)#end
R3#
%SYS-5-CONFIG_I: Configured from console by console

R3#show ip route
Codes: C - connected, S - static, I - IGRP, R - RIP, M - mobile, B - BGP
       D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
       N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
       E1 - OSPF external type 1, E2 - OSPF external type 2, E - EGP
       i - IS-IS, L1 - IS-IS level-1, L2 - IS-IS level-2, ia - IS-IS inter area
       * - candidate default, U - per-user static route, o - ODR
       P - periodic downloaded static route

Gateway of last resort is not set

     1.0.0.0/24 is subnetted, 1 subnets
S       1.1.1.0 is directly connected, Serial2/0
     2.0.0.0/24 is subnetted, 1 subnets
S       2.2.2.0 is directly connected, Serial2/0
     3.0.0.0/24 is subnetted, 1 subnets
C       3.3.3.0 is directly connected, Loopback0
C    192.168.100.0/24 is directly connected, Serial2/0

R3#

②尝试ping

使用R1,对另外两个路由器进行ping。(注意先使用en,从用户模式切换成特权模式)

实验中提供的是让我们对2.2.2.2进行ping

在这里插入图片描述

其实我们已经搭好了一整个链路了,也可以对3.3.3.3进行ping

在这里插入图片描述

也是可以的。

配置信息应该是正确的。

(3)子网划分

划分子网的一些公式:

  1. 你所选择的子网掩码将会产生多少个子网:2的x次方(x代表被借走的主机位数)。
  2. 每个子网有多少主机:2的y次方-2(y代表被借走之后剩余的主机位数)。
  3. 有效子网是:有效子网号=256-十进制的子网掩码(结果叫做block size)。
  4. 每个子网的广播地址是:广播地址=下个子网号-1
  5. 每个子网的有效主机分别是:忽略子网内全为0和全为1的地址剩下的就是有效主机地址。最后有效的1个主机地址=下个子网号-2(即广播地址-1)

实验界面如下:

在这里插入图片描述

对于该图理解如下:

网络地址192.168.10.0 子网掩码255.255.255.192

  1. 子网数=2的2次方=4。
  2. 每个子网的主机数=2的6次方-2=62。
  3. 有效子网:block size=256-192=64,第一个子网为192.168.10.0,第二个子网为192.168.10.64,第三个子网为192.168.10.128,最后一个为192.168.10.192。
  4. 广播地址:下个子网-1,第一个子网的广播地址是192.168.10.63,第二个是192.168.10.127,第三个是192.168.10.191,最后一个是192.168.10.255。
  5. 有效主机范围是:第一个子网的主机地址是192.168.10.1到192.168.10.62,第二个是192.168.10.65到192.168.10.126,第三个是192.168.10.129到192.168.10.190,最后一个是192.168.10.193到192.168.10.254。

本实验应该主要是理解,并不需要做什么操作。

(4)配置RIP

路由选择信息协议(RIP/RIP2/RIPng:Routing Information Protocol)

版本区别:RIPv1、 RIPv2和RIPng,前两者用于IPv4, RIPng用于IPv6。

路由信息协议RIP是内部网关协议中最先得到广泛使用的协议之一。该协议是基于距离矢量算法的路由协议,利用跳数来作为计量标准。

网络中的每一个路由器都要维护它到其他每一个目的网络的距离信息。距离定义为到达非直连网络所经过的路由器+1。在刚路由器开始工作时,只知道直连网络的距离,通过和相邻路由器交换并更新路由信息,得到到达自治系统内任何一个网络的最短距离和下一跳路由器的地址。

★RIP图例:

感觉实验没有讲清楚,自己找了一些资料。

如下图,红框部分是经过两次RIP路由更新之后新加入的部分,原来是没有的。经过多次更新迭代之后,应该会收敛。(图中如果仅针对这个局部结构,实际上已经收敛了)

在这里插入图片描述

实验中给出了网络拓扑图,并对每个路由器进行RIP配置,配置方式是通过network命令添加直连网络。

实验界面如下:

在这里插入图片描述

【提示符含义】

  • 路由配置模式:R1(config-router)#

实验已经给出了所有的路由器配置信息,可以去模拟配置。我觉的还是主要理解含义,这里手动去配置之后没有验证环节,就不手动配置了(实际上提供给我们的都是配置好的,可以直接做实验)。

但是闲着也是闲着,我就随便用最左边的路由器去ping右边的路由器,能够ping通的。就当是玩玩了。

左一ping左二

在这里插入图片描述

左一ping右一

在这里插入图片描述

(5)交换机的基本配置

交换机是局域网中最重要的设备,交换机是基于MAC 来进行工作的。和路由器类似,交换机也有IOS,IOS 的基本使用方法是一样的。
交换机是第二层的设备,可以隔离冲突域。交换机是基于收到的数据帧中的源MAC 地址和目的MAC 地址来进行工作。交换机的作用主要有这么两个:一个是维护CAM(ContextAddress Memory)表,该表是MAC地址和交换机端口的映射表;另一个是根据CAM 来进行数据帧的转发。交换机对帧的处理有三种:交换机收到帧后,查询CAM 表,如果能查询到目的计算机所在的端口,并且目的计算机所在的端口不是交换机接收帧的源端口,交换机将把帧从这一端口转发出去(Forward);如果该计算机所在的端口和交换机接收帧的源端口是同一端口,交换机将过滤掉该帧(Filter);如果交换机不能查询到目的计算机所在的端口,交换机将把帧从源端口以外的其他所有端口上发送出去,这称为泛洪(Flood),当交换机接收到的是帧是广播帧或者多播帧,交换机也会泛洪帧。以太网交换机转发数据帧有三种交换方式。

(1)存储转发(Store-and-Forward)
存储转发方式是先存储后转发的方式。它把从端口输入的数据帧先全部接收并存储起来;然后进行CRC(循环冗余码校验)检查,把错误帧丢弃;最后才取出数据帧目的地址,查找地址表后进行过滤和转发。存储转发方式延迟大;但是它可以对进入交换机的数据包进行高级别的错误检测。这种方式可以支持不同速度的端口间的转发。

(2)直接转发(Cut-Through)
交换机在输入端口检测到一个数据帧时,检查该帧的帧头,只要获取了帧的目的地址,就开始转发帧。它的优点是:开始转发前不需要读取整个完整的帧,延迟非常小。它的缺点是:不能提供错误检测能力。

(3)无碎片(Fragment-Free)
这是改进后的直接转发介于前两者之间的一种解决方法。无碎片法在读取数据帧的长前64个字节后就开始转发该帧。这种方式虽然不提供数据校验,但是能够避免多数的错误。它的数据处理速度比直接转发方式慢,但比存储转发方式快许多。CISCO 交换机和路由器一样,本质上也是一台特殊的计算机,也有CPU、RAM 等部件。也采用IOS,所以交换机的很多基本配置(例如密码、主机名等)和路由器是类似的。

下面是实验界面
在这里插入图片描述

主要有3个板块,分别教我们设置了交换机自身属性配置,与PC连接,与路由器连接。

其中:

以与PC连接为例,讲解了如何配置连接。

以与路由器连接为例,讲解了如何设置端口的安全管理。

下面分别来看看

①配置交换机属性

Switch>en
Switch#conf t
Switch(config)#hostname S1
S1(config)#no ip domain-lookup
关闭域名查找
S1(config)#line console 0
S1(config-line)#logging synchronous
设置输入同步
S1(config-line)#exec-timeout 10 00
设置执行会话时间
S1(config-line)#end

②配置交换机与PC连接

Switch>enable	
Switch#config terminal
Switch(config)#hostname SW1
配置主机名
SW1(config)#enable secret cisco
配置密码
SW1(config)#line vty 0 15
SW1(config-line)#password cisco
SW1(config-line)#login

默认时交换机的以太网接口是开启的。对于交换机的
以太网口可以配置其双工模式、速率等。

SW1(config)#interface f0/1

SW1(config-if)#duplex auto
duplex 用来配置接口的双工模式,full——全双工、
half——半双工、auto——自动检测双工的模式

SW1(config-if)#speed auto
speed 命令用来配置交换机的接口速度,10——10M、
100——100M、1000——1000M、auto——自动检测接
口速度。

SW1(config)#int vlan 1
SW1(config-if)#ip add 192.168.1.254 255.255.255.0
SW1(config-if)#no shutdown
SW1(config)#ip default-gateway 192.168.1.100
交换机也允许被telnet,这时需要在交换机上配置一个IP
地址,这个地址是在VLAN 接口上配置的
以上在VLAN 1 接口上配置了管理地址,接在VLAN 1上的
计算机可以直接进行telnet该地址。为了其他网段的计算
机也可以telnet 交换机,我们在交换机上配置了缺省网关。

SW1#copy running-config startup-config
保存配置

③配置端口安全

SW1(config)#int f0/1
SW1(config-if)#switch mode access
以上命令把端口改为访问模式,即用来接入计算机

SW1(config-if)#switch port-security
打开交换机的端口安全功能。

SW1(config-if)#switch port-security maximum 1
只允许该端口下的MAC 条目最大数量为1,即只允许一个设备接入

SW1(config-if)#switch port-security violation shutdown
S1(config-if)#switch port-securitiy violation { protect | shutdown | restrict }

	protect:当新的计算机接入时,如果该接口的MAC 条目超过最大数量,则这个新的计算
机将无法接入,而原有的计算机不受影响。
	shutdown:当新的计算机接入时,如果该接口的MAC 条目超过最大数量,则该接口将会
被关闭,则这个新的计算机和原有的计算机都无法接入,需要管理员使用“no shutdown”
命令重新打开。
	restrict:当新的计算机接入时,如果该接口的MAC 条目超过最大数量,则这个新的计
算机可以接入,然而交换机将向发送警告信息。

SW1(config-if)#switchport port-security mac-address 0001.63e1.9702
允许R1路由器从F0/1接口接入

SW1(config-if)#shutdown
SW1(config-if)#no shutdown

SW1(config)#int vlan 1
SW1(config-if)#no shut
SW1(config-if)#ip add 172.16.0.1 255.255.0.0
配置交换机的管理地址

SW1#show mac-address-table
          Mac Address Table
-------------------------------------------

Vlan    Mac Address       Type        Ports
----    -----------       --------    -----

   1    0001.63e1.9702    STATIC      Fa0/1
R1的MAC已经被登记在f0/1接口,并且表明是静态加入的

SW1#show int f0/1
FastEthernet0/1 is down, line protocol is down (err-disabled)
  Hardware is Lance, address is 00e0.f714.de01 (bia 00e0.f714.de01)
  MTU 1500 bytes, BW 100000 Kbit, DLY 1000 usec,
     reliability 255/255, txload 1/255, rxload 1/255
以上表明F0/1接口因为错误而被关闭。非法设备移除后,在F0/1接口下,执行“shutdown”
和“no shutdown”命令可以重新打开该接口。

SW1#show port-security
可以查看端口安全的设置情况

这里用R1在正常的情况之外,模拟了另外的设备的接入,从而触发了SW1上设置的安全规则,导致该端口被关闭。

R1(config)#int f0/1
R1(config-if)#no shutdown
R1(config-if)#ip add 172.16.0.2 255.255.0.0

R1#show int f0/1
FastEthernet0/1 is up, line protocol is up (connected)
  Hardware is Lance, address is 0001.63e1.9702 (bia 0001.63e1.9702)
  检查F0/1接口的MAC地址
  Internet address is 172.16.0.2/16
  MTU 1500 bytes, BW 100000 Kbit, DLY 100 usec, rely 255/255, load 1/255

R1#ping 172.16.0.1

R1(config)#int f0/1
R1(config-if)#mac-address 1234.5678.abcd
在R1上修改F0/1的MAC地址为另一个地址,模拟是另外一台设备接入。

%LINK-5-CHANGED: Interface FastEthernet0/1, changed state to administratively down
%LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet0/1, changed state to down
%LINEPROTO-5-UPDOWN: Line protocol on Interface Vlan1, changed state to down
这些信息为SW1在R1的F0/1接口更改MAC地址后出现的信息
以上提示F0/1接口被关闭

操作的话,就做了一下这个异常导致端口关闭的这个异常。

在这里插入图片描述

4.2 了解 ICMP 数据包的格式

任务:使用 Packet Tracer 捕获并研究 ICMP 报文,使用的网络中包含一台通过路由器连接到服务器的 PC,并且捕获从 PC 发出的 ping 命令的输出。本次实验的任务是使用 Packet Tracer 捕获和研究 ICMP 报文。

【注意】本实验没有提供现成的文件,故需要自己搭建。

实验拓扑图:

在这里插入图片描述

(0)准备.设置PC,Server,Router参数

设置参数时注意不要与后面的192.168.253.1和192.168.254.254这两个形成干扰就可以。

我想搞仿真一点,就把我自己的电脑当作那个PC,于是我查了查自己电脑的ip,一般PC的IP为192.168.1.x,这是一个常见的内部IP地址,我决定就这么用了。

win+R>cmd
>ipconfig #查询本机ip   
   IPv4 地址 . . . . . . . . . . . . : 192.168.1.106
   子网掩码  . . . . . . . . . . . . : 255.255.255.0
   默认网关. . . . . . . . . . . . . : 192.168.1.1


>ipconfig /all | findstr "DNS" #查询DNS服务器ip
   DNS 服务器  . . . . . . . . . . . : 223.5.5.5

①设置PC

在这里插入图片描述

②设置Server

在这里插入图片描述

因为我们之后要ping网址的,所以要现在Server上提供DNS服务

在这里插入图片描述

③设置Router

分别设置与PC和Server连接的两个端口

【注意】PortStatus一定要设置为ON,否则无法联通,拓扑图上有两个绿点表示连接成功。

在这里插入图片描述
在这里插入图片描述

对应关系如下
在这里插入图片描述

(1)步骤 1. 捕获并评估到达 Eagle Server 的 ICMP 回应报文

进入 Simulation(模拟)模式。Event List Filters(事件列表过滤器)设置为只显示 ICMP 事件。
在这里插入图片描述

单击 Pod PC。从 Desktop(桌面)打开 Command Prompt(命令提示符)。 输入命令 ping eagle-server.example.com 并按 Enter 键。最小化 Pod PC 配置窗口。单击 Auto Capture/Play(自动捕获/播放)按钮以运行模拟和捕获事件。收到 “No More Events”(没有更多事件)消息时单击 OK(确定)。

因为我们这里的网址是www.eagle-server.example.com,所以我们使用PC0来ping这个网址。

在这里插入图片描述

抓到的包如下

在这里插入图片描述

在 Event List(事件列表)中找到第一个数据包,即第一条回应请求,然后单击 Info(信息)列中的彩色正方形。单击事件列表中数据包的 Info(信息)正方形时,将会打开 PDU Information(PDU 信息)窗口。

在这里插入图片描述

单击 Outbound PDU Details(出站 PDU 详细数据)选项卡以查看 ICMP 报文的内容。请注意,Packet Tracer 只显示 TYPE(类型)和 CODE(代码)字段。

在这里插入图片描述

要模拟 Wireshark 的运行,请在其中 At Device(在设备)显示为 Pod PC 的下一个事件中,单击其彩色正方形。这是第一条应答。单击 Inbound PDU Details(入站 PDU 详细数据)选项卡以查看 ICMP 报文的内容。

查看 At Device(在设备)为 Pod PC 的其余事件。完成时单击 Reset Simulation(重置模拟)按钮。

(2)步骤 2. 捕获并评估到达 192.168.253.1 的 ICMP 回应报文。

任务:使用 IP 地址 192.168.253.1 重复步骤 1。观看动画,注意哪些设备参与交换。

在步骤1中,目的IP与主机不在同一网段,需要通过网关找到下一跳地址。

但是在步骤2中,如果地址设置为192.168.253.1,直接在命令行输入ping指令,应该在网关发现不在一个子网内,然后没发现对应的路径,就直接不可达了。

命令行运行结果如下:

在这里插入图片描述

ICMP报文捕获结果如下:
在这里插入图片描述

对比命令行反馈结果和ICMP报文捕获,可以很明显地发现,PC0向192.168.253.1发送的4个ICMP报文都没有得到回应,因为没办法到达。

回答问题:因为访问无法到达,因此参与的设备没有服务器,只有PC和路由器。

(3)步骤 3. 捕获并评估超过 TTL 值的 ICMP 回应报文。

Packet Tracer 不支持 ping -i 选项。在模拟模式中,可以使用 Add Complex PDU(添加复杂 PDU)按钮(开口的信封)设置 TTL。

单击 Add Complex PDU(添加复杂 PDU)按钮,然后单击 Pod PC(源)。将会打开 Create Complex PDU(创建复杂 PDU)对话框。

在这里插入图片描述

在 Destination IP Address:(目的 IP 地址:) 字段中输入 192.168.254.254。将 TTL: 字段中的值改为 1。在 Sequence Number(序列号)字段中输入 1。在 Simulation Settings(模拟设置)下选择 Periodic(定期) 选项。在 Interval(时间间隔)字段中输入 2。单击 Create PDU(创建 PDU)按钮。此操作等同于从 Pod PC 上的命令提示符窗口发出命令 ping -t -i 1 192.168.254.254。

在这里插入图片描述

重复单击 Capture/Forward(捕获/转发)按钮,以在 Pod PC 与路由器之间生成多次交换。

在这里插入图片描述

在 Event List(事件列表)中找到第一个数据包,即第一个回应请求。然后单击 Info(信息)列中的彩色正方形。单击事件列表中数据包的 Info(信息)正方形时,将会打开 PDU Information(PDU 信息)窗口。
在这里插入图片描述

在这里插入图片描述

单击 Outbound PDU Details(出站 PDU 详细数据)选项卡以查看 ICMP 报文的内容。
在这里插入图片描述

要模拟 Wireshark 的运行,请在其中 At Device(在设备)为 Pod PC 的下一个事件中,单击其彩色正方形。这是第一条应答。单击 Inbound PDU Details(入站 PDU 详细数据)选项卡以查看 ICMP 报文的内容。

查看 At Device(在设备)为 Pod PC 的其余事件。

4.3 检查 ARP 交换

(★)ARP简介

TCP/IP 使用地址解析协议 (ARP) 将第 3 层 IP 地址映射到第 2 层 MAC 地址。当帧进入网络时,必定有目的 MAC 地址。为了动态发现目的设备的 MAC 地址,系统将在 LAN 上广播 ARP 请求。拥有该目的 IP 地址的设备将会发出响应,而对应的 MAC 地址将记录到 ARP 缓存中。LAN 上的每台设备都有自己的 ARP 缓存,或者利用 RAM 中的一小块区域来保存 ARP 结果。

ARP 缓存定时器将会删除在指定时间段内未使用的 ARP 条目。具体时间因设备而异。例如,有些 Windows 操作系统存储 ARP 缓存条目的时间为 2 分钟,但如果该条目在这段时间内被再次使用,其 ARP 定时器将延长至 10 分钟。ARP 是性能折衷的极佳示例。如果没有缓存,每当帧进入网络时,ARP 都必须不断请求地址转换。这样会延长通信的延时,可能会造成 LAN 拥塞。反之,无限制的保存时间可能导致离开网络的设备出错或更改第 3 层地址。

网络工程师必须了解 ARP 的工作原理,但可能不会经常与协议交互。ARP 是一种使网络设备可以通过 TCP/IP 协议进行通信的协议。如果没有 ARP,就没有建立数据报第 2 层目的地址的有效方法。但 ARP 也是潜在的安全风险。例如,ARP 欺骗或 ARP 中毒就是攻击者用来将错误的 MAC 地址关联放入网络的技术。攻击者伪造设备的 MAC 地址,致使帧发送到错误的目的地。手动配置静态 ARP 关联是预防 ARP 欺骗的方法之一。您也可以在 Cisco 设备上配置授权的 MAC 地址列表,只允许认可的设备接入网络。

(0)准备

建立拓扑图如下:
在这里插入图片描述

设置两个PC的IP地址分别如下:

  • 192.168.1.1
  • 192.168.1.2
(1)任务 1:使用 Packet Tracer 的 arp 命令
①步骤 1. 访问命令提示符窗口。

单击 PC 1A 的 Desktop(桌面)中的 Command Prompt(命令提示符)按钮。arp 命令只显示 Packet Tracer 中可用的选项。

在这里插入图片描述

②步骤 2. 使用 ping 命令在 ARP 缓存中动态添加条目。

ping 命令可用于测试网络连通性。通过访问其它设备,ARP

关联会被动态添加到 ARP 缓存中。在 PC 1A 上 ping 地址 255.255.255.255,并发出 arp -a 命令查看获取的 MAC 地址。

在此任务结束时,完成率应为 100%。

【注意】这里没有用255.255.255.255,而是直接使用了目的ip地址,原因在于我们这里改变了拓扑图,使用了两个PC。如果是服务器的话可能会获得回应,但PC的操作系统不会回应广播的ping,只会响应明确地址且目标为自己的ping(这也是为了安全),所以我们这里直接ping对方,但不影响实验的效果。

在这里插入图片描述

原来ARP表中是没有的,ping结束后有目标地址的表项。

(2)任务 2:使用 Packet Tracer 检查 ARP 交换
①步骤 1. 配置 Packet Tracer 捕获数据包。

进入模拟模式。确认 Event List Filters(事件列表过滤器)只显示 ARP 和 ICMP 事件。

在这里插入图片描述

②步骤 2. 准备 Pod 主机计算机以执行 ARP 捕获。

在 PC 1A 上使用 Packet Tracer 命令 arp -d。 然后 Ping 地址 255.255.255.255。

操作截图:
在这里插入图片描述

③步骤 3. 捕获并评估 ARP 通信。

在发出 ping 命令之后,单击 Auto Capture/Play(自动捕获/播放)捕获数据包。当 Buffer Full(缓冲区已满)窗口打开时,单击 View Previous Events(查看以前的事件)按钮。

捕获如下:
在这里插入图片描述

分析ARP

请求报文:任何时候,当主机需要找出这个网络中的另一个主机的物理地址时,它就可以发送一个ARP请求报文,这个报文包好了发送方的MAC地址和IP地址以及接收方的IP地址。因为发送方不知道接收方的物理地址,所以这个查询分组会在网络层中进行广播。

响应报文:局域网中的每一台主机都会接受并处理这个ARP请求报文,然后进行验证,查看接收方的IP地址是不是自己的地址,只有验证成功的主机才会返回一个ARP响应报文,这个响应报文包含接收方的IP地址和物理地址。这个报文利用收到的ARP请求报文中的请求方物理地址以单播的方式直接发送给ARP请求报文的请求方。
在这里插入图片描述

ARP报文格式如下:

在这里插入图片描述

三、实验感悟

对路由器与交换机的一些基础知识有了一些基础的了解,包括对路由器配置,静态路由,子网划分,配置RIP,交换机配置等。对网络层和链路层进行了更为深入的了解,特别是网络层的ICMP和链路层的ARP进行了比较细致的了解。

此外对于PacketTracer的具体使用也有更为深入的了解。

能够搭建模拟模型,进行仿真,并进行一定程度的报文解读。

感觉PacketTracer真的是一个很好的学习工具,功能十分强大。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1315561.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【基于Python的信用卡客户历史数据分析与挖掘】

基于Python的信用卡客户历史数据分析与挖掘 前言技术栈数据获取与预处理描述性分析建立预测模型模型评估与结果展示Web应用搭建结语 前言 随着金融科技的迅猛发展&#xff0c;信用卡客户的历史数据分析变得越来越重要。本文将介绍如何使用Python、Sklearn和Flask对公开数据集进…

1.1 【应用开发】应用开发简介

写在前面 Screen图形子系统基于客户端/服务器模型&#xff0c;其中应用程序是请求图形服务的客户端&#xff08;Screen&#xff09;。它包括一个合成窗口系统作为这些服务之一&#xff0c;这意味着所有应用程序渲染都是在离屏缓冲区上执行的&#xff0c;然后可以在稍后用于更新…

SpringBoot+Redis 10分钟搞定海量重复提交问题

前言 在实际的开发项目中,一个对外暴露的接口往往会面临很多次请求&#xff0c;我们来解释一下幂等的概念&#xff1a;任意多次执行所产生的影响均与一次执行的影响相同。按照这个含义&#xff0c;最终的含义就是 对数据库的影响只能是一次性的&#xff0c;不能重复处理。如何…

BFC — 张天禹

文章目录 学习链接BFC1. 什么是BFCW3C 上对 BFC 的定义MDN 上对 BFC 的描述更加通俗的描述 2. 开启了BFC能解决什么问题3. 如何开启BFC 演示演示1子元素margin塌陷问题使用BFC解决问题完美解决塌陷问题 演示2被浮动元素覆盖问题使用BFC解决问题例1例2例3例4延申&#xff08;左右…

LeetCode 2415. 反转二叉树的奇数层:深度优先搜索(DFS)

【LetMeFly】2415.反转二叉树的奇数层&#xff1a;深度优先搜索(DFS) 力扣题目链接&#xff1a;https://leetcode.cn/problems/reverse-odd-levels-of-binary-tree/ 给你一棵 完美 二叉树的根节点 root &#xff0c;请你反转这棵树中每个 奇数 层的节点值。 例如&#xff0c…

leetcode面试经典二分系列刷题心得

闲来无事巩固算法基础&#xff0c;发现自己的二分几乎从来没系统刷过题&#xff0c;基础很是薄弱。 二分法不愧称为新人杀手&#xff0c;刷起来很是吃力&#xff0c;感觉明明学了几套二分模板&#xff0c;但是却不知道如何去运用&#xff0c;很多读者在初次尝试刷二分题时候&a…

“你基础不太行啊”

一、创建对象的五种方式 直接new关键字反序列化clone反射class.newInstance反射class.getConstructor 1.1、直接new关键字 1.2、Clone &#xff08;需要实现Cloneable接口&#xff09; 1.3、反射class.newInstance 1.4、反射class.getConstructor 1.5、反序列化 二、与equals…

bottom-up-attention-vqa-master 成功复现!!!

代码地址 1、create_dictionary.py 建立词典和使用预训练的glove向量 &#xff08;1&#xff09;create_dictionary() 遍历每个question文件取出所关注的question部分&#xff0c;qs 遍历qs&#xff0c;对每个问题的文本内容进行分词&#xff0c;并将分词结果添加到字典中&…

小红书商品详情API:电商助力

一、引言 随着互联网的普及和电商行业的快速发展&#xff0c;消费者对于商品信息的获取方式也在不断变化。小红书作为一款以内容分享为主的社交电商平台&#xff0c;吸引了大量用户。为了满足用户对商品信息的快速获取需求&#xff0c;小红书提供了商品详情API接口。本文将探讨…

离散型概率密度函数的分布列⇔分布函数

目录 一、super误区 1.分布函数的定义 二、分布列⇒分布函数 二、分布列⇐分布函数 一、super误区 我在读定义的时候陷入了一个误区&#xff0c;与大家分享一下。 1.分布函数的定义 由于是离散型的概率密度函数&#xff0c;我把他抽象到数轴上理解&#xff1a; 如下分布…

线程的介绍

首先我们来了解一下线程是什么&#xff1a; 首先我们介绍一下程序是什么&#xff1f;程序就是我们编写的代码就叫程序&#xff0c;当我们程序运行的时候则称为进程&#xff0c;在我们现实生活中哪些用到了进程&#xff0c;就比如说我们qq&#xff0c;微信&#xff0c;百度网盘…

兼容性测试:确保系统在各种环境中正常运行

随着数字化时代的到来&#xff0c;软件应用在不同的设备、操作系统和浏览器上运行的需求变得日益重要。为了确保用户体验的一致性和系统的稳定性&#xff0c;兼容性测试变得至关重要。本文将介绍如何使用兼容性测试&#xff0c;以保证软件在各种环境中无缝运行。 1. 确定目标平…

ssl证书问题导致本地启动前端服务报500

报错如下&#xff1a;注意查看报错信息 问题&#xff1a;系统原是http&#xff0c;后台调整为https后&#xff0c;ssl证书有点问题&#xff0c; vue项目本地服务&#xff0c;使用代理&#xff0c;webpack默认&#xff0c;证书强校验&#xff0c;导致请求无法发出&#xff0c;后…

Linear classifiers——线性分类器

1.(Generalized) Linear classifiers——广义线性分类器 1.1 模型 假如有两类数据&#xff0c;类别标签为y 1和y -1 我们可以使用一个线性函数将其分类&#xff0c;二维形式 通常x增加一个恒等于1的维度&#xff0c;可以将b合并进w&#xff0c;于是更一般的形式为 ,就相当于…

centos离线安装mosquitto

1.x86_64架构centos7操作系统mosquitto包 本次真正要安装的机器是x86_64架构的AMD Ryzen 3 &#xff0c;操作系统是centos7 先找一台能联网的centos7机器 添加 EPEL 软件库 yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm下载rpm包 …

C++使用UDP

C使用UDP 对C使用UDP做了简单封装&#xff0c;可直接运行 头文件udp.h #pragma once #include <Winsock.h> #pragma comment(lib,"WS2_32.lib")#define LOCAL_IP_ADDR INADDR_ANY //当前应用程序接收的IP地址 #define LOCAL_PORT 9527 …

PixPin带有截图/贴图/长截图/文字识别/标注的截图工具,很好用

官网地址&#xff1a;PixPin 截图/贴图/长截图/文字识别/标注 | PixPin 截图/贴图/长截图/文字识别/标注 确实挺好用的&#xff0c;推荐一下

UE4 实用材质图形

渐变圆 光晕效果&#xff1a; 十字光晕&#xff1a;

1840_emacs org-mode babel的语言支持

Grey 全部学习内容汇总&#xff1a; GitHub - GreyZhang/g_org: my learning trip for org-mode 1840_emacs org-mode babel的语言支持 主题由来介绍 Babel是org-mode中支持文学式编程以及可重现研究的一个核心模块&#xff0c;之前看过这个插件的优点是功能完善且支持的语…

本地运行大语言模型并可视化(Ollama+big-AGI方案)

目前有两种方案支持本地部署&#xff0c;两种方案都是基于llamacpp。其中 Ollama 目前只支持 Mac&#xff0c;LM Studio目前支持 Mac 和 Windows。 LM Studio&#xff1a;https://lmstudio.ai/ Ollama&#xff1a;https://ollama.ai/download 本文以 Ollama 为例 step1 首先下…