北航研究生计算机网络实验_实验三 网络层实验

实验三  网络层实验

  1. 将执行命令的结果填入下表:

     

     

     

     

     

     

2.6.1中步骤2中的执行结果

 

2.6.1中步骤4中的执行结果

 

2.6.2中步骤11中的执行结果

 

   2.分析2.6.1步骤3中截获的报文,统计“Protocol”字段填空:有   2  ARP报文,有 8 ICMP报文。在所有报文中,ARP报文中ARP协议树的“Opcode”字段有两个取值12,两个取值分别表达什么信息?

     

    

     

    答:Opcode 字段的取值1,2分别对应的信息为: request(1), reply(2)

 

  3.根据2.6.1步骤6分析ARP报文结构:选中第一条ARP请求报文和第一条ARP应答报文,将ARP请求报文和ARP应答报文中的字段信息填入下表:

     

     

字段项

ARP请求数据报文

ARP应答数据报文

链路层Destination

ff:ff:ff:ff:ff:ff(broadcast)

00:0c:29:70:fc:f5

链路层Source

00:0c:29:70:fc:f5

00:0c:29:85:69:df

网络层Sender MAC Address

00:0c:29:70:fc:f5

00:0c:29:85:69:df

网络层Sender IP Address

192.168.1.22

192.168.1.21

网络层Target MAC Address

00:00:00:00:00:00

00:0c:29:70:fc:f5

网络层Target IP Address

192.168.1.21

192.168.1.22

4.1)比较ping1-学号中截获的报文信息,少了什么报文?简述ARP Cache的作用。

     

     

     

    答:少了arp报文,ARP Cache的作用是存储ARP协议,而ARP协议适用于匹配MAC地址和设备的硬件地址的。在通信前,主机会通过arpIP地址解析出对应的mac地址,存放在arp表中,以便进行通信。

2)按照图-4重新进行组网,并确保连线正确。修改计算机的IP地址,并将PC A的默认网关修改为192.168.1.10,PC B的默认网关修改为192.168.2.10。考虑如果不设置默认网关会有什么后果?

    答:如果不设置默认网关的话,会无法访问不同网段的主机,但是仍能访问同一网段内的主机。

5.根据2.6.2步骤12分析ARP报文结构:选中第一条ARP请求报文和第一条ARP应答报文,将ARP请求报文和ARP应答报文中的字段信息与上表进行对比。与ARP协议在相同网段内解析的过程相比较,有何异同点?

答:区别在于网关的作用,不在同一网段内就不能直接投递,需通过默认网关间接发送。

相同网段

不同网段

请求报文网络层 Target IP Address

PCBIP

PCA的默认网关

应答报文链路层 Source

PCBMAC地址

PCA的默认网关S1 E1/0/1MAC地址

应答报文网络层 Sender MAC Address

PCBMAC地址

PCA的默认网关S1 E1/0/1MAC地址

应答报文网络层 Sender IP Address

PCBIP

PCA的默认网关的IP 

   

   

   6. 根据3.6.1步骤2——在PC A PC B上启动Wireshark软件进行报文截获,然后PC A ping PC B,分析截获的ICMP报文: 共有  8 ICMP报文,分别属于哪些种类?对应的种类和代码字段分别是什么?请分析报文中的哪些字段保证了回送请求报文和回送应答报文的一一对应?

  答:

种类

代码字段

request

Type: 8 (Echo (ping) request)

reply

Type: 0 (Echo (ping) reply)

  网络层的SourceDestination字段保证了回送请求报文和回送应答报文的一一对应。

   

   

   

   

   7. 根据3.6.1步骤3——在PC A PC B上启动Wireshark软件进行报文截获,运行pingtest程序,设置地址掩码请求报文参数,分析截获报文填写下表:

   

   

地址掩码请求报文

地址掩码应答报文

ICMP字段名

字段值

ICMP字段名

字段值

Type

17

Type

18

Code

0

Code

0

Checksum

0xe3ff

Checksum

0xe3fe

Identifier(BE)

2560 (0x0a00)

Identifier(BE)

2560 (0x0a00)

Identifier(LE)

10 (0x000a)

Identifier(LE)

10 (0x000a)

Sequence number (BE)

256 (0x0100)

Sequence(BE)

256 (0x0100)

Sequence number (LE)

1 (0x0001)

Sequence(LE)

1 (0x0001)

Address mask

0.0.0.0 (0x00000000)

Address mask

255.255.255.0 (0xffffff00)

  8.根据3.6.1步骤4——在PC A PC B上启动Wireshark软件进行报文截获,运行pingtest程序,设置时间戳请求报文参数,分析截获报文填写下表:

   

  

时间戳请求报文

时间戳应答报文

