首页 > 技术文章 > 路由-部分互联网络

xiaohuihui4956 2021-05-28 20:15 原文

验证理论

  1.不设置路由条件下实现部分互联网络互通

  2.OSPF条件下实现部分互联网络互通

  3.ISIS条件下实现部分互联网络互通

 

实验拓扑

 

 

 

 

 初始配置:

路由器上配置环回口及互联接口地址,未配置任何路由

LSW1:

vlan batch 10 20 30

#
interface GigabitEthernet0/0/1
port hybrid pvid vlan 10
port hybrid untagged vlan 10 20 30
#
interface GigabitEthernet0/0/2
port hybrid pvid vlan 20
port hybrid untagged vlan 10 20
#
interface GigabitEthernet0/0/3
port hybrid pvid vlan 30
port hybrid untagged vlan 10 30

 

初始结果:

AR1可以访问AR1,AR3。AR2,3之间不能互访

[AR1]ping -c 1 155.1.0.2
PING 155.1.0.2: 56 data bytes, press CTRL_C to break
Reply from 155.1.0.2: bytes=56 Sequence=1 ttl=255 time=180 ms

[AR1]ping -c 1 155.1.0.3
PING 155.1.0.3: 56 data bytes, press CTRL_C to break
Reply from 155.1.0.3: bytes=56 Sequence=1 ttl=255 time=40 ms

[AR3]ping 155.1.0.2
PING 155.1.0.2: 56 data bytes, press CTRL_C to break
Request time out
Request time out
Request time out

--- 155.1.0.2 ping statistics ---
3 packet(s) transmitted
0 packet(s) received
100.00% packet loss

 

结果分析:

在未设置任何路由时部分互联状态下,抓取R2去往R3的数据包,分析不能互通的根本原因

 在R1的g0/0/0接口抓包分析,发现只有AR2发送的ARP请求报文

 

AR2要访问AR3,先发送ARP 请求。其中源IP,源MAC是自己的地址,求IP地址为155.1.0.3的MAC地址。ARP数据包承载于数据帧中广播发送,LSW1收到这个数据帧之后记源转发,对于这个广播帧直接泛洪处理,于是发送给了AR1。AR1收到这个帧之后根据以太网头部类型字段0x0806判断为ARP报文,解封装之后发现请求的并不是AR1的155.1.0.1的地址,于是丢弃该报文并不回应。

 

 

一.

实验目的:

不设置路由条件下,实现部分互联网络互通

实验步骤:

第一步,查看AR1MAC地址,在AR2,AR3上增加IP地址是对方,MAC地址是AR1的静态ARP

[AR1]dis int g 0/0/0 | in address
IP Sending Frames' Format is PKTFMT_ETHNT_2, Hardware address is 00e0-fca1-6e33

[AR2]arp static 155.1.0.3 00e0-fca1-6e33

[AR3]arp static 155.1.0.2 00e0-fca1-6e33  

再次在AR1的g0/0/0进行抓包

AR1的MAC地址:00e0-fca1-6e33

AR2的MAC地址:00e0-fc25-270c

AR3的MAC地址:00e0-fc13-0a6b

[AR2]ping -c 1 155.1.0.3
PING 155.1.0.3: 56 data bytes, press CTRL_C to break
Reply from 155.1.0.3: bytes=56 Sequence=1 ttl=254 time=770 ms

 

 当发出一个ping包的时候在AR1上抓到了4个数据包,逐个进行分析:

1.源IP-AR2,目的IP是AR3,源MAC-AR2,但是目的MAC是AR1

 

 通过在AR2上手动配置了AR3的IP对应的ARP表项,使得AR2访问AR3时可以直接进行二层封装,无需再发送ARP请求。于是按照预设,目的MAC为AR1的MAC。

2.源IP是AR2,源MAC是AR1,目的IP是AR3,目的MAC是AR3

 

 当第一个数据帧到达AR1之后,因为目的MAC地址是AR1,所以AR1解封装数据帧,发现目标IP地址并不是接口的IP155.1.0.1,于是查询路由表,发现有可以到达155.1.0.3的路由,于是重新封装该数据包,所以,数据包里面的源目IP不便,源MAC变成了AR1。

3.源IP是AR3,源MAC是AR3,目的IP是AR2,目的MAC是AR1

 

 AR3收到AR1发过来的数据帧后,因为目的MAC是自己,所以解封装,发现目的IP也是自己,所以根据protocol=1,解封装数据包,交给ICMP处理。ICMP回复reply,再逐级封装成数据帧。因为是回复源IP为AR2的IP的ICMP请求,所以在封装时查询本地关于AR2的ARP信息,封装上这条ARP信息的MAC,即AR1

4.源IP是AR3,源MAC是AR1,目的IP是AR2,目的MAC是AR2

 

 类似于2,AR1解封装-》查路由表-》重新封装。将数据帧发给AR2,传输完成

 

 

二.

实验目的:

OSPF条件下,实现部分互联网络互通

实验步骤:

第一步:将每个路由器上的所有网段都宣告进OSPF 1 AREA 0 中

  注释:通过静态ARP是可以实现互通的,但是这里考虑的是另外的方法,所以删除之前创建的静态ARP条目

<AR2>reset arp static 

<AR3>reset arp static

