# 14. BGP設定

## 14.1. BGPを使用する

iBGPとeBGPの設定例です。

### 14.1.1. 設定

#### 14.1.1.1. 本装置(A)の設定

    Router# configure
    Router(config)# router bgp 65500
    Router(config-bgp)# neighbor 10.0.0.2 remote-as 65501
    Router(config-bgp)# neighbor 172.16.0.1 remote-as 65500
    Router(config-bgp)# address-family ipv4 unicast
    Router(config-bgp-af4)# neighbor 172.16.0.1 next-hop-self
    Router(config-bgp-af4)# network 172.16.0.0/24
    Router(config-bgp-af4)# network 192.168.0.0/24
    Router(config-bgp-af4)# exit
    Router(config-bgp)# exit
    Router(config)# interface GigaEthernet0.0
    Router(config-GigaEthernet0.0)# ip address 10.0.0.1/24
    Router(config-GigaEthernet0.0)# no shutdown
    Router(config-GigaEthernet0.0)# exit
    Router(config)# interface GigaEthernet1.0
    Router(config-GigaEthernet1.0)# ip address 172.16.0.254/24
    Router(config-GigaEthernet1.0)# no shutdown
    Router(config-GigaEthernet1.0)# exit
    Router(config)# interface GigaEthernet2.0
    Router(config-GigaEthernet2.0)# ip address 192.168.0.254/24
    Router(config-GigaEthernet2.0)# no shutdown
    Router(config-GigaEthernet2.0)# exit
    Router(config)#

#### 14.1.1.2. 本装置(B)の設定

    Router# configure
    Router(config)# router bgp 65500
    Router(config-bgp)# neighbor 172.16.0.254 remote-as 65500
    Router(config-bgp)# address-family ipv4 unicast
    Router(config-bgp-af4)# network 192.168.1.0/24
    Router(config-bgp-af4)# exit
    Router(config-bgp)# exit
    Router(config)# interface GigaEthernet0.0
    Router(config-GigaEthernet0.0)# ip address 172.16.0.1/24
    Router(config-GigaEthernet0.0)# no shutdown
    Router(config-GigaEthernet0.0)# exit
    Router(config)# interface GigaEthernet2.0
    Router(config-GigaEthernet2.0)# ip address 192.168.1.254/24
    Router(config-GigaEthernet2.0)# no shutdown
    Router(config-GigaEthernet2.0)# exit
    Router(config)#

#### 14.1.1.3. 本装置(C)の設定

    Router# configure
    Router(config)# router bgp 65501
    Router(config-bgp)# neighbor 10.0.0.1 remote-as 65500
    Router(config-bgp)# address-family ipv4 unicast
    Router(config-bgp-af4)# network 192.168.2.0/24
    Router(config-bgp-af4)# exit
    Router(config-bgp)# exit
    Router(config)# interface GigaEthernet0.0
    Router(config-GigaEthernet0.0)# ip address 10.0.0.2/24
    Router(config-GigaEthernet0.0)# no shutdown
    Router(config-GigaEthernet0.0)# exit
    Router(config)# interface GigaEthernet2.0
    Router(config-GigaEthernet2.0)# ip address 192.168.2.254/24
    Router(config-GigaEthernet2.0)# no shutdown
    Router(config-GigaEthernet2.0)# exit
    Router(config)#

### 14.1.2. 解説

#### 14.1.2.1. 本装置(A)の解説

    router bgp 65500
      neighbor 10.0.0.2 remote-as 65501
      neighbor 172.16.0.1 remote-as 65500

BGP4を起動します。
値 : `65500` はAS番号です。
隣接ルーターのIPアドレスおよび所属するAS番号を設定します。

    router bgp 65500
      address-family ipv4 unicast
        network 172.16.0.0/24
        network 192.168.0.0/24

アドレスファミリーモード内で自装置が所持している経路情報を隣接ルーターに広告する設定です。

    router bgp 65500
      address-family ipv4 unicast
        neighbor 172.16.0.1 next-hop-self

