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连接 ![](https://i-blog.csdnimg.cn/direct/c3114c01c51f4a249b3d1744915aa5b6.png) 当AS号超过2字节时,会在报文头部填充23456以标识启用4字节的AS号,且在其可选项中填写真实的AS号 在New Speaker之间的Update消息中,AS_Path属性里的AS号按照4字节进行编码,而Old Speaker的Update消息中AS_Path属性的AS号是按照2字节编码的 ## RR组网 ### 多集群RR组网 能有效减少邻居搭建数量,便于管理和故障定位 ![](https://i-blog.csdnimg.cn/direct/dbd0f3a790f544388a29dfc3b280998a.png) 提高网络可靠性,但可能会出现路由重复通告,占用带宽较多 ![](https://i-blog.csdnimg.cn/direct/370daa49fecc4614897693f2d57687ff.png) ### 单集群RR组网 能有效减少重复路由通告,具有一定的防环效果,但对于链路冗余设置较弱,可能出现有链路能到但没有路由的情况 ![](https://i-blog.csdnimg.cn/direct/0abd1c3b347447158fb34be33435bf82.png) ## 总结 BGP的多种路径属性给路由控制提供了新的思路,对于带宽浪费也可使用ORF解决

相关推荐
yzx99101317 小时前
生活在数字世界:一份人人都能看懂的网络安全生存指南
运维·开发语言·网络·人工智能·自动化
2501_9159184118 小时前
HTTPS 端口号详解 443 端口作用、iOS 抓包方法、常见 HTTPS 抓包工具与网络调试实践
android·网络·ios·小程序·https·uni-app·iphone
qq_3597162318 小时前
UDP的使用
网络·网络协议·udp
橙*^O^*安18 小时前
Go 语言基础:变量与常量
运维·开发语言·后端·golang·kubernetes
阿拉斯加大闸蟹20 小时前
基于RDMA 通信的可负载均衡高性能服务架构
运维·架构·负载均衡
2301_7807896620 小时前
渗透测试真的能发现系统漏洞吗
服务器·网络·安全·web安全·网络安全
不是吧这都有重名20 小时前
为什么ubuntu大文件拷贝会先快后慢?
linux·运维·ubuntu
天天开心a21 小时前
华为HCIP-Datacom-Core Technology H12-831 书籍目录
网络·华为
sunshine-sm21 小时前
CentOS Steam 9安装 Redis
linux·运维·服务器·redis·centos
Davie_Liu21 小时前
【Docker Buildx】docker buildx本地构建多架构镜像,拉取镜像时的网络延迟问题(已解决)
网络·docker·buildx