华为HCIP——BGP 基础配置

本节课整覆盖BGP基础配置、组网案例、验证命令

一、BGP配置步骤

BGP作为路径矢量协议,其配置核心围绕对等体建立路由发布两大目标展开,与OSPF、IS-IS等IGP协议不同,BGP不依赖自动发现邻居,所有对等体关系、路由发布均需手动配置,且遵循配置顺序,否则邻居无法建立、路由无法正常传递。

BGP配置流程可分为5个步骤:

1.启动BGP进程,指定本地AS号

2.配置BGP Router-ID

3.配置BGP对等体,指定对端IP与AS号

4.配置对等体源接口、EBGP多跳

5.发布BGP路由,验证对等体与路由状态

二、BGP配置命令

1.启动BGP进程与配置Router-ID

复制代码
#启动BGP进程,指定本地AS编号,进入BGP视图

[Huawei]bgp {as-number-plain|as-number-dot}

#配置BGP的Router-ID,建议配置为设备Loopback接口的IPv4地址

[Huawei-bgp]router-id ipv4-address
说明
    • AS编号:AS号是BGP网络的核心标识,范围为1~65535(16位)或1~4294967295(32位),私有AS号范围为64512~65535。
    • Router-ID规则
      • 若手动配置Router-ID,全网需唯一,建议使用设备环回口地址,提升稳定性;
      • 若未手动配置,BGP会自动选取系统视图下的Router-ID作为BGPRouter-ID;
      • 系统Router-ID选择规则:优先选取手动配置的Router-ID,其次选取最大的环回口IP,最后选取最大的物理接口IP。

2.配置BGP对等体

复制代码
#创建BGP对等体,指定对等体的IP地址与AS号

[Huawei-bgp]peer {ipv4-address|ipv6-address} as-number {as-number-plain|as-number-dot}
说明
    • 对等体类型由AS号自动区分:
      • 对端AS号与本地AS号相同:IBGP对等体(同AS内);
      • 对端AS号与本地AS号不同:EBGP对等体(跨AS间)。
    • 对等体配置是BGP邻居建立的核心前提,两端需互相配置对端为对等体。

3.配置对等体源地址与EBGP最大跳数

复制代码
#指定发送BGP报文的源接口,并可指定发起连接时使用的源地址

[Huawei-bgp]peer ipv4-address connect-interface interface-type interface-number [ipv4-source-address]

#指定建立EBGP连接允许的最大跳数

[Huawei-bgp]peer ipv4-address ebgp-max-hop [hop-count]
说明
    • connect-interface命令
      • 用于指定BGP报文的发送源接口,IBGP对等体建议使用环回口建立,需配置该命令指定源接口;
      • 若不配置,默认使用路由表中到达对等体的出接口IP作为源地址。
    • ebgp-max-hop命令
      • 缺省情况下,EBGP连接允许的最大跳数为1,即仅能在物理直连链路上建立EBGP连接
      • 若需非直连建立EBGP对等体(如跨IGP网络),需配置该命令指定最大跳数(通常设为255),修改TTL值以允许跨跳建立邻居。

三、配置案例

1.拓扑说明

    • AS 100:包含R1、R2、R3三台设备,内部运行OSPF实现内网互通;
      • R1与R3之间使用Loopback1接口地址(10.0.x.x/32)建立IBGP对等体;
      • R3与AS200的R4之间使用直连接口地址(10.0.34.3/24、10.0.34.4/24)建立EBGP对等体;
    • AS200:包含R4一台设备,与R3直连建立EBGP对等体;
    • 所有设备的Loopback1接口地址为10.0.x.x/32(x为设备编号),并使用该地址作为RouterID。

2.设备配置

(1)R1配置(AS100,IBGP对等体)
复制代码
#启动BGP进程,指定本地AS号为100

[R1]bgp 100

#配置BGPRouter-ID为Loopback1地址10.0.1.1

[R1-bgp]router-id 10.0.1.1

#配置IBGP对等体R3,指定对端IP为10.0.3.3,AS号100

[R1-bgp]peer 10.0.3.3 as-number 100

#指定发送BGP报文的源接口为Loopback1

[R1-bgp] peer 10.0.3.3 connect-interface LoopBack1
(2)R3配置(AS100,IBGP+EBGP双对等体)
复制代码
#启动BGP进程,指定本地AS号为100

[R3]bgp 100

#配置BGPRouter-ID为Loopback1地址10.0.3.3

[R3-bgp]router-id 10.0.3.3

#配置IBGP对等体R1,指定对端IP为10.0.1.1,AS号100

[R3-bgp] peer 10.0.1.1 as-number 100

#指定源接口为Loopback1

