R1:
bgp 100
peer 10.1.12.2 as-number 100
peer 10.1.13.3 as-number 200
#
ipv4-family unicast
undo synchronization
network 1.1.1.1 255.255.255.255 route-policy comm
peer 10.1.12.2 enable
peer 10.1.12.2 next-hop-local
peer 10.1.13.3 enable
peer 10.1.13.3 advertise-community
route-policy comm permit node 1
apply community 100:1
R2:
bgp 100
peer 10.1.12.1 as-number 100
peer 10.1.24.2 as-number 300
#
ipv4-family unicast
undo synchronization
peer 10.1.12.1 enable
peer 10.1.12.1 next-hop-local
peer 10.1.24.2 enable
peer 10.1.24.2 route-policy comm export
peer 10.1.24.2 advertise-community
route-policy comm permit node 10
apply community 100:2
R3:
bgp 200
peer 10.1.13.1 as-number 100
peer 10.1.34.2 as-number 300
#
ipv4-family unicast
undo synchronization
peer 10.1.13.1 enable
peer 10.1.34.2 enable
peer 10.1.34.2 advertise-community
R4
bgp 300
peer 10.1.24.1 as-number 100
peer 10.1.34.1 as-number 200
#
ipv4-family unicast
undo synchronization
peer 10.1.24.1 enable
peer 10.1.24.1 route-policy comm import
peer 10.1.34.1 enable
peer 10.1.34.1 route-policy comm import
#
route-policy comm permit node 10
if-match community-filter 1
apply local-preference 200
#
route-policy comm permit node 20
if-match community-filter 2
apply local-preference 50
#
ip community-filter 1 permit 100:1
ip community-filter 2 permit 100:2