H3C BGP配置入门 邻居和路由怎么宣告

BGP(边界网关协议)是互联网的核心路由协议,大型企业跨地域组网、运营商之间互联都靠它。跟OSPF这种IGP不同,BGP是路径矢量协议,关注的是AS(自治系统)之间的路由传递,能承载大量路由条目,策略控制也更灵活。H3C设备上配BGP的核心就两件事——建邻居和宣告路由。

BGP的基本概念

先搞清楚几个关键概念。AS号是BGP的标识,用数字表示,1-64511是公网AS号,64512-65535是私网AS号。BGP邻居分两种——IBGP是同一个AS内部的邻居,EBGP是不同AS之间的邻居。IBGP邻居建立时默认TTL是255,EBGP默认TTL是1(直连)。BGP用TCP 179端口建立连接,所以邻居之间网络层必须可达。

BGP路由属性很多,常用的有:AS_PATH(记录路由经过的AS序列)、Local_Preference(本地优先级,越大越优先)、MED(多出口鉴别器,越小越优先)、Next_Hop(下一跳)。这些属性决定了BGP怎么选路。

配置步骤

在H3C设备上配BGP,第一步是指定AS号并进入BGP视图:

[Router] bgp 65001

然后建立邻居。EBGP邻居配置:

[Router-bgp] peer 203.0.113.2 as-number 65002

IBGP邻居配置(同一个AS内):

[Router-bgp] peer 192.168.1.2 as-number 65001

邻居配好后用display bgp peer命令看状态。BGP邻居建立要经历几个状态——Idle、Connect、Active、OpenSent、OpenConfirm、Established。只有到Established才算建立成功。如果卡在Active状态,说明TCP连接没建立起来,检查一下路由和防火墙策略。

路由宣告有两种方式。一是用network命令精确宣告:

[Router-bgp] network 192.168.10.0 255.255.255.0

注意BGP的network命令和IGP不一样,它要求路由表中必须精确存在这条路由(前缀和掩码都匹配)才会宣告出去。

二是用import-route命令引入其他协议的路由:

[Router-bgp] address-family ipv4 unicast

[Router-bgp-ipv4] import-route ospf 1

这种方式会把OSPF的路由全部引入BGP,但默认不携带BGP属性,通常需要配合route-policy做属性设置。

BGP选路控制

BGP默认的选路原则有很多条,按顺序依次比较。实际工程中最常用的调优手段是改Local_Pref和MED。

改Local_Pref控制本AS内出方向选路:

[Router-bgp-ipv4] peer 192.168.1.2 route-policy SET_LP export

H3C BGP配置入门 邻居和路由怎么宣告

route-policy里设置local-preference 200(默认100),这样从该邻居学到的路由在本AS内优先级更高。

改MED控制入方向选路,影响邻居AS从哪个链路把流量发给你:

[Router-bgp-ipv4] peer 203.0.113.2 route-policy SET_MED export

实际场景中,企业用BGP做多链路接入时,通过调整这些属性来实现主备链路或负载分担。

IBGP的环路问题和反射器

IBGP有个规则——从IBGP邻居学到的路由不会再传给其他IBGP邻居。这是防环机制,但导致的问题是如果AS内有3台以上路由器做IBGP,就必须两两建立邻居(全连接),管理成本高。解决方法是配路由反射器(RR),RR把从一个客户端学到的路由反射给其他客户端:

[Router-bgp] peer 192.168.1.3 reflect-client

BGP是H3CSE-RS-RT方向(GB0-382)的重要考试内容,考试大纲里明确列了BGP基本原理、基本配置、路由控制和增强配置。H3CIE-RS+课程里还有专门的BGP协议规划与排障章节(3小时理论+排障实验)。想在BGP方面系统提升的话,润天教育作为H3C钻石级授权培训中心,从H3CSE到H3CIE都有完整的培训体系。