此时是无法访问的。不能通的原因仍然没有变化——MA网络中转发路径最优原则(认为MA网络中所有站点都是可达的),AR2有AR3直连的路由,但是没有AR3的ARP信息,也请求不到AR3的MAC地址.。
[AR2]ping 155.1.0.3
PING 155.1.0.3: 56 data bytes, press CTRL_C to break
Request time out
Request time out
Request time out
Request time out
Request time out

 

第二步:更改3个路由器的接口网络类型为P2MP,等到邻居建立成功之后,在AR2上ping AR3

 ping一个包之后再次抓到了4个包

[AR2]ping -c 1 155.1.0.3
PING 155.1.0.3: 56 data bytes, press CTRL_C to break
Reply from 155.1.0.3: bytes=56 Sequence=1 ttl=254 time=100 ms

大致交互流程与静态ARP相同。区别在与规避ARP的方法。配置静态ARP使得终端本地有ARP条目,无需再发送ARP报文进行申请,而更改网络类型则是因为P2MP/P2P通过LCP学习到了对端接口的MAC地址,不需要也不能使用以太网的协议-arp来请求MAC地址

 

 第三步:当使用添加静态ARP时(p2mp没有DR/BDR选举,原理上等于多个p2p)需要注意,要使得AR1成为DR,因为2,3本质上不能独立互通,需要借助他们都可以和AR1通信的关系进行互通,所以需要AR1-AR2,AR1-AR3之间建立邻接关系。如果AR3成为DR,AR3因为要通过AR1才能和AR2通信,所以AR3只会和AR1建立邻接关系。因为只有DR/BDR才能和其他路由器建立邻接关系,所以AR1与AR2之间是邻居关系。这样的情况下,DR没有和所有其他路由器建立邻接关系。如果AR2上加入新的路由,无法通过OSPF同步到其他路由器上。

验证:将网络调整回BMA,添加静态ARP实现全互联。

通过修改优先级,将AR3修改为DR

 [AR1-GigabitEthernet0/0/0]ospf dr-priority 0 

[AR2-GigabitEthernet0/0/0]ospf dr-priority 0 

[AR3]dis ospf peer GigabitEthernet 0/0/0

OSPF Process 1 with Router ID 150.1.3.3
Neighbors

Area 0.0.0.0 interface 155.1.0.3(GigabitEthernet0/0/0)'s neighbors
Router ID: 150.1.1.1 Address: 155.1.0.1
State: Full Mode:Nbr is Slave Priority: 0
DR: 155.1.0.3 BDR: None MTU: 0
Dead timer due in 32 sec
Retrans timer interval: 5
Neighbor is up for 00:02:28
Authentication Sequence: [ 0 ]

此时AR1与AR3full连接,但是和AR2 2-way连接

[AR1]dis ospf peer brief

OSPF Process 1 with Router ID 150.1.1.1
Peer Statistic Information
----------------------------------------------------------------------------
Area Id Interface Neighbor id State
0.0.0.0 GigabitEthernet0/0/0 150.1.2.2 2-Way
0.0.0.0 GigabitEthernet0/0/0 150.1.3.3 Full
----------------------------------------------------------------------------

[AR2]dis ospf peer brief

OSPF Process 1 with Router ID 150.1.2.2
Peer Statistic Information
----------------------------------------------------------------------------
Area Id Interface Neighbor id State
0.0.0.0 GigabitEthernet0/0/0 150.1.1.1 2-Way
----------------------------------------------------------------------------
在AR2上添加150.1.4.4/32并宣告进OSPF网络中

[AR2-LoopBack1]ip add 150.1.4.4 32
[AR2-LoopBack1]ospf en 1 area 0

[AR1]dis ip routing-table 150.1.4.4
[AR1]

[AR3]dis ip routing-table 150.1.4.4
[AR3]

 

 

 

 

 

三.

实验目的:

ISIS条件下,实现部分互联网络互通

实验步骤:

第一步:删除之前的OSPF配置,配置ISIS。ISIS仅支持BMA和P2P,不支持P2MP。这里配置ISIS是为了说明当在ISIS布置的部分互联网络中添加静态ARP实现互通时。需要注意ISIS的DIS要设置在AR1上。原因同OSPF

以AR1为例:

[AR1]isis 1
[AR1-isis-1]is-level level-2
[AR1-isis-1]q
[AR1]int g 0/0/0
[AR1-GigabitEthernet0/0/0]isis enable 1

[AR1-GigabitEthernet0/0/0]int lo 0
[AR1-LoopBack0]isis en 1

[AR1-isis-1]network-entity 49.0000.0001.0000.0000.0001.00

通过调整AR3的优先级,让AR3选举成为DIS

[AR3-GigabitEthernet0/0/0]isis dis-priority 100

验证:

[AR3]dis isis interface g0/0/0

Interface information for ISIS(1)
---------------------------------
Interface Id IPV4.State IPV6.State MTU Type DIS
GE0/0/0 001 Up Down 1497 L1/L2 No/Yes

将AR2的150.1.4.4的环回口加入ISIS

[AR2-LoopBack1]isis en 1

[AR3]dis ip routing-table 150.1.4.4
[AR3]

[AR1]dis ip routing-table 150.1.4.4
[AR1]

AR1,AR3无法学习到AR2上新加入的路由

 

推荐阅读