BGP的local_preference本地优先级属性

一、BGP的local preference属性简介

1、local preference公认任意属性

当一条BGP路由器中存在多条去往同一目标网络的BGP路由时,BGP协议会对这些BGP路由属性进行比较,从而筛选出最佳到达目标网络的通达路径。本地优先属性,只在IBGP对等体之间进行交换,即:同一AS内进行,不会通告给AS域外。

Local Preference属性可以用于选择流量离开AS时的最佳路由,也就是控制流量从哪个出口离开AS。当BGP路由器通过不同的IBGP对等体接收到目标网络相同但下一跳不同的多条路由时,将优先选择Local Preference值较高的路由。

2、BGP使用local preference属性的规则:

(1)在BGP优选路由的时候,在preference value 相同的情况,进而判断local_prefrence值越大越优先。Local_prefrence值是一个32比特的整数,取值范围为0~4294967295。默认情况BGP 路由的local preference value 为100。

(2)local_prefrence 只在IBGP对等体进行传播。当路由器从IBGP对等体接收路由的local_prefrence 值为空时,那么会将此路由的local_prefrence 设置为100,即:在IBGP对等体传递路由,默认值为100。

(3)当路由器从IBGP对等体接收路由的local_prefrence值不为空时,那么将此路由的local_prefrence 进行保留,不做修改。

(4)使用network通告或的import-route 引入的路由,local_prefrence 值为空。

(5)路由器在向其EBGP对等体发送路由更新时,不能携带Local Preference属性,但是对方接收路由之后,会在本地为这条路由赋一个缺省Local Preference值( 100),然后再将路由传递给自己的IBGP对等体。本地使用network命令引入及重发布引入的路由,Local Preference为缺省值100,并能在AS内向其他IBGP对等体传递,传递过程中除非受路由策略影响,否则Local Preference不变。

(6)可以在AS边界路由器上使用import方向的策略来修改Local Preference属性值。也就是在收到路由之后,在本地为路由赋予Local Preference。

二、拓扑图

说明:

1、为展示Local_prefrence本地优先级属性,AR2与AR3通过loopback0建立BGP邻居关系,AR1与AR2之间采用物理链路的接口ip地址建立邻居关系。

2、AR1的loopback1地址模拟运营商网络的服务器,AR4的loopback1地址模拟公司内网的服务器。

3、采用路由策略route-policy抓取模拟服务器的路由,在AR2的G0/0/0接口修改local prefrence属性值,再观察BGP路由的变化。

三、配置过程

1、配置AR1

System-view

sysname AR1

interface GigabitEthernet0/0/0

ip address 10.1.12.1 255.255.255.0

interface GigabitEthernet0/0/1

ip address 10.1.13.1 255.255.255.0

interface LoopBack0

ip address 1.1.1.1 255.255.255.255

interface LoopBack1

ip address 10.1.100.2 255.255.255.255

bgp 100

peer 3.3.3.3 as-number 200

peer 3.3.3.3 ebgp-max-hop 255

peer 3.3.3.3 connect-interface LoopBack0

peer 10.1.12.2 as-number 200

peer 10.1.12.2 ebgp-max-hop 255

ipv4-family unicast

undo synchronization

network 10.1.100.2 255.255.255.255

peer 3.3.3.3 enable

peer 10.1.12.2 enable

ospf 1

area 0.0.0.0

network 1.1.1.1 0.0.0.0

network 10.1.12.0 0.0.0.255

network 10.1.13.0 0.0.0.255

network 10.1.100.2 0.0.0.0

2、配置AR2

System-view

sysname AR2

interface GigabitEthernet0/0/0

ip address 10.1.12.2 255.255.255.0

interface GigabitEthernet0/0/1

ip address 10.1.24.2 255.255.255.0

interface LoopBack0

ip address 2.2.2.2 255.255.255.255

bgp 200

peer 3.3.3.3 as-number 200

peer 3.3.3.3 connect-interface LoopBack0

peer 4.4.4.4 as-number 200

peer 4.4.4.4 connect-interface LoopBack0

peer 10.1.12.1 as-number 100

peer 10.1.12.1 ebgp-max-hop 255

ipv4-family unicast

undo synchronization

peer 3.3.3.3 enable

peer 3.3.3.3 next-hop-local

peer 4.4.4.4 enable

peer 4.4.4.4 next-hop-local

peer 10.1.12.1 enable

peer 10.1.12.1 route-policy 1 import

peer 10.1.12.1 route-policy 1 export

ospf 1

area 0.0.0.0

network 2.2.2.2 0.0.0.0

network 10.1.12.0 0.0.0.255

network 10.1.24.0 0.0.0.255

route-policy 1 permit node 10

if-match ip-prefix 1

apply local-preference 2

route-policy 1 permit node 20

ip ip-prefix 1 index 10 permit 10.1.100.2 32

3、配置AR3

System-view

sysname AR3

interface GigabitEthernet0/0/0

ip address 10.1.34.3 255.255.255.0

interface GigabitEthernet0/0/1

ip address 10.1.13.3 255.255.255.0

interface LoopBack0