iBGPである本装置(B)に対して、本装置(C)から広告された経路へのネクストホップを自装置のアドレスにして広告します。

#### 14.1.2.2. 本装置(B)の解説

本装置(A)と同様の考え方で設定します。

#### 14.1.2.3. 本装置(C)の解説

本装置(A)と同様の考え方で設定します。

## 14.2. BGPによる外部経路の再配信

BGPで外部経路を再配信する設定例です。

### 14.2.1. 設定

#### 14.2.1.1. 本装置(A)の設定

    Router# configure
    Router(config)# ip route 192.168.1.0/24 172.16.0.1
    Router(config)# router bgp 65500
    Router(config-bgp)# neighbor 10.0.0.2 remote-as 65501
    Router(config-bgp)# address-family ipv4 unicast
    Router(config-bgp-af4)# network 192.168.0.0/24
    Router(config-bgp-af4)# redistribute static
    Router(config-bgp-af4)# exit
    Router(config-bgp)# exit
    Router(config)# interface GigaEthernet0.0
    Router(config-GigaEthernet0.0)# ip address 10.0.0.1/24
    Router(config-GigaEthernet0.0)# no shutdown
    Router(config-GigaEthernet0.0)# exit
    Router(config)# interface GigaEthernet1.0
    Router(config-GigaEthernet1.0)# ip address 172.16.0.254/24
    Router(config-GigaEthernet1.0)# no shutdown
    Router(config-GigaEthernet1.0)# exit
    Router(config)# interface GigaEthernet2.0
    Router(config-GigaEthernet2.0)# ip address 192.168.0.254/24
    Router(config-GigaEthernet2.0)# no shutdown
    Router(config-GigaEthernet2.0)# exit
    Router(config)#

#### 14.2.1.2. 本装置(B)の設定

    Router# configure
    Router(config)# ip route default 172.16.0.254
    Router(config)# interface GigaEthernet0.0
    Router(config-GigaEthernet0.0)# ip address 172.16.0.1/24
    Router(config-GigaEthernet0.0)# no shutdown
    Router(config-GigaEthernet0.0)# exit
    Router(config)# interface GigaEthernet2.0
    Router(config-GigaEthernet2.0)# ip address 192.168.1.254/24
    Router(config-GigaEthernet2.0)# no shutdown
    Router(config-GigaEthernet2.0)# exit
    Router(config)#

#### 14.2.1.3. 本装置(C)の設定

    Router# configure
    Router(config)# router bgp 65501
    Router(config-bgp)# neighbor 10.0.0.1 remote-as 65500
    Router(config-bgp)# address-family ipv4 unicast
    Router(config-bgp-af4)# network 192.168.2.0/24
    Router(config-bgp-af4)# exit
    Router(config-bgp)# exit
    Router(config)# interface GigaEthernet0.0
    Router(config-GigaEthernet0.0)# ip address 10.0.0.2/24
    Router(config-GigaEthernet0.0)# no shutdown
    Router(config-GigaEthernet0.0)# exit
    Router(config)# interface GigaEthernet2.0
    Router(config-GigaEthernet2.0)# ip address 192.168.2.254/24
    Router(config-GigaEthernet2.0)# no shutdown
    Router(config-GigaEthernet2.0)# exit
    Router(config)#

### 14.2.2. 解説

#### 14.2.2.1. 本装置(A)の解説

    ip route 192.168.1.0/24 172.16.0.1

スタティックルートを設定します。

    router bgp 65500
      neighbor 10.0.0.2 remote-as 65501

BGP4を起動します。
値 : `65500` はAS番号です。
隣接ルーターのIPアドレスおよび所属するAS番号を設定します。

    router bgp 65500
      address-family ipv4 unicast
        network 192.168.0.0/24

アドレスファミリーモード内で自装置が所持している経路情報を隣接ルーターに広告する設定です。

    router bgp 65500
      address-family ipv4 unicast
        redistribute static

BGP以外で学習した経路情報をBGPで再配信する設定です。

#### 14.2.2.2. 本装置(B)の解説

