VyOSでBGPを設定したみた
こーめいです。
VyOSでBGPのオプションがどの程度使えるか気になって設定してみました。
BGP設定
set protocols bgp <AS番号>
neighbor設定
set protocols bgp <AS番号> neighbor <ip address> remote-as <AS番号>
nexthop-self設定
set protocols bgp <AS番号> neighbor <ip address> nexthop-self
デフォルトルート設定
set protocols bgp <AS番号> neighbor <ip address> default-originate
デフォルトルートを配送したい時に設定します。
hello timer設定
set protocols bgp <AS番号> neighbor <ip address> timer keepalive <sec>
dead timer設定
set protocols bgp <AS番号> neighbor <ip address> timer holdtime <sec>
retry timer設定
set protocols bgp <AS番号> neighbor <ip address> timer connect <times>
update-source設定
set protocols bgp <AS番号> neighbor <ip address> update-source <ip address>
router id設定
set protocols bgp <AS番号> parameters router-id <ip address>
ダイレクトコネクト再配送設定
set protocols bgp <AS番号> redistribute connected metric <value>
スタティックルート再配送設定
set protocols bgp <AS番号> redistribute static metric <value>
ebgp マルチパス再配送設定
set protocols bgp <AS番号> maximum-paths ebgp <values>
以下、設定をshowコマンドで見た時の状態です。reditributeは省いています。
protocols { bgp 64513 { maximum-paths { ebgp 2 } neighbor 172.16.1.2 { default-originate { } nexthop-self remote-as 64512 timers { connect 1 holdtime 4 keepalive 1 } update-source 172.16.1.1 } parameters { router-id 172.16.1.1 }
再配送部分は以下の通りです。
protocols { bgp 64513 { redistribute { connected { metric 1 } static { metric 1 } } }
合わせてRoute-map + prefix-listで再配送するstaticを絞ってみました。既に気づいているかと思いますが、双方とも暗黙のdenyで落としています。
policy { prefix-list static { rule 5 { action permit prefix 0.0.0.0/0 } } route-map static { rule 1 { action permit match { ip { address { prefix-list static } } } } } protocols { bgp 64513 { redistribute { static { metric 10 route-map static } } }
コンフィグレーションとは別で各設定は動作確認を取りましたが、マルチパスのbgpテーブルとルーティングテーブルはメモしておきます。
vyos@vyos:~$ show ip bgp BGP table version is 0, local router ID is 172.16.1.1 Status codes: s suppressed, d damped, h history, * valid, > best, i - internal, r RIB-failure, S Stale, R Removed Origin codes: i - IGP, e - EGP, ? - incomplete Network Next Hop Metric LocPrf Weight Path * 192.168.0.0 172.16.2.2 0 0 64512 i *> 172.16.1.2 0 0 64512 i vyos@vyos:~$ show ip route Codes: K - kernel route, C - connected, S - static, R - RIP, O - OSPF, I - ISIS, B - BGP, > - selected route, * - FIB route S 0.0.0.0/0 [1/0] via 172.16.1.254 C>* 172.16.1.0/24 is directly connected, eth1 C>* 172.16.2.0/24 is directly connected, eth2 B>* 192.168.0.0/24 [20/0] via 172.16.1.2, eth1, 03:12:25 * via 172.16.2.2, eth2, 03:12:25
ちなみにbgpの設定を対向側で落としたりしましたが、以下の通りログも出力されていました。Trap確認すれば良かった・・・。
$ cat /var/log/messages vyos bgpd[2549]: stream_read_try: read failed on fd 9: Connection reset by peer vyos bgpd[2549]: 172.16.1.2 [Error] bgp_read_packet error: Connection reset by peer
細かい点までBGPでやりたかったことは一通り確認できました。
シェアして頂けると嬉しいです。
参考になったという方がいれば是非お願いしますm(_ _ )m
モチベーション維持の観点で非常に励みになります。
Vyatta仮想ルータ活用ガイド (Software Design plus)
- 作者: 松本直人,さくらインターネット研究所,日本Vyattaユーザー会
- 出版社/メーカー: 技術評論社
- 発売日: 2014/06/14
- メディア: 大型本
- この商品を含むブログを見る
Cisco BGP‐4コマンド設定ハンドブック―Cisco IOSで使うすべてのBGP‐4コマンドを完全詳解 (CCIE professional development)
- 作者: ウィリアム・R.パークハースト,シスコシステムズ,William R. Parkhurst,糸川洋
- 出版社/メーカー: ソフトバンククリエイティブ
- 発売日: 2002/07/23
- メディア: 単行本
- 購入: 1人 クリック: 19回
- この商品を含むブログ (2件) を見る