交换与路由练习(十四、BGP)

来源:互联网 发布:教淘宝的基础知识 编辑:程序博客网 时间:2024/04/24 22:51

要求:

1)AS 400内运行IGP为 RIPv2

2)IBGP邻居:

R4 -- R6

R4 -- R5

R5 -- R6

邻居建立在loopback0上

3)EBGP邻居:

R1 -- R2

R2 -- R4

R3 -- R5

邻居建立在直连接口上

R1 -- R3 邻居建立在loopback0上

4)所有设备都可以收到172.16.0.0/16 的网络路由条目

5)AS 400 内的所有设备去往

172.16.0.0/24 172.16.1.0/24 从R4出去(loc)

172.16.2.0/24 172.16.3.0/24 从R5出去(as-path)

               6)配置拓扑中所有设备之间能ping通

一、实现方法

查看每台路由器配置:

(1)  AS 400内运行IGP为 RIPv2——R5、R6上配RIPv2且删eigrp;R4Ripv2协议取消汇总。

R*(config)#no routereigrp 10

R*(config)#router rip

R* (config-router)#v 2

R* (config-router)#noauto-summary

R* (config-router)#net[network]

(2)  IBGP邻居:R4 -- R6、R4 -- R5、R5 -- R6,邻居建立在loopback0上。

1 R4 和R5分别与 R6通过环回建立IBGP邻居关系

R*(config)#router bgp [ ASnumber]

R*(config-router)#neighbor [loopbackip] remote-as [AS number]

R*(config-router)#neighbor [loopbackip] update-source loopback 0

R *(config-router)#end

2为了沟通R4与R5,在FR上铺两条路,并在R4与R5上配置映射表。

  R *(config)# interface [type] [slot/number]        

R *(config-if)#no shutdown

R *(config-if)#en fr ietf

R *(config-if)#fram map ip [address] [dlci]broadcast

R *(config-if)#end

  3 R4和R5IBGP邻居关系通过环回建立

4 将R5的IBGP邻居R6从R5学到外AS的下一跳设为R5自己

R5(config)#router bgp 400

R5(config-router)# nei 6.6.6.6 next-hop-self

(3)  EBGP邻居:R1 -- R2、R2 -- R4、R3 -- R5,邻居建立在直连接口上;R1-- R3邻居建立在loopback0上。

1)R1 -- R3邻居建立在loopback0上

1 R1和R3间的TTL改为3且用环回配置的EBGP邻居少一句命令,加上

R*(config)#router bgp [ AS number]

R*(config-router)#nei [ip] ebgp-multihop 3

R*(config)#router bgp [ ASnumber]

R*(config-router)#neighbor [loopbackip] update-source loopback 0

R *(config-router)#end

2修改R1上的network的掩码

R1(config)#router bgp 100

R1(config-router)#no net [address] [subnet-mask]

R1(config-router)#net [address] [subnet-mask]

3 R1和R3上配静态路由到对方环回

R*(config)#ip route [network] [subnets-mask] [type][slot/number]

4 R1和R3用环回建立起了EBGP邻居关系

                2)R1 -- R2、R2 -- R4、R3 -- R5,邻居建立在直连接口上

                       1修改R2中EBGP邻居R1的AS

R2(config)#router bgp 200

R2(config-router)#no nei 12.12.12.1 remot200

R2(config-router)# nei 12.12.12.1 remot 100

                      

                       2 R1和R2通过直连接口建立了EBGP邻居

                      

3R4上通过直连接口建立起与R2的EBGP邻居关系,R5上通过直连接口建立起与R3的EBGP邻居关系

R4(config)#router bgp 400

R4(config-router)# nei 24.24.24.2 remot 200

R4(config-router)#end

R5(config)#router bgp 400

R5(config-router)# nei 35.35.35.3 remot 300

R5(config-router)#end

(4)  所有设备都可以收到 172.16.0.0/16 的网络路由条目。

1通告R2、R1、R3的路由条目(直连)。

R*(config)#router bgp [ AS number]

R*(config-router)#net [address] mask[subnet-mask]

2通告R4上的路由条目。

R4(config)#router bgp 400

R4(config-router)#net [address] mask[subnet-mask]

  

3只能net网段,不能是主机,修改。

R*(config)#router bgp [ AS number]

R*(config-router)#no net [address] mask [subnet-mask]

R*(config-router)#net [address] mask[subnet-mask]

   

4所有设备都可以收到 172.16.0.0/16 的网络路由条目

R1(config)#router bgp 100

R1(config-router)#agg 172.16.0.0255.255.0.0

 

(5)  AS 400内的所有设备去往:172.16.0.0/24 172.16.1.0/24 从R4出去(loc);172.16.2.0/24172.16.3.0/24 从R5出去(as-path)

1)修改配置之前的BGP表。

2)增长172.16.2.0/24和 172.16.3.0/24 从R2出去到R4的as-path。