ICMP字段名

字段值

ICMP字段名

字段值

Type

13

Type

14

Code

0

Code

0

Checksum

0xe7ff

Checksum

0x1c96

Identifier(BE)

2560 (0x0a00)

Identifier(BE)

2560 (0x0a00)

Identifier(LE)

10 (0x000a)

Identifier(LE)

10 (0x000a)

Sequence number (BE)

256 (0x0100)

Sequence(BE)

256 (0x0100)

Sequence number (LE)

1 (0x0001)

Sequence(LE)

1 (0x0001)

Originate timestamp

0 seconds after midnight UTC

Originate timestamp

0 seconds after midnight UTC

Receive timestamp

0 seconds after midnight UTC

Receive timestamp

13 hours, 54 minutes, 42.281 seconds after midnight UTC

Transmit timestamp

0 seconds after midnight UTC

Transmit timestamp

13 hours, 54 minutes, 42.281 seconds after midnight UTC

通过上述实验,仔细体会ICMP询问报文的作用。

  9. 根据3.6.2中步骤5回答:

  (1) 请比较这两种情况有何不同?

   答:首先,由于pingIP地址都与PCA不同网段,因此PCA会将报文发送给默认网关S1E1/0/1

  对于第一种情况:ping 10.1.3.2010.1.3.20S1E1/0/23端口的子网内,因此S1会将报文发送到E1/0/23端口。

  对于第一种情况:ping 10.1.4.1010.1.4.10不在S1的路由表中,因此S1认为10.1.4.10是不可达的,因此会回复Destination unreachable。  

  

     

  (2) 截获了哪种ICMP差错报文?其类型和代码字段值是什么?此报文的ICMP协议部分又分为了几部分?其作用是什么?

   答:截取了终点不可达差错报文,类型为Destination unreachable,代码字段为3。此报文的ICMP协议部分又包括:Code,值为0代表网络不可达;封装的源Echo请求ICMP报文的IP层和ICMP层,表示该差错报文来自来源于一个从10.1.2.1010.1.4.10Echo请求。

 

  10.根据3.6.2中步骤6回答:

  (1) 结合报文内容,简述tracert的工作过程。

   答:首先,PCA运行tracert向目的地址PCB发送具有不同IP生存时间(TTLTime To Live)的ICMP Echo请求报文,在PCAPCB的路径上的每个路由都要在转发该ICMP报文时将其TTL-1

    当TTL = 0时,路由器向源主机PCA发送ICMP超时差错报文。

    而PCA通过向PCB发送TTL12......nEcho报文就可以获得PCAPCB的所有路径信息

   

   

(2) 截获了哪种ICMP差错报文?其类型和代码字段值是什么?

 答:截获到的是超时报文,类型为11Time-to-live exceeded ,代码字段为0Time to live exceeded in transit);封装的源Echo请求ICMP报文的IP层和ICMP层,表示该差错报文来自来源于一个从10.1.2.1010.1.4.10Echo请求。

 

  11.根据4.6中步骤1,,写出tracert命令用到了IP协议报文的哪几个字段?

 答:tracert命令用到IP协议报文的字段有:IP生存时间TTLTime To Live)。

 

  12.根据4.6中步骤2回答:观察PC APC B能否 ping通,结合截获报文分析原因。

   答:无法ping通,PCA上截获了ARP的广播请求报文,询问10.1.3.10的物理地址(Who has 10.1.3.10),而PCB上没有截获到任何相关报文。

  这是因为改变地址掩码后,PCBIP地址 & PCA的子网掩码 = PCAIP地址 & PCA的子网掩码(& 指代按位取与)。因此PCAPCB经过PCA子网掩码mask之后的网络地址是一样的,从而PCAPCB的报文会直接交付到本网络,因此,PCA会直接发送ARP请求PCB的物理地址,这种行为显然是不会有应答的,因此PCA不能pingPCB

   

   13. 根据4.6中步骤3填写下表:

   

Destination/Mask

Protocol

Pre

Cost

Nexthop

Interface

10.1.2.0/24

Direct

0

0

10.1.2.1

Vlan2

10.1.2.1/32

Direct

0

0

127.0.0.1

InLoop0

10.1.3.0/24

Direct

0

0

10.1.3.1

Vlan3

10.1.3.1/32

Direct

0

0

127.0.0.1

InLoop0

127.0.0.0/8

Direct

0

0

127.0.0.1

InLoop0

127.0.0.1/32

Direct

0

0

127.0.0.1

InLoop0

  14. 1)按照实验25.5PPP协议实验)图18配置路由器,两个路由器相互ping,看能否ping通。根据R1上的debug显示信息,画出IPCP协议在协商过程中的状态转移图(事件驱动、状态转移)。

  答:

  

  shutdown

  

  undo shutdown

   

