簡易BGPルーター

BGPルーターとピアを張り、簡単なBGPメッセージを交換することができます。

使い方

自分のLinux端末とネイバーの情報をjsonファイルに書き込んだ上でネイバーでBGPを動かし、自分の端末でプログラムbgp_peerを実行する。

実装した機能

サーバー機能を持つBGPルーターとopenメッセージを交換し合い、established状態に遷移する。

json設定ファイルの内容から自分が接続する経路情報を読み取り、その経路情報をupdateメッセージに乗せて送信する。

updateメッセージを受け取って、その経路情報を読み取りBGPテーブルに載せる。

BGPテーブルの内容から、ASパスの最も短い経路をホストのルーティングテーブルに登録する。

主な未実装の機能

サーバー機能

再接続機能

withdrawメッセージの送受信

4バイトASパスへの対応

IPv6への対応

その他諸々