BGP社区属性怎样控制路由通告范围,BGP选路规则有哪些?

BGP社区属性就是给路由贴标签:标签本身不改变路由,但入方向打标、出方向按标匹配做过滤或修改本地优先级,就能精确控制这条路由能传多远、在哪个出口更优。 一个标签,两个动作,几乎所有BGP路由策略都能靠它落地。

BGP community属性到底怎么配置:从规划到上线的四个实操步骤

第一步:先规划编号,别随手写

社区属性是4字节可选传递属性,格式是 AS号:自定义值,65001:100,大型社区(Large Community,RFC 8092)扩展到12字节,格式为 全局管理员:局部值1:局部值2,主要给4字节AS号的环境用。

065-BGP团体属性(Community)
加载中
065-BGP团体属性(Community)
瀚
瀚熹宇
429--
原视频地址

编号规划建议按功能分段,不要今天写 65001:1、明天写 65001:99:

  • 65001:1xx:客户接入类,如 65001:100 表示”客户A前缀”
  • 65001:2xx:出口选择类,如 65001:200 表示”只走电信出口”
  • 65001:3xx:安全类,如 65001:300 表示”黑洞路由”
  • 65001:9xx:临时策略,便于定期清理

行业共识认为,社区编号一旦对外发布,就要当成接口来维护,上游运营商和下游客户可能都会引用,随意变更会直接打断对方的策略匹配。

第二步:入方向打标,出方向才有得玩

所有社区策略的核心动作只有两个:进来的时候贴标签,出去的时候看标签。

华为VRP上的典型写法:

# 入方向:给客户路由打标
route-policy RP_IN_CUST permit node 10
 apply community 65001:100 additive
# 出方向:带这个标签的一律不放行
ip community-filter basic CF_CUST permit 65001:100
route-policy RP_OUT permit node 10
 if-match community-filter CF_CUST
route-policy RP_OUT deny node 20
bgp 65001
 peer 10.0.0.2 as-number 65002
 peer 10.0.0.2 route-policy RP_IN_CUST import
 peer 10.0.0.2 route-policy RP_OUT export

Cisco IOS的等价配置:

ip community-list standard CF_CUST permit 65001:100
route-map RP_IN permit 10
 set community 65001:100 additive
route-map RP_OUT deny 10
 match community CF_CUST
route-map RP_OUT permit 20

注意 additive 关键字:不加它,新社区会覆盖原有社区,上游给的标签就丢了,做多层策略时这是最常见的翻车点。

第三步:send-community 别忘开

社区属性是可选传递属性,默认行为各家不一样:

  • Cisco IOS默认不向邻居发送社区属性,必须显式配置 neighbor x.x.x.x send-community(或 send-community both)
  • 华为VRP默认发送标准社区,但大型社区需要额外配置 peer x.x.x.x send-community large
  • 部分厂商在iBGP和eBGP下的默认行为不同,升级版本后也可能变化

配置完先别急着测业务,敲一条 display bgp routing-table 10.1.1.0 或 show ip bgp 10.1.1.0,确认Community字段真的有值,再往下走。

第四步:验证要看路由表,不要只看配置

# 华为:按社区反查路由
display bgp routing-table community 65001:100
# Cisco:同理
show ip bgp community 65001:100

如果查出来为空,按顺序排查:入方向route-policy是否命中、additive是否漏配、邻居是否开启了send-community、对端是否把社区剥掉了,四个点逐一验证,基本能定位。

no-export和no-advertise有什么区别,选错会怎样

四个知名社区各自管什么

RFC 1997定义了几个”约定俗成”的知名社区(Well-known Community),不需要双方约定就能生效:

社区 十六进制值 实际行为 典型用途
NO_EXPORT 0xFFFFFF01 收到后不再向任何eBGP邻居通告,联邦内部仍可传递 防止路由泄漏给其他运营商
NO_ADVERTISE 0xFFFFFF02 收到后不再向任何邻居通告,包括iBGP 本机专用,彻底不外传
NO_EXPORT_SUBCONFED 0xFFFFFF03 联邦内部也不通告 联邦环境下的严格隔离
NOPEER 0xFFFFFF04 不向对等体(非客户/非提供商)通告 抑制免费互联方向的泄漏

两句话的差别,后果差很远

NO_EXPORT 和 NO_ADVERTISE 的区别就一句话:前者允许在你自己AS内部继续传,后者连自己人都不给。

选错的实际后果:

  • 该用NO_EXPORT却用了NO_ADVERTISE:路由在你自己的iBGP里就断了,其他边界路由器看不到这条前缀,业务直接不通
  • 该用NO_ADVERTISE却用了NO_EXPORT:路由在你AS内部传了一圈,又从另一个边界路由器泄漏给了别的运营商,路由劫持风险就这么来的

一个实用判断法:只需要”出我不出去”用NO_EXPORT,需要”连我自己内部都别扩散”用NO_ADVERTISE。

跨运营商场景下,用社区给路由分等级

真实的多线机房场景通常长这样:一台边界路由器同时对接电信、联通、移动三家上游,还有若干客户接入。