2将路由器R2的接口S0/0的IP地址改为10.0.0.1/24,两台路由器能否ping通?并解释为什么?注意体会IPCP协议的特点。(查看IPCP协议协商过程的debug信息)

 答:可以ping通。因此为IPCP协议负责建立、使能和终止IP模块,并给用户分配一些上网必须的参数。地址修改后,IPCP重新协商再次达到打开状态,使得链路联通。

 

   15. 根据5.6中步骤5(选做)

   

  1)在截获报文中,有  3 ARP报文,  10 ICMP:Echo报文, 5 ICMP:Echo Reply报文, 15 IP报文。

  (2)据ping命令执行过程的分析,将本属于同一个数据报文信息的报文截取出来,例如下列的报文,从信息栏中可以看出,报文1234属于同一数据段。

将第一个ICMP Request的报文分片信息填写下表。

字段名称

分片序号1

分片序号2

分片序号3

分片序号4

Identification”字段值

0x0002537

0x0002537

0x0002537

0x0002537

Flag”字段值

0x01

0x01

0x01

0x00

Frame offset”字段值

0

80

160

240

传输的数据量

80 bytes

80 bytes

80 bytes

68 bytes

分析表格内容,根据IP首部字段设置,体会分片过程。

(3) ping的数据部分为300字节,路由器的以太网端口MTU设为100字节。回送请求报文为何被分片为4片而不是3片?数据部分长度为多少时报文正好被分为3片?

 答:因为MTU100字节,而每个分片报文都有20字节IP头部信息,因此MTU100字节时,数据字段只有100 - 20 = 80字节,而 300 ÷ 80 = 3 ...... 60,因此需要分为4片。

当数据部分长度为80 * 3 = 240字节时,报文正好被分为3片。

 

16 综合型实验(VLAN间路由实验结果分析)

根据跨交换机VLAN间路由实验(PCC ping PCD)所截获报文,对整个网络层和数据链路层的报文转发过程进行分析

约定如下:数据帧中的MAC地址对:(目的MAC地址,源MAC地址)

数据报中的IP地址对:(目的IP地址,源IP地址) 

STEP 1
  • Ø  PCC发送的第一个报文类型是什么?为什么?

    答:arp,因为需要先获得MAC地址到物理地址的映射关系才能联通。

  • Ø  包含该报文数据帧中的VLAN idMACIP地址对是:VLAN id 2 

    MAC(ff.ff.ff.ff.ff.ff ,MAC_PCC)

    IP(192.168.2.1,192.168.2.11)

STEP 2
  • Ø  S2收到数据帧后,对其MAC地址表的操作是:

    答: 插入PCCMAC地址

    Ø  S2根据接收数据帧的端口所属VLAN,在其中插VLAN id  2  的标签,并向除接收端口外的所有VLAN2端口转发这个数据帧。

STEP 3
  • Ø  S1收到数据帧后,对其MAC地址表的操作是:

    答: 插入S2MAC地址。

    Ø  S1ARP 报文交付给网络层,S1对其arp表的操作是:

    答: 插入PACIP地址和MAC地址。

    Ø  S1发送的包含ARP Reply报文的数据帧中:(MAC_PCCMAC_ VLAN 2)

    (192.168.2.11,192.168.2.1);VLAN id 2 

STEP 4
  Ø S2收到数据帧后,对其MAC地址表的操作是:
  答: 插入S1MAC地址。
  Ø S2收到的数据帧后,根据VLAN标签和   ARP    表,决定向端口 E0/1  转发该数据帧;
  Ø S2根据端口 E0/13   trunk  类型端口,去掉VLAN标签,从端口   E0/1 转发该帧。
STEP 5

Ø  PCC收到ARP Reply报文,更新其ARP缓存,显示ARP缓存的命令:        

显示的内容:

Ø  PCC发送的包含ICMP Echo Request报文的数据帧中:VLAN id  2  

MAC(  MAC-S1    MAC-PCC    )

IP( 192.168.2.11  192.168.2.1 )

STEP 6

Ø  S2收到数据帧,根据其接收端口,添加VLAN2 标签;根据目的MAC,查找MAC地址表;将数据帧由  E0/13 端口转发给S1

Ø  S2转发的数据帧中:VLAN id   2  

MAC(   MAC-S1       MAC-PCC     )

IP(   192.168.2.1    192.168.2.11   )

STEP7

Ø  S1收到S2转发的数据帧,交付网络层,根据目的IP地址,查路由表,将报文路由到int vlan 3,准备通过数据链路层交付给PCD

Ø  但没有查到PCDMAC地址,就要发送包含ARP Request报文的数据帧; VLAN id   3   

