BGP高级特性

路由控制

As-Path-filter

随着网络规模扩大,路由条目增加,对于路由管理的难度和繁琐程度逐渐增长,而BGP拥有多种路径属性,也为路由控制提供了一种新思路,利用As-path-filter实现过滤某些路由

配置案例

通过部署使得R3学不到AS100始发路由

配置完bgp完整路由

对R3限制使其学不到R1始发的路由

复制代码
[R2]ip as-path-filter 1 deny _100$
[R2]ip as-path-filter 1 permit .*
[R2]bgp 200
[R2-bgp]peer 10.0.23.3 as-path-filter 1 export

经过过滤的路由

community-filter

通过community-filter实现路由过滤,改过滤器分为基本和高级,编号1-99为基本,只能指定要放行或拒绝的团体名或团体属性,而编号为100-199为高级,可以使用正则表达式进行匹配,该过滤器需要使用路由策略进行调用实现效果

配置案例

现决定将10.0.1.0打上1:1,10.0.2.0打上1:2,通过团体过滤通过给R4,实现R4上没有1:1的路由信息

计划在R1上将10.0.1.0打上1:1,10.0.2.0打上1:2

先将相关路由打上团体标签

复制代码
[R1]ip ip-prefix 1 permit 10.0.1.0 24
[R1]ip ip-prefix 2 permit 10.0.2.0 24
[R1]route-policy com permit node 10
Info: New Sequence of this List.
[R1-route-policy]if-match ip-prefix 1
[R1-route-policy]app community 1:1
[R1-route-policy]route-policy com permit node 20
Info: New Sequence of this List.
[R1-route-policy]if-match ip-prefix 2
[R1-route-policy]apply community 1:2
[R1-route-policy]route-policy com permit node 30

[R1-bgp]peer 10.0.12.2 route-policy com export 
[R1-bgp]peer 10.0.12.2 advertise-community

启用团体过滤

复制代码
[R2]ip community-filter 1 permit 1:1//用过滤器匹配流量

[R2]route-policy com deny node 10
Info: New Sequence of this List.
[R2-route-policy]if-match community-filter 1
[R2]route-policy com permit node 20
Info: New Sequence of this List.
//用路由策略拦截路由
[R2-route-policy]bgp 200
[R2-bgp]peer 10.0.24.4 route-policy com export 

在R4上查看路由表发现没有10.0.1.0网段信息

查看详情能看到10.0.2.0被打上1:2的团体

ORF

由于设备在入方向做了相关的路由策略,导致部分路由并不是本机所需要的,但对端仍然会继续发送从而浪费带宽,为节省带宽先采用基于前缀的ORF(Outbound Route Filters,出口路由过滤器)以实现邻居按需求发布路由

配置案例

现在上图基础上在R2上添加10.0.222.0网段并在R4和R2上开启ORF功能,实现R4路由表没有10.0.222.0网段

配置前缀列表匹配相关路由

复制代码
[R4]ip ip-prefix 22 permit 10.0.22.0 24
[R4]bgp 400
[R4-bgp]peer 10.0.24.2 ip-prefix 22 import 	
[R4-bgp]peer 10.0.24.2 capability-advertise orf ip-prefix send 

[R2-bgp]peer 10.0.24.4 capability-advertise orf ip-prefix receive 

在R2路由表上能够看到全部完整路由但R4上没有10.0.222.0的路由

便捷管理与安全

peer组

类似接口组,将邻居加入group,方便管理与调用

Huawei-bgp\] **group** *group-name* \[ **external** \| **internal**

Huawei-bgp peer group-name as-number { as-number-plain | as-number-dot }

Huawei-bgp peer { ipv4-address | ipv6-address } group group-name

Huawei-bgp\] **peer** *group-name* **connect-interface** *interface-type* *interface-number* \[ *ipv4-source-address*

认证

为了防止BGP非法邻居建立采用认证,认证可分为Md5和key-chain两种

Huawei-bgp peer { group-name | ipv4-address | ipv6-address } password { cipher cipher-password | simple simple-password }

cipher和simple仅代表在设备中显示密码为密文或明文

Huawei-bgp peer { group-name | ipv4-address | ipv6-address } keychain keychain-name

GTSM

为了防止攻击者发送大量伪造BGP报文,影响设备性能采用GTSM(Generalized TTL Security Mechanism,通用TTL安全保护机制)

Huawei-bgp\] **peer** { *group-name* \| *ipv4-address* \| *ipv6-address* } **valid-****ttl****-hops** \[ *hops*

hops即最大跳数范围

Huawei gtsm****default-action { drop | pass }

默认行为,丢弃或放行

Huawei gtsm****log drop-packet all

开启日志

4字节AS号

2字节AS号无法满足需求,4字节AS号采用x.y标识

相关概念

New Speaker:支持4字节AS号扩展能力的BGP Speaker
Old Speaker:不支持4字节AS号扩展能力的BGP Speaker
New Session:New Speaker之间建立的BGP连接
Old Session:New Speaker和Old Speaker之间或者Old Speaker之间建立的BGP连接

当AS号超过2字节时,会在报文头部填充23456以标识启用4字节的AS号,且在其可选项中填写真实的AS号

在New Speaker之间的Update消息中,AS_Path属性里的AS号按照4字节进行编码,而Old Speaker的Update消息中AS_Path属性的AS号是按照2字节编码的

RR组网

多集群RR组网

能有效减少邻居搭建数量,便于管理和故障定位

提高网络可靠性,但可能会出现路由重复通告,占用带宽较多

单集群RR组网

能有效减少重复路由通告,具有一定的防环效果,但对于链路冗余设置较弱,可能出现有链路能到但没有路由的情况

总结

BGP的多种路径属性给路由控制提供了新的思路,对于带宽浪费也可使用ORF解决

相关推荐
Championship.23.243 小时前
Linux 3.0 锁机制与故障排查详解
linux·运维·服务器
风123456789~4 小时前
【Linux专栏】ls 排除某个文件
linux·运维·服务器
IpdataCloud5 小时前
担心IP暴露隐私?用安全IP查询工具自查,三步配置网络出口
网络·tcp/ip·安全·ip
xy34535 小时前
wireshark 如何捕获信息
网络·测试工具·渗透测试·wireshark
其实防守也摸鱼5 小时前
运维--学习阶段问题解答(1)(自测)
linux·运维·服务器·数据库·学习·自动化·命令模式
玖玥拾6 小时前
C# 语言进阶(十五)C# 游戏服务端 MySQL 数据库
服务器·开发语言·网络·数据库·mysql·c#
土星云SaturnCloud7 小时前
边缘计算驱动绿氢生产过程智能寻优:电解槽级实时优化技术解析
服务器·人工智能·ai·边缘计算
Darkwanderor7 小时前
对Linux的进程控制的研究
linux·运维·c++
Web极客码8 小时前
突破并发瓶颈:云端高性能架构如何赋能海外 AI Agent 矩阵的高效产出
服务器·人工智能·架构
一个有温度的技术博主8 小时前
【VulnHub 实战】DC-1 靶机渗透测试笔记(一):信息收集与主机发现
服务器·网络·笔记