做法是给每类路由打上不同标签,出方向按标签分流:

  • 客户A的路由打 65001:100,只向电信和联通通告,移动方向用 if-match 拒绝
  • 全部客户路由打 65001:900,一旦触发黑洞策略,上游按约定社区直接丢弃流量
  • 需要优先回程的前缀打 65001:200,配合上游约定的社区体系触发对方调整本地优先级

关键点在于:上游是否认你的社区,取决于双方约定。 国内主流运营商都有自己的社区发布规范,远端触发类社区必须提前申请备案,自己随便打一个对方不认的编号,等于没打。

控制优选范围:社区属性本身不参与选路,但它是那个开关

BGP路由优选顺序是什么,community卡在第几位

这是很多人绕不过去的误区,BGP的选路是固定顺序的12步(华为与Cisco大体一致):

  1. 首选值(Preferred Value,Cisco称Weight)
  2. 本地优先级(Local Preference)
  3. 本地始发的路由优先
  4. AS_PATH最短
  5. Origin属性(IGP优于EGP,EGP优于Incomplete)
  6. MED值最小
  7. eBGP路由优于iBGP路由
  8. 到下一跳的IGP开销最小
  9. 路由最老(eBGP场景)
  10. Router ID最小
  11. Cluster List最短
  12. 邻居地址最小

社区属性不在这12步里的任何一步,它不参与比较,只负责被匹配。

所以正确的用法是:用社区做标签,用route-policy匹配标签后修改本地优先级或MED,让优选结果按你的意图发生。 社区是扳机,本地优先级是子弹。

用社区加本地优先级做出口分流

一个双出口的典型配置:

# 电信方向学来的路由打标
route-policy RP_IN_CT permit node 10
 apply community 65001:200 additive
# 本地按标签抬高优先级
ip community-filter basic CF_CT permit 65001:200
route-policy RP_LOCAL permit node 10
 if-match community-filter CF_CT
 apply local-preference 200
route-policy RP_LOCAL permit node 20
bgp 65001
 peer 10.0.0.2 route-policy RP_IN_CT import
 peer 10.0.0.2 route-policy RP_LOCAL import

生效后,同一前缀从电信和联通都学到时,电信那条因为本地优先级更高会被选中,改动只发生在本AS内部,对端完全无感。

想影响别人的优选,得靠对方认的社区

如果你的目标是让上游运营商把回程流量走某个方向,靠改自己的本地优先级没用,必须给上游发它们约定好的社区。

操作路径是:

  1. 向运营商申请社区使用权限,拿到编号清单
  2. 在出方向route-policy里按目标前缀 apply community <运营商编号>
  3. 确认 send-community 已开启
  4. 在对端设备上用 show ip bgp 类命令回查,确认社区已生效

这一步没有捷径,社区编号和生效范围完全取决于运营商侧的策略实现。

两个容易被忽略的细节

  • 社区会跨AS传递,但可能被剥掉。 有些运营商在边界清洗未约定社区,自己内部的标签传出去就消失了,设计跨域策略时,要跟对端确认”这个社区你们会不会保留”。
  • NO_EXPORT允许联邦内传递。 如果你的AS用了联邦(Confederation),NO_EXPORT和NO_EXPORT_SUBCONFED的行为差异会直接影响路由扩散范围,配之前先在实验环境验证一遍。

BGP community属性控制路由通告与优选范围常见问题解答

BGP community属性能直接决定选哪条路由吗?

不能,社区属性是可选传递属性,只作为策略匹配条件存在,不进入BGP选路的12步比较序列,实际生效路径是:匹配社区后修改本地优先级、MED或首选值,由这些属性去影响优选结果,只打标签不改属性,路由选择不会有任何变化。

大型社区和标准社区在控制通告范围上有什么区别?

协议层面行为一致,都是打标签后供策略匹配,区别在编码长度和容量,标准社区是4字节,格式为AS号加自定义值,2字节AS号环境下够用;大型社区是12字节,格式为三个字段,主要解决4字节AS号无法塞进标准社区格式的问题,跨域场景下用哪种,取决于双方设备能力和运营商约定。

给上游打了社区但回程流量没变化,问题出在哪?

按顺序查四点:一是该社区是否为运营商官方发布并已在对方侧完成备案;二是本端 send-community 是否真的开启,用 display bgp routing-table 确认属性已发出;三是运营商边界是否对未注册社区做了清洗;四是对方策略是否只对特定前缀长度或特定来源生效,四点里前两点是配置问题,后两点只能通过工单与运营商侧核实,无法从本端查证。

首发原创文章,作者:王坚‌,如若转载,请注明出处:https://idctop.com/article/792502.html

赞 (0)
上一篇 2026年11月10日 18:05
下一篇 2026年11月10日 18:06