本装置(A)と同様の考え方で設定します。

#### 14.2.2.3. 本装置(C)の解説

本装置(A)と同様の考え方で設定します。

## 14.3. BGPマルチパスによる負荷分散

BGPマルチパスを使用して負荷分散する設定例です。
送信方向と受信方向で経路が異なる場合もあります。

### 14.3.1. 設定

#### 14.3.1.1. 本装置(A)の設定

    Router# configure
    Router(config)# ip multipath per-flow-fix-interface
    Router(config)# router bgp 65500
    Router(config-bgp)# neighbor 10.0.0.2 remote-as 65501
    Router(config-bgp)# neighbor 10.0.0.3 remote-as 65501
    Router(config-bgp-af4)# address-family ipv4 unicast
    Router(config-bgp-af4)# multipath 2
    Router(config-bgp-af4)# network 192.168.0.0/24
    Router(config-bgp-af4)# exit
    Router(config-bgp)# exit
    Router(config)# interface GigaEthernet0.0
    Router(config-GigaEthernet0.0)# ip address 10.0.0.1/24
    Router(config-GigaEthernet0.0)# no shutdown
    Router(config-GigaEthernet0.0)# exit
    Router(config)# interface GigaEthernet2.0
    Router(config-GigaEthernet2.0)# ip address 192.168.0.254/24
    Router(config-GigaEthernet2.0)# no shutdown
    Router(config-GigaEthernet2.0)# exit
    Router(config)#

#### 14.3.1.2. 本装置(B)の設定

    Router# configure
    Router(config)# vrrp enable
    Router(config)# watch-group test-watch 10
    Router(config-watch-test-watch-10)# event 10 ip unreach-host 192.168.0.254 GigaEthernet0.0 10.0.0.1
    Router(config-watch-test-watch-10)# action 10 ip shutdown-vrrp 10
    Router(config-watch-test-watch-10)# action 20 turn-BAK-LED-on
    Router(config-watch-test-watch-10)# exit
    Router(config)# network-monitor test-watch directed-response
    Router(config)# network-monitor test-watch enable
    Router(config)# router bgp 65501
    Router(config-bgp)# neighbor 10.0.0.1 remote-as 65500
    Router(config-bgp)# neighbor 10.0.0.3 remote-as 65501
    Router(config-bgp-af4)# address-family ipv4 unicast
    Router(config-bgp-af4)# network 192.168.1.0/24
    Router(config-bgp-af4)# exit
    Router(config-bgp)# exit
    Router(config)# interface GigaEthernet0.0
    Router(config-GigaEthernet0.0)# ip address 10.0.0.2/24
    Router(config-GigaEthernet0.0)# no shutdown
    Router(config-GigaEthernet0.0)# exit
    Router(config)# interface GigaEthernet2.0
    Router(config-GigaEthernet2.0)# ip address 192.168.1.254/24
    Router(config-GigaEthernet2.0)# vrrp 10 ip 192.168.1.201
    Router(config-GigaEthernet2.0)# vrrp 10 priority 110
    Router(config-GigaEthernet2.0)# vrrp 10 ip virtual-host
    Router(config-GigaEthernet2.0)# vrrp 20 ip 192.168.1.202
    Router(config-GigaEthernet2.0)# vrrp 20 priority 90
    Router(config-GigaEthernet2.0)# vrrp 20 ip virtual-host
    Router(config-GigaEthernet2.0)# no shutdown
    Router(config-GigaEthernet2.0)# exit
    Router(config)#

