標準コミュニティ (Standard Community)
標準コミュニティは、BGPにおいてプレフィックスに対して属性を設定し、ルーティングの決定を制御するために使用されます。標準コミュニティは、32ビットの数値で表され、各ルートがどのコミュニティに属するかを指定します。よく知られた標準コミュニティには以下のものがあります:
- internet: すべてのルータに対してルートをアドバタイズします。
- no-export: 外部BGP (EBGP) ピアにルートをアドバタイズしません。
- no-advertise: 他のピア (内部も外部も) にルートをアドバタイズしません。
- local-AS: ローカルASの外のピアにルートをアドバタイズしません。
拡張コミュニティ (Extended Community)
拡張コミュニティは、標準コミュニティよりも詳細な制御を可能にし、特にMPLS VPNや他の高度なネットワーク機能で使用されます。拡張コミュニティは、64ビットまたは96ビットの数値で表され、標準コミュニティでは表現しきれない属性情報を提供します。
拡張コミュニティには、標準コミュニティと同様の属性に加えて、次のような詳細な属性が含まれます:
- Route Target (RT): 特定のVPNインスタンス内でのルートのインポートとエクスポートに使用されます。
おもにMP-BGPで使用されています。 - Route Origin (RO): ルートの発信元に関する情報を提供します。
- OSPF Domain ID: OSPFエリア間でのルート選択を制御します。
標準コミュニティを使用した設定
基本構文
ルートマップを使用して、特定の条件に一致するルートに対してコミュニティを設定します。
Router(config)#route-map route-map-name permit number
Router(config-route-map)#match ip address {access-list-number | access-list-name | prefix-list prefix-list-name }
Router(config-route-map)#set metric metric
コミュニティ値を送付できるように設定します。
Router2(config-router)#neighbor address send-community
設定例

Router4からRouter1のLoアドレスに疎通が取れる状態となっています。
Router4#ping 1.1.1.1
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 1.1.1.1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 5/5/6 ms
Router4#
Router1
hostname Router1
int gi0/0
ip address 192.168.12.1 255.255.255.0
no shutdown
int lo1
ip address 1.1.1.1 255.255.255.255
router bgp 100
neighbor 192.168.12.2 remote-as 200
network 1.1.1.1 mask 255.255.255.255
network 192.168.12.0 mask 255.255.255.0
Router2
hostname Router2
int gi0/1
ip address 192.168.12.2 255.255.255.0
no shutdown
int gi0/0
ip address 192.168.23.2 255.255.255.0
no shutdown
int lo2
ip address 2.2.2.2 255.255.255.255
router bgp 200
neighbor 192.168.23.3 remote-as 200
neighbor 192.168.12.1 remote-as 100
network 2.2.2.2 mask 255.255.255.255
network 192.168.12.0 mask 255.255.255.0
network 192.168.23.0 mask 255.255.255.0
Router3
hostname Router3
int gi0/1
ip address 192.168.23.3 255.255.255.0
no shutdown
int gi0/0
ip address 192.168.34.3 255.255.255.0
no shutdown
int lo3
ip address 3.3.3.3 255.255.255.255
router bgp 200
neighbor 192.168.23.2 remote-as 200
neighbor 192.168.34.4 remote-as 300
network 3.3.3.3 mask 255.255.255.255
network 192.168.23.0 mask 255.255.255.0
network 192.168.34.0 mask 255.255.255.0
Router4
hostname Router4
int gi0/1
ip address 192.168.34.4 255.255.255.0
no shutdown
int lo4
ip address 4.4.4.4 255.255.255.255
router bgp 300
neighbor 192.168.34.3 remote-as 200
network 4.4.4.4 mask 255.255.255.255
network 192.168.34.0 mask 255.255.255.0
no-exportの設定
no-exportコミュニティは、特定のルートが外部BGP (EBGP) ピアにアドバタイズされないようにするために使用されます。これにより、内部ネットワークでルートを保持し、外部ネットワークに対してはアドバタイズしないように制御できます。
Router1で設定します。
Router1(config)#ip prefix-list Lo1 permit 1.1.1.1/32
Router1(config)#route-map Router1-COMMUNITY permit 10
Router1(config-route-map)#match ip address prefix-list Lo1
Router1(config-route-map)#set community no-export
Router1(config-route-map)#route-map Router1-COMMUNITY permit 20
Router1(config)#router bgp 100
Router1(config-router)#neighbor 192.168.12.2 send-community
Router1(config-router)#neighbor 192.168.12.2 route-map Router1-COMMUNITY out
Router2,Router3でもCOMMUNITYアトリビュート値を送付するように設定します。
Router2(config)#router bgp 200
Router2(config-router)#neighbor 192.168.12.1 send-community
Router2(config-router)#neighbor 192.168.23.3 send-community
Router3(config)#router bgp 200
Router3(config-router)#neighbor 192.168.23.2 send-community
Router3(config-router)#neighbor 192.168.34.4 send-community
Router1でBGPプロセスをクリアします。
Router1#clear ip bgp *
Router2でRouter1から送付された1.1.1.1に関するルート情報をeBGPにエクスポートしないよう設定したためRouter2やiBGPのRouter3では1.1.1.1に疎通を取ることはできますが、eBGPのRouetr4では1.1.1.1に疎通を取ることが出来なくなりました。

