就像BGP中的AS_PATH一样,无论路途多远,我愿意陪你一起走——基于华为ENSP的BGP的Community[社团属性]深入浅出
本篇技术博文摘要 🌟
1. BGP的社团属性(Community)
- 定义:BGP中的Community属性用于对路由进行标记和分类,帮助控制路由的传播和策略实施。
- 功能:通过不同的Community标签,可以实现流量的抓取、路由的过滤和精细化的策略控制。
2. 实战配置:BGP社团属性
- 抓取流量:演示如何根据Community标签抓取特定流量。
- 应用策略:在路由发布过程中应用预定义的路由策略。
- 传播Community属性:确保BGP会传播Community属性,从而影响路由决策。
3. 实际应用场景演练
- 通过一个业务场景,展示如何定义、应用和传播Community属性,确保网络流量和策略按需控制。
4. AS路径过滤器
- AS路径过滤器:用于过滤路由中的AS路径,通常结合正则表达式使用,进行灵活的路由匹配和控制。
- 实战配置:示例配置中,R3和R4分别抓取流量并应用策略,完成AS路径的过滤与策略执行。
引言 📘
- 在这个快速发展的技术时代,与时俱进是每个IT人的必修课。
- 我是肾透侧视攻城狮,一名什么都会一丢丢的网络安全工程师,也是众多技术社区的活跃成员以及多家大厂官方认可人员,希望能够与各位在此共同成长。
📈个人成就和🌐社区贡献与影响力
👑《荣誉头衔》
- 华为云云享专家
- 华为云技术开发者HCCDA认证
- 华为HCDG成员
- 2024年度华为云核心贡献者
- 阿里云专家博主
- 数据安全高级工程师认证
- 新华三高级网络工程师认证
- 腾讯云开发者创作之星
- 2024年度腾讯云创作之星
- 腾讯云文档内容共建官
- 腾讯云TDP成员
- AWS——人工智能领域从业者认证
- 支付宝开发者社区优秀季度创作博主
- CSDN网络安全领域新星创作者
💻技术认证:
- 华为病毒查杀漏洞管理技术认证
- 华为Web暴力破解漏洞挖掘技术认证
- 华为HTTPS加密电商网站技术认证
- 华为博客网站SQL注入攻击以及防御技术认证
- 华为MySQL数据库迁移上云技术认证
- 华为企业上云网络规划设计技术认证
- 阿里云Apsara Clouder基于存储产品快速搭建网盘技术认证
- 阿里云Apsara Clouder容器应用与集群管理技术认证
- 阿里云Apsara ClouderECS基础运维管理技术认证
- 阿里云Apsara ClouderECS快速入门技术认证
- 阿里云Apsara Clouder存储应用与数据管理技术认证
- 阿里云Apsara ClouderSOL基础开发与应用技术认证
- 阿里云Apsara Clouder基于容器搭建企业级应用技术认证
- 阿里云Apsara Clouder云原生数据库PolarDB 快速入门技术认证
- 阿里云Apsara Clouder云数据库RDS快速入门技术认证
- 阿里云Apsara Clouder大模型- 基于百炼平台构建智能体应用技术认证
- 阿里云Apsara Clouder企业级ECS集群构建技术认证
- 腾讯微服务平台TSF技术认证
- 腾讯EdgeOne网站加速与防护技术认证
🙆曾参与赛事以及荣誉奖项:
- 曾荣获江苏省新华三网络赛事江苏省一等奖、江苏省华为ICT大赛团队赛江苏省二等奖、江苏省网络安全精英赛事优秀奖、江苏省C4网络技术挑战赛赛事、江苏省红帽挑战赛、腾讯全国安全游戏竞赛、全国网络安全运维管理等CTF赛事
- 曾荣获南京市CSDN作者周榜第2名、原力月榜第1名;全国原力榜第11名、全国领军人物榜单第22名
欢迎各位彦祖与热巴畅游本人专栏与技术博客
你的三连是我最大的动力
以下图片仅代表专栏特色 [点击➡️指向的专栏名即可闪现]
➡️Cyberspace Security
➡️ 24 Network Security -LJS
➡️HCIP;H3C-SE;CCIP—LJS[华为、华三、思科高级网络]
➡️ Ungranted access vulnerability
➡️ MYSQL REDIS Advance operation
➡️RHCE-LJS[Linux高端骚操作实战篇]
➡️数据结构与算法[考研+实际工作应用+C程序设计]
➡️RHCSA-LJS[Linux初级及进阶骚技能]
上节回顾
目录
本篇技术博文摘要 🌟
引言 📘
📈个人成就和🌐社区贡献与影响力
👑《荣誉头衔》
💻技术认证:
🙆曾参与赛事以及荣誉奖项:
欢迎各位彦祖与热巴畅游本人专栏与技术博客
你的三连是我最大的动力
以下图片仅代表专栏特色 [点击➡️指向的专栏名即可闪现]
上节回顾
1.BGP的社团属性——Community
追根溯源Community
何为Community属性?
团体属性名进制功能详解表
2.BGP的社团属性——Community实战配置示例
1、抓流量
2、做策略
3、调用
3.BGP社团属性结合实际应用场景实战演练
业务需求:
S1:设定策略,定义社团属性标记
S2: 在发布路由时调用策略
S3:开启社团属性的传播功能
S4:在AS 200中抓取流量
S5:做策略
注意:
S6:调用策略
编辑
4.AS路径过滤器实战配置演练
4.1AS路径过滤器详解
正则表达式
正则表达式功能匹配详解表[其实和Lin的正则一样]
示例:
4.2实战配置业务需求:
1、R3抓取流量
2、R3调用策略
3、R4抓取流量
4、R4做策略
end:R4上调用
1.BGP的社团属性——Community
追根溯源Community
- AS100内有大量的路由被引入BGP,这些路由分别用于生产及办公网络。现在AS200的BGP路由器需要分别针对这些路由执行不同的策略,如果使用ACL、 IP Prefixlist这样的工具,效率就非常低下了。
- 有了Community属性,我们可以为不同种类的路由打上不同的Community属性值,这些属性值会随着BGP路由更新给AS200,那么在AS200内的BGP路由器上,只需要根据Community属性值来执行差异化的策略即可,而不用去关心具体的路由前缀。
何为Community属性?
- Community(团体)属性为可选过渡属性,是一种路由标记,用于简化路由策略的执行。
- 可以将某些路由分配一个特定的Community属性值,之后就可以基于Community值而不是网络前缀/掩码信息来匹配路由并执行相应的策略了。
- 类似于路由的“标记”,我们可以针对特定的路由设定特定的社团属性数值,而下游路由器在执行路由策略时,可以通过社团属性来匹配目标路由信息。
- 在一条路由条目中,可以用多个团体属性进行标识。
- 社团属性是由32位二进制构成
十进制表示
十六位二进制
团体属性名进制功能详解表
名称 | 取值 | 功能 |
---|---|---|
internet | 0x00000000 | 代表所有路由信息 |
NO-advertise | 0xFFFFFF02 | 不能被通告给任何BGP对等体 |
no-export | 0xFFFFFF01 | 不能通告给EBGP对等体,但是可以通告给联邦的EBGP对等体 |
no-export-sub | 0xFFFFFF03 | 不能通告给任何EBGP对等体 |
2.BGP的社团属性——Community实战配置示例
1、抓流量
[r1]ip ip-prefix aa permit 1.1.1.1 32
2、做策略
[r1]route-policy com permit node 10
[r1-route-policy]if-match ip-prefix aa
[r1-route-policy]apply community no-advertise
3、调用
r1-bgp]peer 12.0.0.2 route-policy com export
- 给路由打上社团属性标记
- 目前大部分厂商默认在传递BGP路由信息时不传递社团属性,所以,需要传递社团属性,需要通过命令打开。
[r1-bgp]peer 12.0.0.2 advertise-community
- 开启社团属性的传播性
3.BGP社团属性结合实际应用场景实战演练
业务需求:
- 对业务A的流量拒绝,对业务B的流量打上no-export属性。
- A--->100:111 业务B--->100:222
S1:设定策略,定义社团属性标记
[r1]route-policy com-1 permit node 10
[r1-route-policy]apply community 100:111
[r1]route-policy com-2 permit node 10
[r1-route-policy]apply community 100:222
S2: 在发布路由时调用策略
[r1-bgp]network 172.16.1.0 24 route-policy com-1
[r1-bgp]network 172.16.2.0 24 route-policy com-1
[r1-bgp]network 172.16.3.0 24 route-policy com-2
[r1-bgp]network 172.16.4.0 24 route-policy com-2
S3:开启社团属性的传播功能
[r1-bgp]peer 10.1.12.2 advertise-community
[r2-bgp]peer 10.1.23.3 advertise-community
S4:在AS 200中抓取流量
- 通过社团属性过滤器来抓取携带社团属性的路由信息
[r2]ip community-filter 1 permit 100:111
[r2]ip community-filter 2 permit 100:222
S5:做策略
[r2]route-policy com deny node 10
[r2-route-policy]if-match community-filter 1
[r2]route-policy com permit node 20
[r2-route-policy]if-match community-filter 2
[r2-route-policy]apply community no-export additive
[r2]route-policy com permit node 30
注意:
- 如果没有additive参数则代表直接覆盖
S6:调用策略
[r2-bgp]peer 10.1.12.1 route-policy com import
4.AS路径过滤器实战配置演练
4.1AS路径过滤器详解
- AS路径过滤器末尾隐含拒绝所有条件。
正则表达式
- 目的:检查字符串中符合某个规则的特定子字符串,并且可以捕获这个字符串。
普通字符----所有的大写和小写字母、数字、标点符号
特殊字符----具备特殊含义
正则表达式功能匹配详解表[其实和Lin的正则一样]
特殊字符 | 功能 | 举例 |
---|---|---|
^ | 行首 | ^10-->匹配10.10.10.1 |
$ | 行尾 | 1$ |
* | 匹配子正则表达式0次或多次 | 10* |
+ | 匹配子正则表达式1次或多次 | 10+ |
? | 匹配子正则表达式0次或1次 | 10? |
. | 匹配任意单个字符 | 0.0 |
() | 括号内看做一个整体 | |
_下划线 | 匹配任意括号,逗号,空格 | |
\ | 转义字符,将下一个字符转换为普通字符 | \* 匹配* |
X|Y | 匹配X或者Y | |
[XYZ] | 匹配包含的任意一个字符 | |
[^XYZ] | 匹配未包含的任意一个字符 | [^123]匹配除了1、2、3以外的任意字符 |
- 忘记的IKUN们可以补一补
示例:
4.2实战配置业务需求:
1、禁止R3将始发于AS 100的路由传递给R52、R4将始发于AS 200的路由传递给R5时,修改MED
1、R3抓取流量
[r3]ip as-path-filter 1 deny _100$
[r3]ip as-path-filter 1 permit .*
2、R3调用策略
[r3-bgp]peer 10.1.35.5 as-path-filter 1 export
3、R4抓取流量
[r4]ip as-path-filter 1 permit ^200$
4、R4做策略
[r4]route-policy aa permit node 10
[r4-route-policy]if-match as-path-filter 1
[r4-route-policy]apply cost 10000
[r4]route-policy aa permit node 20
end:R4上调用
[r4-bgp]peer 10.1.45.5 route-policy aa export