相关推荐

  • 如何查询国内安全漏洞网站?国内权威漏洞检测平台推荐

    守护网络空间的关键枢纽国内安全漏洞网站是国家网络安全体系的核心基础设施,是连接漏洞发现者、厂商及广大用户的重要桥梁,它们通过规范化收集、验证、通报和修复漏洞信息,有效预防网络攻击、降低安全风险,对维护国家网络安全、保护关键信息基础设施和公民个人信息安全至关重要,核心价值与功能权威信息中枢: 作为官方或行业公认平……

    2026年2月12日
    34900
  • CDN常见几种错误是什么?CDN报错502怎么处理

    CDN加速出现错误时,核心排查路径应优先检查源站连通性、DNS解析准确性及HTTPS证书状态,多数情况下通过刷新缓存或修正配置即可解决,分发网络(CDN)作为网站加速的“高速公路”,其稳定性直接决定了用户的访问体验,在实际运维中,我们经常会遇到各种各样的报错,这些错误并非无迹可寻,它们通常指向特定的配置漏洞或网……

    云计算 2026年5月27日
    3700
  • 国家大模型名单有哪些?商汤入选了吗?

    国家大模型名单的发布,本质上是一场“去伪存真”的行业洗牌,商汤科技作为首批入选企业,其核心逻辑在于“基础设施底蕴”与“落地变现能力”的双重验证,这并非高深莫测的黑盒,而是大模型赛道从“炫技”走向“实用”的必然结果,理解这份名单,不需要复杂的行业黑话,只需看懂算力、数据与应用的三角关系,国家大模型名单的底层逻辑……

    2026年3月22日
    10900
  • 如何推送音频流到CDN?音频流媒体CDN加速方案

    将音频流推送至CDN的核心在于通过RTMP或SRT协议建立低延迟推流通道,利用CDN边缘节点实现全球用户的高速并发播放,这是保障直播流畅性的关键基础设施,分发的今天,音频直播早已不再是简单的“说话”,而是一场关于速度、稳定性和覆盖面的技术博弈,许多创作者和企业面临的最大痛点,往往不是内容质量,而是听众听到的“卡……

    2026年6月10日
    6400
  • 佛山购物网站建设有哪些步骤?,哪家更专业?

    佛山购物网站建设的关键在于本地化策略与移动端优化,直接决定转化率与用户留存,本地化策略决定购物网站成败购物网站成功与否,不能只看功能堆砌,而是看它是否融入本地场景,佛山消费者对实用性和效率要求较高,网站设计必须从界面语言到支付习惯都贴近本地需求,界面设计如何贴近佛山用户当用户打开网站时,第一印象往往决定去留,针……

    2026年7月25日
    900
  • 主站域名是什么意思?,新手如何快速理解主站域名作用?

    主站域名就是用户访问你网站时输入的那个核心网址,example.com;它负责品牌入口、流量承接、SEO权重汇聚,也是备案和邮箱等业务的身份锚点,新手先把它当成“店铺正门地址”,再理解子域名是“分店入口”,就不容易混,主站域名是什么意思?先看浏览器地址栏里的层级把一个完整网址拆开,主站域名马上清楚,以 http……

    2026年10月18日
    400
  • SLG国战游戏战斗服算力需求为何持续高,怎么办?

    SLG国战游戏战斗服算力需求持续高,是因为国战玩法本质上是“单服内数千玩家实时同屏交互”的极端场景,它把传统MMORPG的服务器压力从“分区承载”变成了“单点爆炸”,而战斗服恰恰是承接这股爆炸性算力需求的第一道闸门,为什么国战游戏战斗服那么“吃”算力国战游戏和普通SLG不一样,普通SLG的异步玩法,服务器只需要……

    2026年10月16日
    400
  • 在线汉字字体cdn是什么,在线汉字字体cdn

    2026年在线汉字字体CDN的核心优势在于通过智能分发与动态授权技术,解决了传统字体加载慢、版权风险高及多端适配难的问题,是提升Web性能与合规性的最佳方案,字体加载性能与版权合规的双重变革在2026年的Web开发环境中,字体不再是简单的视觉装饰,而是影响核心Web指标(CWV)的关键因素,随着《数字版权保护法……

    2026年5月18日
    4700
  • cdn下载是什么,cdn下载速度慢怎么办

    CDN下载并非简单的文件传输,而是通过分布式节点网络将内容缓存至离用户最近的服务器,从而显著提升访问速度、降低源站负载并保障高并发下的稳定性,在2026年的数字生态中,随着4K/8K超高清视频、大型游戏客户端及AI大模型文件的普及,传统的单点源站架构已无法应对海量数据的即时分发需求,CDN(内容分发网络)作为互……

    2026年5月13日
    6300
  • cdn日志分析系统怎么用?cdn日志分析工具推荐

    CDN日志分析系统的核心价值在于通过实时数据透视,精准定位网络延迟根源并优化带宽成本,是保障业务高可用性的关键基础设施,在数字化转型的深水区,企业不再仅仅关注“网站能不能打开”,而是更在意“打开得有多快”以及“为了这个速度花了多少钱”,传统的监控手段往往滞后,而CDN日志分析系统就像给网络链路装上了高清摄像头……

    2026年6月18日
    2800

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注