BGP的基本配置以及路由聚合

目录

BGP的基本配置

        1.BGP建邻的基本配置

        2.IBGP对等体关系之间的环回建邻

        3.EBGP对等体关系之间的非直连建邻

2.发布路由

1.network——在BGP中只能用来发布路由条目信息

2.重发布

.BGP的路由聚合

1.自动聚合

2.手工聚合——一种更加精准的汇总


BGP的基本配置

        1.BGP建邻的基本配置

                1.EBGP对等体关系建立

                [r1]bgp 1——启动BGP进程 ——这里的1是配置路由器所在AS的编号

                                                                        一台设备只能启动一个BGP进程

                [r1-bgp]router-id 1.1.1.1 ——配置RID

                [r1-bgp]peer 12.0.0.2 (邻居接口的IP地址) as-number 2 (AS号)——指定对等关系(双向)

                [r2-bgp]peer 12.0.0.1 as-number 1(双向指定)

                [r1]display bgp peer——查看BGP邻居表的命令

        2.IBGP对等体关系之间的环回建邻

          由于IBGP邻居处于同一个AS中,一般情况下,一个AS中存在大量的备份路径,

          若使用物理接口建邻,将浪费这些备份或者负载均衡资源,

          故建议使用环回接口建立IBGP对等体关系

                [r2-bgp]peer 2.2.2.2 as-number 2——使用环回接口建邻

        但此时手工建立邻居关系的时候所指定的建邻的ip地址必须和收到的数据包中的源ip地址不相同

                [r2-bgp]peer 3.3.3.3 connect-interface LoopBack 0 ——指定在给.3.3.3.3发包时使用的源ip,使用环回地址建邻的时候使用

地址位环回接口0的ip地址——记得要是双向的

注意:砸使用环回接口建立对等关系的时候,一定要修改发送接口

 

        3.EBGP对等体关系之间的非直连建邻

        在EBGP对等体关系之间,一般是不具备非直连建邻的路由基础,所以需要先保证双向可达

        [r4-bgp]peer 5.5.5.5 ebgo-max-hop 2 ——因为在EBGP中的TTl值是1,想要非直连建邻,则需要将这个值改大——默认255

 

2.发布路由

1.network——在BGP中只能用来发布路由条目信息

[r1]network 1.1.1.0 24 ——必须保证发布的信息和路由表中一致

注意:只要是路由表中存在的路由条目信息,BGP都可以

 

查看BGP表——[r1]display bgp routing-table

 

Network ——目标网段信息及掩码

Nexthop ——BGP的一个路径属性,谁发的路由信息,下一跳就是谁,如果是自己发的,则下一跳为0.0.0.0

状态码

*————代表可用——设备收到一条路由信息,都会检查其下一跳的可达性,根据下一跳在路由表中递归查询,只要可达,修改路由信息可用

>------------代表优选——当收到到达相同网段存在多条路由信息时,BGP将在其中根据属性优选出一条加载到路由表中,这条优选路由将会赋予这个标记

i————代表从IBGP对等体那学来的

S————代表抑制路由条目的传递

注意:只有一条路由条目是可用且优选的,它才能被加载到路由表中,传递给其他BGp对等体

因为在AS内部存在AS-BY-AS规则,所以默认情况下传递的属性是一致的,因为下一跳也属于路径属性之一,默认情况下也不会传递,可能会导致路由传递失败

[r3-bgp]peer 3.3.3.3 next-hop-local ——将去往3.3.3.3下一跳地址改为本地

通过EBGP学来的路由信息,其标记为EBGP,默认优先级为255

通过IBGP学来的路由信息,其标记为IBGP,默认优先级为255,其下一跳为路径属性中

OGN——起源码——表示路由条目的来源

i——代表该路由信息起源于IGP(在路由表中可以发布的所有,包括静态和直连这些),代表该路由起源于AS内部

E——该路由信息起源于EGP协议——EGP指的是BGP之前使用的外部网关协议,就是小的那个EGP

?——通过除了以上两种方式学习到的路由

2.重发布

[r3-bgp]import route ospf 1 ——将OSPF路由信息导入到BGP中

.BGP的路由聚合

1.自动聚合

        1.该方法只能针对重发布发布的路由生效

         2.只能按照主类进行聚合,会造成巨大的路由黑洞

 所以华为设备BGP的自动聚合功能是默认关闭的

        1.抓取流量

        [r1]ip ip-prefix aa permit 172.16.0.0 22 greater-equal 24 less-equal 24

        2.做路由策略

        [r1]route-policy aa permit node 10

        [r1]if match ip-prefix aa

        3.在重发布中导入路由策略

        [r1-bgp]import-route direct route-policy aa

        4.开启自动聚会

        [r1]summary automatic

状态码——S——代表抑制路由条目的传递

通过自动聚合会发布一条新的汇总路由,不携带子网掩码

通过聚合发布的路由信息的下一跳为 127.0.0.1

自动聚合之后发布你的汇总路由会自动产生一条null0口,自动防环

2.手工聚合——一种更加精准的汇总

[r1-bgp]aggregate 172.16.0.0 22 ——手工汇总

手工聚合后发布的路由条目将携带掩码信息,其下一跳也是指向 127.0.0.1

并且也会自动生成一条汇总指向空接口的路由防环

但是吧,手工聚合

1.发布聚合路由的情况下,不会一直明细路由,导致汇总操作并没有减少路由条目,反而增加了

2.在进行汇总的时候,发布的汇总路由不会继承明细路由的属性,尤其是AS_PATH属性,会导致汇总路由部分属性缺失,甚至可能出现环路

为了避免以上两个问题的产生,我们必须在配置过程中增加细节

1.在发布手工汇总路由时抑制所有的明细

[r1-bgp]aggregate 172.16.0.0 22 detail-suppressed

因为BGP协议的一些特殊性,我们往往不能将其所有的明细路由全部抑制

只能抑制部分的路由信息,我们需要使用到一种抑制策略——suppressed-policy

1.抓取流量,使用前缀列表

[r4]ip ip-prefix aa permit 172.16.1.0 24

2.使用路由策略匹配流量

[r4]route-policy aa permit node 10

[r4]if match ip-prefix aa

3.使用抑制策略调用路由策略  这玩意只能调用路由策略,不能调用前缀策略

[r4-bgp]aggregate 172.16.0.0 22 suppress-policy aa

对于第二个问题我们专门设计了一个AS_SET关键字,如果在配置命令的时候,将这个关键字记过,则BGP在汇总路由时,将携带上明细的AS_PATH来防环

如果明细路由携带的AS_PATH属性不一样,则在激活了AS_SET属性后,汇总路由将会把明细路由的AS号都携带上,并用  (    ) 括起来,在进行防环的时候,里面所有的AS号都生效,都不能回传,但是再使用AS_PATH属性进行选路的时候,当做一个AS来看待

因为聚合后的路由信息存在属性丢失问题,所以,这样的汇总路由需要格外的关注

为此我们专门引入两个属性

1.ATOMIC_AGGREGATE——预警属性——在所有明细路由都被抑制之后出现

2.AGGREGATOR——携带汇总信息——1.汇总者的RID和其所在的AS号

[r4]display bgp routing-table 网段——查看一条路由的详细情况

你可能感兴趣的:(网络,网络,网络协议,运维,服务器,路由器)