MAC( ff.ff.ff.ff.ff.ff    MAC-S1  )

IP(  broadcast     192.168.2.11  )

STEP 8

Ø  S2收到S1转发的数据帧,根据其VLAN id 3 ,向除接收端口外的所有属于VLAN 3 的端口转发该数据帧;

Ø  S2根据端口 E0/13    trunk  类型端口,去掉VLAN标签,从端口 E0/24   转发该帧。

STEP 9

Ø  PCD收到S2转发的数据帧,更新其ARP缓存,其ARP缓存的内容是:

Interface: 192.168.3.11 --- 0x2

Internet AddressPhysical Address Type

192.169.3.138-91-d5-72-4b-95dynamic

Ø  PCD发送包含ARP reply报文的数据帧中;VLAN id  3   

MAC(  MAC-S1     MAC-PCD  )

IP(  192.168.3.1    192.168.3.11  )

STEP 10

Ø  S2收到数据帧,根据其接收端口,添加VLAN  3  的标签;根据目的MAC,查找MAC地址表;将数据帧由

  E0/13   端口转发给S1

Ø  S2转发的数据帧中:VLAN id 3     

MAC(  MAC-S1      MAC-PCD  )

IP(  192.168.3.1  192.168.3.11 )

STEP 11

Ø  S1收到数据帧,提交到网络层,更新其ARP表;

Ø  S1对包含ICMP Echo Request报文的数据帧的VLAN标签进行替换,由VLAN id=  2 变为VLAN id= 3 。封装的数据帧中:VLAN id  3   

MAC( MAC-PCD  MAC-S1 )

IP(  192.168.3.11    192.168.3.1 )

Ø  查找MAC地址表,由 E0/13 端口发送。

STEP 12

Ø  S2收到S1转发的数据帧,根据其VLAN id和目的MAC地址,向 E0/24  端口转发该数据帧;

Ø  同时,S2根据端口 E0/13   trunk    类型端口,去掉VLAN标签,从端口 E0/24   转发该帧。

STEP 13

Ø  PCD收到包含ICMP Echo Request报文的数据帧,发送包含ICMP Echo Reply报文的数据帧:VLAN id  3   

MAC(  MAC-S1     MAC-PCD  )

IP( 192.168.3.1   192.168.3.11 )

STEP 14

S2收到数据帧,根据其接收端口,添加VLAN 3  的标签;根据目的MAC,查找MAC地址表;将数据帧由 E0/13 端口转发给S1

Ø  S2转发的数据帧中:VLAN id 3    

MAC(  MAC-S1    MAC-PCD    )

IP( 192.168.3.1   192.168.3.11 )

STEP 15

Ø  S1收到S2转发的数据帧,交付网络层,根据目的IP地址,查路由表,将报文路由到int vlan2,准备通过数据链路层交付给PCC

Ø  查找PCCMAC地址,替换VLAN标签,封装并发送数据帧;VLAN id 2     

MAC( MAC-PCC   MAC-S1 )

IP(  192.168.2.11    192.168.2.1 )

STEP 16

Ø  S2收到S1转发的数据帧,根据其VLAN id和目的MAC地址,向 E0/1 端口转发该数据帧;

Ø  同时,S2根据端口 E0/13     trunk 类型端口,去掉VLAN标签,从端口 E0/1  转发该帧。

 

这样,PCC收到S2转发的包含ICMP Echo Reply报文的数据帧。第一轮ICMP询问和应答过程结束。

 

17. 设计型实验

如图,某公司要建设公司网络,从网络服务商处租用了一个C类地址202.108.100.*/24,接网络服务商路由器的地址如图所示,请给出设计方案,满足如下要求:

1) 网络划分子网数越多越好,但每个子网的主机数大于15台;

2) 所有用户都能上网,即要求所有主机都能ping通网络服务商路由器的E0口。

提示:如图所示,划分好子网后,在路由器和三层交换机上要配置静态路由。

 

 答:222.108.100.*/24 => 1101 1110 . 0110 1100 . 0110 0100 . * / 24

因此 /24一共可分配256个地址,而且每个子网主机数要求大于15台,也就是每个子网主机数最小为16台,可如此分配: 256 = 128 * 2 = (64 * 2) * 2 = ((32 * 2) * 2) * 2 = (((16 * 2) * 2) * 2) * 2 = 16 * 16

假如每个子网都分配16台主机,则可划分16个子网,前缀n都为/28

分配IP为:令k=16*(i-1), VLAN iIP202.108.100.k/28,其中i = 1,2,3,...,16。网络结构如题图,

猜你喜欢

转载自www.cnblogs.com/khunkin/p/12190763.html