ip address 3.3.3.3 255.255.255.255

bgp 200

peer 1.1.1.1 as-number 100

peer 1.1.1.1 ebgp-max-hop 255

peer 1.1.1.1 connect-interface LoopBack0

peer 2.2.2.2 as-number 200

peer 2.2.2.2 connect-interface LoopBack0

peer 4.4.4.4 as-number 200

peer 4.4.4.4 connect-interface LoopBack0

ipv4-family unicast

undo synchronization

peer 1.1.1.1 enable

peer 2.2.2.2 enable

peer 2.2.2.2 next-hop-local

peer 4.4.4.4 enable

peer 4.4.4.4 next-hop-local

ospf 1

area 0.0.0.0

network 3.3.3.3 0.0.0.0

network 10.1.13.0 0.0.0.255

network 10.1.34.0 0.0.0.255

4、配置AR4

System-view

sysname AR4

interface GigabitEthernet0/0/0

ip address 10.1.24.4 255.255.255.0

interface GigabitEthernet0/0/1

ip address 10.1.34.4 255.255.255.0

interface LoopBack0

ip address 4.4.4.4 255.255.255.255

interface LoopBack1

ip address 10.1.100.4 255.255.255.255

bgp 200

peer 2.2.2.2 as-number 200

peer 2.2.2.2 connect-interface LoopBack0

peer 3.3.3.3 as-number 200

peer 3.3.3.3 connect-interface LoopBack0

ipv4-family unicast

undo synchronization

network 10.1.100.4 255.255.255.255

peer 2.2.2.2 enable

peer 2.2.2.2 next-hop-local

peer 3.3.3.3 enable

peer 3.3.3.3 next-hop-local

ospf 1

area 0.0.0.0

network 4.4.4.4 0.0.0.0

network 10.1.24.0 0.0.0.255

network 10.1.34.0 0.0.0.255

四、验证结果

(一)观察完成以上配置后的结果:

1、从AR2上查看BGP邻居关系及BGP路由表,如下图:

从上图看出,到达目标AR1的10.1.100.2有2条路由,下一跳是3.3.3.3为最优路由,local prefrence的值为100;下一跳是10.1.12.1为次优路由,local prefrence的值为2(是我们通过路由策略route-policy修改AR2与AR1邻居关系中的出入流量的local prefrence值为2后,降低了优先级)

2、跟踪从AR2到AR3的路由,是途经的AR4到达的3.3.3.3,而不是走的AR1的10.1.12.1这条,从BGP的优先级看,10.1.12.1是次优路由,如下图:

3、跟踪从AR1运营商服务器10.1.100.2到AR4公司内网服务器10.1.100.4的网络流量路径,是途经AR2的10.1.12.2为主路由,下一跳3.3.3.3是次优路由,如下图:

(二)通过路由策略route-policy修改AR2与AR1邻居关系中的出入流量的local prefrence值为120后,提高优先级,大于100

,修改过程如下图:

使用路由策略route-policy抓取10.1.100.2/32的这条路由,修改local prefrence的值从2改为120,提升BGP路由的优先级。

(三)再对比修改local prefrence值前后的BGP路由表变化

1、当AR2上到达10.1.100.2/32的BGP local prefrence值为2时的路由表,如下图:

2 、当AR2上到达10.1.100.2/32的BGP local prefrence值为120时的路由表,此时再观察AR2上的BGP,就只剩下10.1.12.1,local prefrence为120值的这条路由了,如下图:

(四)查看AR1上BGP路由表,当AR2的local_prefrence值修改为2时,与修改为120时,均无变化,如下图:

通过实验验证,修改BGP的local_prefrence值,可以达到修改BGP路由优先级的目的。local_prefrence 只在IBGP对等体进行传播,不会将值传递到AS系统之外。
相关推荐
玖石书27 分钟前
[IoT]物联网(IoT)网络的安全性
网络·物联网·智能路由器
Bytebase33 分钟前
AWS re:Invent 2024 现场实录 - It‘s all about Scale
运维·数据库·dba·开发者·数据库管理·devops
DataDynamos数动实验室42 分钟前
【计算机网络】IPSec的安全协议和封装模式
网络·计算机网络·网络安全
feiyangqingyun1 小时前
Qt监控系统远程网络登录/请求设备列表/服务器查看实时流/回放视频/验证码请求
服务器·网络·qt
‍理我1 小时前
Linux开发工具(补充)
linux·运维·服务器
m0_748255261 小时前
运维实战---多种方式在Linux中部署并初始化MySQL
linux·运维·mysql
一只鹿鹿鹿1 小时前
软件项目体系建设文档,项目开发实施运维,审计,安全体系建设,验收交付,售前资料(word原件)
java·大数据·运维·产品经理·设计规范
JermeryBesian2 小时前
Flink系列知识讲解之:网络监控、指标与反压
大数据·网络·flink
xianwu5432 小时前
反向代理模块开发,
linux·开发语言·网络·c++·git
ybq195133454312 小时前
javaEE-网络原理-5.进阶 传输层UDP.TCP
网络·tcp/ip·udp