[R3-bgp]peer 10.0.1.1 connect-interface LoopBack1

#配置EBGP对等体R4,指定对端IP为10.0.34.4,AS号200

[R3-bgp]peer 10.0.34.4 as-number 200
(3)R4配置(AS200,EBGP对等体)
复制代码
#启动BGP进程,指定本地AS号为200

[R4]bgp 200

#配置BGPRouter-ID为Loopback1地址10.0.4.4

[R4-bgp]router-id 10.0.4.4

#配置EBGP对等体R3,指定对端IP为10.0.34.3,AS号100

[R4-bgp]peer 10.0.34.3 as-number 100
复制代码
复制代码

四、BGP验证命令

配置完成后,通过命令验证对等体状态、路由表状态,确保配置生效,验证命令如下:

1.查看BGP对等体状态

复制代码
display bgp peer
命令输出解读:
复制代码
BGP Local router ID:10.0.3.3Local AS number:100Total number of peers:2Peers in established state:2
    • 关键项
      • State列:Established,代表对等体建立成功,可正常传递路由;
      • Up/Down列:对等体建立持续时间,判断邻居稳定性;
      • MsgRcvd/MsgSent列:报文收发数量,判断邻居通信是否正常;
      • PrefRcv列:从对等体接收的路由数量,判断路由是否正常传递。

五、BGP配置注意事项

1.IBGP对等体要求

    • 同AS内建立,需保证对等体IP地址(通常为环回口)通过IGP(OSPF/IS-IS)可达;
    • 必须配置connect-interface指定源接口,否则默认使用物理接口IP,易导致邻居建立失败。

2.EBGP对等体要求

    • 缺省仅支持直连建邻,非直连建邻需配置ebgp-max-hop修改TTL;
    • 两端AS号必须不同,否则无法建立EBGP对等体。

3.Router-ID唯一性

    • 全网BGP设备的Router-ID必须唯一,否则会导致选路异常、邻居震荡等故障。

六、真题解析

简答题:BGP使用的TCP目的端口号是多少?

答案:179

解析 :BGP是基于TCP的应用层协议,使用固定TCP端口号179进行传输,TCP 提供可靠传输,保证 BGP 报文不丢失、不乱序。

简答题:BGP对等体关系有哪几种?划分的依据是什么?

答案 :对等体类型:IBGP对等体EBGP对等体 两种;划分依据:对等体是否与自身处于同一个AS内(同AS为IBGP,不同AS为EBGP)。

解析 :同AS内建立的对等体→IBGP 不同AS之间建立的对等体→EBGP **;**两者在防环机制、通告规则、下一跳处理上不同,是BGP分类依据。

多选题:BGP对等体关系建立、更新路由分别使用()、()报文。

A.Route-refresh

B.Open

C.Notification

D.Update

答案:B、D

解析Open报文 :TCP 握手后第一个发送的报文,用于协商参数、建立对等体关系 Update报文 :BGP的业务报文,用于发布路由、撤销路由、更新路由。Notification是报错断开报文;Route-refresh是平滑刷新路由,不用于建邻。

七、知识点总结

1.BGP配置核心流程:启动进程→配置Router-ID→配置对等体→指定源接口/EBGP多跳→发布路由。

2.IBGP对等体 :同AS内,建议环回口建邻,需IGP可达,配置connect-interface

3.EBGP对等体 :跨AS间,默认直连建邻,非直连需配置ebgp-max-hop

4.验证命令display``bgp``peer(查看对等体状态,Established为成功)、display``bgp``routing-table(查看路由表)。

5.核心端口:BGP使用TCP179端口进行通信。

相关学习推荐:

相关推荐
沧州刺史1 小时前
有域名但是没有带公网IP的服务器,怎么能够让服务通过域名暴露出去?
服务器·网络协议·tcp/ip·cloudflared
yuyu_03041 小时前
SOHE-晨检仪-手部异常识别算法
前端·chrome
武帝为此1 小时前
【软件开发日志介绍】
java·前端·数据库
djk88881 小时前
.net swagger api 开启跨域 开启注释
java·前端·.net
心止水j1 小时前
拷贝完虚拟机的操作
linux·运维·服务器
我先去打把游戏先1 小时前
【虚拟机专用】Ubuntu 22.04 LTS 服务器版本镜像下载
linux·服务器·ubuntu
Fu2067211 小时前
ppp协议和GRE
运维·服务器
IMPYLH1 小时前
Linux 的 uname 命令
linux·运维·服务器·数据库·bash
openKaka_1 小时前
从 performWorkOnRoot 到 workInProgress tree:React 真正开始 render 的地方
前端·javascript·react.js