拓扑

实验01 - Community  No-Advertise - 图1

步骤

  • 配置各接口IP,配置BGP
  • R1 通过 network命令 宣告2个环回接口
  • R2、R3、R4 跑 Confederation
  • 配置完成后,确认R3和R4 都有收到来自R1的路由,但是R4没有将其写进路由表,也没有再向R5 宣告 —— 因为R4 不知道怎么去到Next Hop,那R3 是如何知道的,因为和R2是直连网段

实验01 - Community  No-Advertise - 图2

  • 为了让R5 也能收到这2条路由,我们在R4 上配1条静态路由

实验01 - Community  No-Advertise - 图3

  • 我们在R2上创建 prefix-list, route-map 并加载到BGP,然后到R2-R5 上查看,还是可以收到 192.168.1.2 的路由
  1. ip prefix-list PRE_192_2 seq 5 permit 192.168.1.2/32
  2. !
  3. route-map RM_192_2 permit 10
  4. match ip address prefix-list PRE_192_2
  5. set community no-advertise
  6. !
  7. route-map RM_192_2 permit 20
  8. !

实验01 - Community  No-Advertise - 图4

  • 因为Cisco IOS默认是不传递 community的。我们在R2上补1条:neighbor 10.12.1.2 send-community。此时在R2上就可以看到192.168.1.2明细条目的变化,显示 not advertised to any peer

实验01 - Community  No-Advertise - 图5

  • 于此同时,R5 (R3、R4)上没有了192.168.1.2,只剩下了192.168.1.1

实验01 - Community  No-Advertise - 图6

  • 我们可以用一些辅助命令来进一步确认 : show bgp ipv4 unicast neighbors 10.12.1.2 advertised-routes 可以看到R1 是有在正常宣告2条路由,而R2对外宣告时 只剩下了1条

实验01 - Community  No-Advertise - 图7