#### 14.3.1.3. 本装置(C)の設定

    Router# configure
    Router(config)# vrrp enable
    Router(config)# watch-group test-watch 10
    Router(config-watch-test-watch-10)# event 10 ip unreach-host 192.168.0.254 GigaEthernet0.0 10.0.0.1
    Router(config-watch-test-watch-10)# action 10 ip shutdown-vrrp 20
    Router(config-watch-test-watch-10)# action 20 turn-BAK-LED-on
    Router(config-watch-test-watch-10)# exit
    Router(config)# network-monitor test-watch directed-response
    Router(config)# network-monitor test-watch enable
    Router(config)# router bgp 65501
    Router(config-bgp)# neighbor 10.0.0.1 remote-as 65500
    Router(config-bgp)# neighbor 10.0.0.2 remote-as 65501
    Router(config-bgp-af4)# address-family ipv4 unicast
    Router(config-bgp-af4)# network 192.168.1.0/24
    Router(config-bgp-af4)# exit
    Router(config-bgp)# exit
    Router(config)# interface GigaEthernet0.0
    Router(config-GigaEthernet0.0)# ip address 10.0.0.3/24
    Router(config-GigaEthernet0.0)# no shutdown
    Router(config-GigaEthernet0.0)# exit
    Router(config)# interface GigaEthernet2.0
    Router(config-GigaEthernet2.0)# ip address 192.168.1.253/24
    Router(config-GigaEthernet2.0)# vrrp 10 ip 192.168.1.201
    Router(config-GigaEthernet2.0)# vrrp 10 priority 90
    Router(config-GigaEthernet2.0)# vrrp 10 ip virtual-host
    Router(config-GigaEthernet2.0)# vrrp 20 ip 192.168.1.202
    Router(config-GigaEthernet2.0)# vrrp 20 priority 110
    Router(config-GigaEthernet2.0)# vrrp 20 ip virtual-host
    Router(config-GigaEthernet2.0)# no shutdown
    Router(config-GigaEthernet2.0)# exit
    Router(config)#

### 14.3.2. 解説

#### 14.3.2.1. 本装置(A)の解説

    ip multipath per-flow-fix-interface

マルチパスの負荷分散方式の設定です。
`per-flow-fix-interface` と設定することで、同一フローの通信は同じ経路を使用します。

    router bgp 65500
      neighbor 10.0.0.2 remote-as 65501
      neighbor 10.0.0.3 remote-as 65501

BGP4を起動します。
値 : `65500` はAS番号です。
隣接ルーターのIPアドレスおよび所属するAS番号を設定します。

    router bgp 65500
      address-family ipv4 unicast
        multipath 2

BGPマルチパスの設定です。
マルチパスの数を設定します。

#### 14.3.2.2. 本装置(B)の解説

    vrrp enable
    interface GigaEthernet2.0
      vrrp 10 ip 192.168.1.201
      vrrp 10 priority 110
      vrrp 10 ip virtual-host
      vrrp 20 ip 192.168.1.202
      vrrp 20 priority 90
      vrrp 20 ip virtual-host

VRRPの設定です。
VRRPの有効化設定とVRRPの仮想IPアドレスを設定します。
必要に応じてVRRPの優先度を変更します。
VRRPのデフォルトの優先度は100です。
"ip virtual-host"により、VRRP仮想IPアドレス宛ての通信にも応答できるようになります。
デフォルトゲートウェイが `192.168.1.201` に設定されている端末は本装置(B)経由で、デフォルトゲートウェイが `192.168.1.202` に設定されている端末は本装置(C)経由でそれぞれ正常時は通信します。

    watch-group test-watch-1 10
      event 10 ip unreach-host 192.168.0.254 GigaEthernet0.0 10.0.0.1
      action 10 ip shutdown-vrrp 10
      action 20 turn-BAK-LED-on
    network-monitor test-watch-1 directed-response
    network-monitor test-watch-1 enable

ネットワークモニターの設定です。
ホスト監視により本装置(A)のLAN側 : `192.168.0.254` を監視し、応答がなくなった場合に障害と判定します。
障害検出時にVRRP( `VRID:10` )をshutdownさせることにより、全ての通信が本装置(C)経由となります。
また、装置前面のBAKランプも点灯します。
障害発生中も本装置(A)のLAN側 : `192.168.0.254` を監視します。
"directed-response"により、Pingの応答は受信したインタフェースからそのまま送信するようになります。

#### 14.3.2.3. 本装置(C)の解説

本装置(B)と同様の考え方で設定します。