M0000004BGP协议配置中文版11资料.docx
《M0000004BGP协议配置中文版11资料.docx》由会员分享,可在线阅读,更多相关《M0000004BGP协议配置中文版11资料.docx(23页珍藏版)》请在冰豆网上搜索。
M0000004BGP协议配置中文版11资料
1.1BGP协议基本配置
1.1.1BGP的基本配置
BGP的配置命令和其它动态路由协议很相似,启动BGP的命令:
[Quidway]#bgpas-number,这里的as-number是指本地的自治系统号,路由器在同一时间只允许启动一个BGP进程。
因此,一台路由器只能属于一个自治系统。
如果想关闭BGP可以用命令:
[Quidway]#undobgp
启动了BGP进程,同时进入BGP配置模式。
下一步就是配置BGP邻居了,我们知道BGP有两种邻居:
IBGP和EBGP。
在BGP配置模式下可以配置BGP邻居,使用命令:
[Quidway-bgp]peerpeer-addressas-numberas-number,如果需要配置IBGP邻居,as-number就是对端路由器所在的自治系统号。
如果需要配置EBGP邻居,as-number就是本端路由器所在的自治系统号。
BGP进程启动了,邻居关系也建立了,BGP路由协议也就运行起来了,但是如果用命令:
[Quidway]#displaybgp查看BGP路由表,你将看不见任何路由。
什么原因呢?
大家还记得,前面讲过BGP主要功能是在自治系统之间传递路由信息,它的功能不在于发现和计算路由,BGP传递的路由信息需要注入。
BGP路由注入方式有三种:
纯动态注入、半动态注入和静态注入。
上面我们还没有为BGP系统注入路由信息,所以在BGP路由表中没有任何路由信息。
为BGP注入路由可用命令:
networkip-address[maskmask]或import-routeprotocol[medmed]
这样,BGP的基本配置就完成了。
1.1.2
BGP基本配置举例
下面我们给出一个实际的配置实例,帮助大家进一步学习BGP的基本配置。
如前所述,BGP基本配置包括三步:
首先启动BGP,然后配置BGP邻居,最后为BGP注入路由信息。
如胶片所示,AS200内两台路由器之间建立IBGP邻居关系,RTB、RTC分别和RTA、RTD建立EBGP邻居关系,相互通告路由信息。
在AS200内部运行OSPF路由协议,OSPF在RTB、RTC的s0、s1接口上起作用。
我们给出主要的配置:
RTA:
[RTA-Serial0]ipaddress1.1.1.1255.255.255.0
[RTA]bgp100//启动BGP
[RTA-bgp]peer1.1.1.2as-number200//建立EBGP邻居
[RTA-bgp]importdirect//为BGP注入路由信息
RTB:
[RTB-Serial0]ipaddress1.1.1.2255.255.255.0
[RTB-Serial1]ipaddress2.1.1.2255.255.255.0
[RTB]ospfenable
[RTB-Serial0]ospfenablearea0
[RTB-Serial1]ospfenablearea0
[RTB]bgp200//启动BGP
[RTB-bgp]peer1.1.1.1as-number100//建立EBGP邻居
[RTB-bgp]peer2.1.1.1as-number200//建立IBGP邻居
[RTB-bgp]importospf//为BGP注入路由信息
RTC:
[RTC-Serial0]ipaddress3.1.1.1255.255.255.0
[RTC-Serial1]ipaddress2.1.1.1255.255.255.0
[RTC]ospfenable
[RTC-Serial0]ospfenablearea0
[RTC-Serial1]ospfenablearea0
[RTC]bgp200//启动BGP
[RTC–bgp]peer3.1.1.2as-number300//建立EBGP邻居
[RTC-bgp]peer2.1.1.2as-number200//建立IBGP邻居
[RTC-bgp]importospf//为BGP注入路由信息
RTD:
[RTD-Serial0]ipaddress3.1.1.2255.255.255.0
[RTD]bgp300//启动BGP
[RTD-bgp]peer3.1.1.1as-number200//建立EBGP邻居
[RTD-bgp]importdirect//为BGP注入路由信息
1.1.3
配置BGP参数
前面介绍了BGP的基本配置,完成了基本配置BGP就能正常工作了。
下面介绍BGP参数的配置,包括BGP版本号、BGP定时器以及发送Update报文的时间间隔。
这些参数都有缺省值,一般情况下不用改变它,只有在一些特殊场合,如不同厂商设备互通或网络扩容时可能用到。
配置同伴的BGP版本号用命令:
[Quidway-bgp]peerpeer-addressversionversion-number,BGP版本号有BGP-1、BGP-2、BGP-3和BGP-4,目前最新的版本是BGP-4,这也是Quidway路由器缺省的版本号。
可以用[Quidway-bgp]undopeer{group-name|peer-address}version命令来恢复缺省值。
BGP定时器有keepalive-interval和holdtime-interval两个参数,分别表示发送KEEPALIVE报文的时间间隔和BGP连接保持时间间隔,它们是BGP协议中两个非常重要的时间参数。
当一台路由器与对端邻居路由器成功建立了BGP连接后,将以Keepalive-interval设定的时间间隔周期性地向对等体发送KEEPALIVE报文,标明该连接是否还可保持。
一般情况下,发送KEEPALIVE报文的时间间隔是连接保持时间间隔的三分之一。
连接保持时间holdtime-interval是连续接收KEEPALIVE报文与UPDATE报文的时间间隔,若收到KEEPALIVE报文或UPDATE报文,保持定时器就复位。
若路由器在设定的连接保持时间内未收到同伴发来任何报文,就认为该BGP链路已失效,进而断开该TCP连接。
路由器可与其同伴协商,将保持时间设为两者中较小的那个。
可用命令[Quidway-bgp]timerskeepalive-intervalholdtime-interval来配置keepalive-interval和holdtime-interval,同时注意保持两者之间的比例关系。
恢复BGP定时器缺省值用:
[Quidway-bgp]undotimers。
前面说过BGP只发送增量路由信息,但是每个UPDATE报文能携带的路由信息有限,所以很多情况下,一次路由更新需要连续发送多个UPDATE报文,发送UPDATE报文的时间间隔是可以配置的,命令如下:
[Quidway-bgp]peerpeer-addressroute-update-intervalseconds。
Quidway路由器的缺省值是5秒。
可用命令[Quidway-bgp]undopeerpeer-addressroute-update-interval来恢复缺省值。
1.1.4
配置BGP路由策略
BGP是在自治系统之间交换路由信息的,由于各种原因,BGP需要对发送和接受的路由信息进行过滤,也就是要实施路由策略。
这一部分内容在路由策略部分会有详细叙述,这里我们只是简单介绍。
1)配置对等体的前缀过滤器:
[Quidway-bgp]peer{group-name|peer-address}filter-policyacl-number{import|export}。
该命令结合访问控制列表使用,它可以指定BGP从对等体输入或向对等体输出时过滤访问列表(accesslist)指定的路由。
参数peer-address是对等体地址,acl-number是访问列表号,Import或export表明是输入还是输出时使用该策略。
可以用如下两条命令定义访问列表:
aclacl-number[match-orderconfig|auto]
rule{normal|special}{permit|deny}[sourcesource-addrsource-wildcard|any]
参数acl-number为访问列表号,source-addr和source-wildcard表示一个网络地址。
2)配置对等体的AS路径过滤器[Quidway-bgp]peerpeer-addressaclaspath-list-number{import|export}。
该命令可以指定BGP从对等体输入或向对等体输出时过滤含有指定AS路径属性的路由。
参数peer-address是对等体地址,aspath-list-number是AS路径列表号,import或export表明是输入还是输出时使用该策略。
定义AS路径列表:
[Quidway]ipas-pathaclaspath-list-number{permit|deny}as-regular-expression
参数aspath-list-number为路径列表号,as-regular-expression为路径的正则表达式。
3)配置对等体的路由策略peerpeer-addressroute-policypolicy-name{import|export}。
该命令可以指定BGP从对等体输入或向对等体输出时使用的路由策略。
参数peer-address是对等体地址,policy-name表示route-policy的名字,import或export表明是输入还是输出时使用该策略。
定义路由策略:
route-policypolicy-name{permit|deny}{seq-number},参数policy-name为route-policy的名字,seq-number为序列号。
路由策略是实施路由过滤的重要部分,它根据路由属性的匹配结果,决定对路由属性的操作。
每个路由策略可以有若干规则,用序列号标识。
在进行路由策略匹配时,按序列号从小到大的顺序进行匹配,遇到第一个匹配的规则,就完成此次的路由策略过程。
如未匹配任何一条规则,则此路由的发送和接收等操作被取消。
if-match命令用来定义匹配规则:
操作
命令
匹配AS路径正则表达式
if-matchas-pathaspath-list-number
取消AS路径表达式匹配
undoif-matchas-path
匹配BGP团体列表
if-matchcommunity{standard-community-list-number[exact-match]|extended-community-list-number}
取消BGP团体列表匹配
undoif-matchcommunity
匹配端口
if-matchinterface[typenumber]
取消端口匹配
undoif-matchinterface
匹配地址
if-matchipaddress{acl-number|ip-prefixprefix-l