Router2#ping 1.1.1.1
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 1.1.1.1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 2/3/5 ms
Router2#
Router3#ping 1.1.1.1
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 1.1.1.1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 3/3/4 ms
Router3#
Router4#ping 1.1.1.1
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 1.1.1.1, timeout is 2 seconds:
…..
Success rate is 0 percent (0/5)
Router4#
当然Router4で1.1.1.1に関するBGPのルート情報も消えています。
Router4#sh ip bgp | begin Network
Network Next Hop Metric LocPrf Weight Path
*> 2.2.2.2/32 192.168.34.3 0 200 i
*> 3.3.3.3/32 192.168.34.3 0 0 200 i
*> 4.4.4.4/32 0.0.0.0 0 32768 i
*> 192.168.12.0 192.168.34.3 0 200 i
*> 192.168.23.0 192.168.34.3 0 0 200 i
* 192.168.34.0 192.168.34.3 0 0 200 i
*> 0.0.0.0 0 32768 i
Router4#
no-advertiseの設定
BGP (Border Gateway Protocol) の no-advertise コミュニティは、ルートがどのピア(内部ピアと外部ピアの両方)にもアドバタイズされないようにするための特別なコミュニティ属性です。このコミュニティを使用すると、ルートが特定のBGPスピーカーに到達した後、そのBGPスピーカーから他のいかなるピアにもアドバタイズされないように制御できます。
Router1(config)#ip prefix-list Lo1 permit 1.1.1.1/32
Router1(config)#route-map Router1-COMMUNITY permit 10
Router1(config-route-map)#match ip address prefix-list Lo1
Router1(config-route-map)#set community no-advertise
Router1(config-route-map)#route-map Router1-COMMUNITY permit 20
Router1(config)#router bgp 100
Router1(config-router)#neighbor 192.168.12.2 send-community
Router1(config-router)#neighbor 192.168.12.2 route-map Router1-COMMUNITY out
Router2,Router3でもCOMMUNITYアトリビュート値を送付するように設定が必要です。
Router2(config)#router bgp 200
Router2(config-router)#neighbor 192.168.12.1 send-community
Router2(config-router)#neighbor 192.168.23.3 send-community
Router3(config)#router bgp 200
Router3(config-router)#neighbor 192.168.23.2 send-community
Router3(config-router)#neighbor 192.168.34.4 send-community
Router2でRouter1から送付された1.1.1.1に関するルート情報をiBGP、eBGPにエクスポートしないよう設定したためRouter2では1.1.1.1に疎通を取ることはできますが、iBGPのRouter3やeBGPのRouetr4では1.1.1.1に疎通を取ることが出来なくなりました。

Router2#ping 1.1.1.1
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 1.1.1.1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 3/3/4 ms
Router2#
Router3#ping 1.1.1.1
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 1.1.1.1, timeout is 2 seconds:
…..
Success rate is 0 percent (0/5)
Router3#
Router4#ping 1.1.1.1
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 1.1.1.1, timeout is 2 seconds:
…..
Success rate is 0 percent (0/5)
Router4#
当然、Router3で1.1.1.1に関するBGPのルート情報は消えています。
Router3#show ip bgp | begin Network
Network Next Hop Metric LocPrf Weight Path
*>i 2.2.2.2/32 192.168.23.2 0 100 0 i
*> 3.3.3.3/32 0.0.0.0 0 32768 i
*> 4.4.4.4/32 192.168.34.4 0 0 300 i
*>i 192.168.12.0 192.168.23.2 0 100 0 i
*i 192.168.23.0 192.168.23.2 0 100 0 i
*> 0.0.0.0 0 32768 i
*> 192.168.34.0 0.0.0.0 0 32768 i
192.168.34.4 0 0 300 i
Router3#