R2(config)#access 10 per 172.16.2.0 0.0.0.255

R2(config)#access 10 per 172.16.3.0 0.0.0.255

R2(config)#access 11 den 172.16.2.0 0.0.0.255

R2(config)#access 11 den 172.16.3.0 0.0.0.255

R2(config)#access 11 per any

R2(config)#route-m test per 10

R2(config-route-map)#match ip add 10

R2(config-route-map)#set as per 200 200 200

R2(config-route-map)#exit

R2(config)#route-m test per 20

R2(config-route-map)#match ip add 11

R2(config-route-map)#exit

R2(config)#router bgp 200

R2(config-router)#nei 24.24.24.4 route-m test out

R2#clear ip bgp 24.24.24.4 soft out

3)As-path变完的结果。

4)在R5上减小loc值为40,R4上增大loc值为150。

R5(config)#access 1 per 172.16.0.0 0.0.0.255

R5(config)#access 1 per 172.16.1.0 0.0.0.255

R5(config)#access 2 den 172.16.0.0 0.0.0.255

R5(config)#access 2 den 172.16.1.0 0.0.0.255

R5(config)#access 2 per any

R5(config)#route-m loc per 10

R5(config-route-map)#match ip add 1

R5(config-route-map)#set local 40

R5(config-route-map)#exit

R5(config)#route-m test per 20

R5(config-route-map)#match ip add 2

R5(config-route-map)#exit

R5(config)#router bgp 400

R5(config-router)#nei 6.6.6.6 route-m loc out

R5#clear ip bgp 6.6.6.6 soft out

 

R4(config)#access 1 per 172.16.0.0 0.0.0.255

R4(config)#access 1 per 172.16.1.0 0.0.0.255

R4(config)#access 2 den 172.16.0.0 0.0.0.255

R4(config)#access 2 den 172.16.1.0 0.0.0.255

R4(config)#access 2 per any

R4(config)#route-m loc per 10

R4(config-route-map)#match ip add 1

R4(config-route-map)#set local 150

R4(config-route-map)#exit

R4(config)#route-m test per 20

R4(config-route-map)#match ip add 2

R4(config-route-map)#exit

R4(config)#router bgp 400

R4(config-router)#nei 6.6.6.6 route-m loc out

R4(config-router)#nei 5.5.5.5 route-m loc out

R4#clear ip bgp 6.6.6.6 soft out

R4#clear ip bgp 5.5.5.5 soft out  

5)local修改完的结果。





分析

(1)  OSPFEIGRPRIP),BGPnetwork的区别

内部网关协议IGP(包括ospf,eigrp,rip)的network命令都是为了说明哪一个接口启用该igp协议:

ospf协议的network命令通告的是端口。Network的作用是传播路由条目和对应端口开启ospf协议。

    rip协议 eigrp协议 network命令 在没有追加子网掩码的情况下通告的是网段。

其实两者就是有类和无类的区别,通告网段中的“网段”2字就是指有类的大网段,通告端口则可以理解为通告无类网段的另一个说法而已

        在没有标注子网掩码的情况下,rip和eigrp两个协议的命令

        network192.168.1.0 ----> network 192.168.0.0

    会自动将写入的无类网段通告转换成有类网段通告,这一点在running configure中会体现

依上所述,如果在rip协议和eigrp协议的network命令后面上加上了子网掩码的话,那么这两个协议network命令和ospf协议network命令所到达的效果就没有什么不同了

外部网关协议EGP(仅仅说明BGP)的network命令则是为了提取IGP的路由条目

对于BGP而言,只有在IGP路由表中包含这条路由条目(可以是直连,也可以不是)的时候,才可能被BGP路由协议提取并发布

其精髓就是匹配IGP路由表,而这种匹配的重点就在于他的精确性

        1. S192.168.1.0 255.255.255.0

        2. S192.168.1.1 255.255.255.255

         对于以上两个路由条目,如果写入(GBPnetwork 192.168.1.0 mask 255.255.255.0,那么只会匹配第一条路由条目(序号1),不会匹配第二条路由条目,这就是BGP与IGP的network命令的最大区别所在

(2)  next-hop-self是在开启IBGP的路由器之间使用的,在设置时,只在IBGP邻居之间设置,EBGP邻居之间不需要,比如说,R2和R1就不需要设置next-hop-self。

将从EBGP邻居学来的路由条目宣告给IBGP时,为IBGP邻居指定下一跳地址为自己。

是R2在向它的IBGP邻居通告,你们的这些自治区域外部的路由条目,是我从自治区域外部学习到的,所以你们要去这些网段,下一跳为我R2。

(3)  用环回建邻居关系比用物理端口稳定(可能坏掉)。

(4)  BGP基于TCP,所以有三次握手。

(7)  Rip中无DR。

(8)  水平分割命令: IP spli。

Ebgp邻居之间的通路有一个
0 0
原创粉丝点击