Contents
① 物理的/IP疎通の確認
まずはTCP接続が成立しているかを確認します。
チェック項目
| 確認内容 | コマンド例 | OK状態 |
|---|---|---|
| 隣接ルータにping通るか | ping <neighbor-IP> | 応答あり |
| TCP/179が開いているか | telnet <neighbor-IP> 179 | 接続成功 |
| ルーティングで相手IPに到達できるか | traceroute <neighbor-IP> | 正常経路 |
| ACL/Firewallで179/TCPをブロックしていないか | – | 通過許可 |
E-BGPでは通常、直接接続インターフェイス を使うため、サブネットマスク設定やインターフェイスshutdownにも注意。
②AS番号の設定ミス
- 自分と相手の remote-as 設定が一致しているか。
- I-BGP(同一AS)なのか E-BGP(異なるAS)なのか整理。
router bgp 65001
neighbor 192.0.2.2 remote-as 65002 ← 相手AS番号が正しいか
③ネクストホップIPの指定方法
E-BGPでは通常、直接接続インターフェイスのIPでピアを結ぶ必要があります。
I-BGPでは Loopbackインターフェイスを使うことが多く、
その場合は update-source の設定が必要です。
router bgp 65001
neighbor 10.1.1.1 remote-as 65001
neighbor 10.1.1.1 update-source Loopback0
Loopbackでピアリングしているのに update-source がないと、
TCP接続できずに Active 状態で止まります。
④ TTL / eBGPマルチホップ設定
E-BGPはデフォルトで TTL=1(直結のみ許可)です。
間にルータがある場合(例えば間接接続やVPN越え)は、ebgp-multihop の設定が必要です。
router bgp 65001
neighbor 203.0.113.2 remote-as 65002
neighbor 203.0.113.2 ebgp-multihop 2
⑤ ネイバーIPの到達性(Next Hop)
相手のIPがルーティングテーブルに存在しないと確立できません。
- スタティックルート or IGPでネイバーIPを解決できるか確認。
show ip route <neighbor-IP>
→ ネイバー宛のルートが存在すればOK。
⑥ BGPバージョンの不一致
通常はBGP-4同士なので問題ありませんが、
古い機器同士だとバージョンの不一致で Notification が返ることがあります。
※現行ではほぼBGP-4固定なので、まれなケースです。
⑦ 認証(MD5など)の不一致
BGPピア間でMD5パスワードを設定している場合、
両方で同じパスワードを設定する必要があります。
neighbor 192.0.2.2 password cisco123
片方だけ設定されている or パスワード違い → すぐにセッション切断される。
⑧ ルータIDの競合
同一AS内(I-BGP)で Router-IDが重複していると確立しません。
show ip bgp summary
- Router-ID が一意か確認。
⑨ AFI/SAFI(Address Family)の設定
IPv4とIPv6でBGPは別セッション扱いです。
IPv4用のneighbor設定しかないのにIPv6で接続しようとすると確立しません。
router bgp 65001
address-family ipv4
neighbor 192.0.2.2 activate
⑩ セッション状態(ステートマシン)の確認
show ip bgp summary
| 状態 | 意味 | 対処 |
|---|---|---|
| Idle | 設定ミス/疎通なし | IP・AS確認 |
| Active | TCP接続再試行中 | 相手IP・ACL確認 |
| OpenSent / OpenConfirm | OPEN交換中 | バージョン・AS一致確認 |
| Established | 正常 | OK! |
トラブル時の診断コマンド集
| 目的 | コマンド |
|---|---|
| BGP状態確認 | show ip bgp summary |
| ピア詳細 | show ip bgp neighbors <IP> |
| 経路受信確認 | show ip bgp neighbors <IP> received-routes |
| 経路送信確認 | show ip bgp neighbors <IP> advertised-routes |
| TCPセッション確認 | show tcp brief |
典型的な「貼れない」原因まとめ
| 原因 | 内容 | 対策 |
|---|---|---|
| AS番号不一致 | remote-asミス | 双方確認 |
| IP到達性なし | ping通らない | ルート追加 |
| TTL制限 | ebgp-multihop未設定 | hop数調整 |
| Loopback使用 | update-source未設定 | 設定追加 |
| ACL/FW遮断 | TCP179ブロック | ACL開放 |
| 認証不一致 | MD5不一致 | 同一パス設定 |
| Router-ID重複 | 同一IDで競合 | ID変更 |