THE FIRST ONE TO BRING IT UP #3
• 有坂 光 / @hikari1019
• 社会人3年生 ネットワークエンジニアになりたい!!
• 誰よりもネットワークが好き!
• 2011/11/01 本気でネットワークの勉強を始める
• 2011/11/30 Cisco Certified Network Associate 取得
• 現在 Cisco Certified Network Professional 勉強中



まぁなんだ。つまりこうゆう事だ
勉強会主催者が誰よりも
ネットワーク初心者じゃないか!?

(/。\) ハズカシイ
しかし!ネットワーク大好き!
という気持ちは誰にも負けません!

今日1日宜しくお願いします!
タイムスケジュール
 • 13:00~13:30 各拠点入館手続き
 • 13:30~14:00 今のこれ!


 • 14:00~15:30 各拠点 AS 設計
 • 15:30~17:00 ルート情報の交換
 • 17:00~18:00 BGPポリシーベースルーティングの検証
 • 18:00~19:00 後片付け! &     焼肉屋へGO!!!



みんなでおいしい焼肉を食べるために頑張りましょう!
構築作業に入る前に軽く座学
BGP ってそもそもなんだ!
AS (autonomous system) 間でルート情報を交換するプロトコル
  → 一般的に Internet Services Provider で使用
インターネットの大規模ネットワークを支えるルーティングプロ
トコル
TCPを用いた信頼性のある通信を実現
BGPパスアトリビュートによるルーティングの制御
                  AS1 が管理している
                         NW
                      network:1
                      network:2
      BGP                                 BGP



 AS2 が管理している            BGP         AS3 が管理している
        NW                                 NW
     network:10                        network:100
     network:20                        network:200
つまり俺らはこれから
インターネットを作るんだ!
BGPの仕組み
BGP の仕組み
2台のルータ間でTCP(port:179)による接続を行い隣接関係を結ぶ
   → Neighbor や Peer と呼ばれる。
ASのローカル経路、他のASから学習した経路を交換する



         AS1 の経路情報を
              送信               AS 3



AS 1                    AS 2



         AS2,3,4 の経路情
            報を送信               AS 4
BGPルータが保持するデータベース
BGP ルータが保持するデータベース
BGPルータの3つのデータベース


・ ネイバーテーブル

・ BGPテーブル

・ ルーティングテーブル
ネイバー テーブル
ルート情報を交換するBGPルータの情報を保存
ネイバールータが所属するASにより3つの関係あり

・ EBGPネイバー
 → 自ルータのAS番号とネイバールータのAS番号が異なる


・ IBGPネイバー
 → 自ルータのAS番号とネイバールータのAS番号が同じ


・ IEBGPネイバー(コンフェデレーション使用時)
 → 自ルータのサブAS番号とネイバールータのサブAS番号が異なる
ネイバー テーブル
 # show bgp ipv6 unicast summary コマンドで確認




                                    ネイバーから受信している経路
                                          数
                                    ※数字になっていれば隣接関係




ネイバーのIPアドレス
BGP テーブル
  BGPで送受信するルート情報を保存
  ネイバーから受信したルート情報は全て格納
                            対象のネットワークのNextHop
  # show bgp ipv6 unicast


目的のネットワークアドレス




           BGPでアドバタイズされるルート情報は
            BGPテーブル上のベストパス(*>)のみ
ルーティング テーブル
  BGPのルート情報は「B」と表示 アドミニストレーティブディス
  タンス値
   EBGPルート = 20
   IBGPルート = 200
  # show ipv6 route


                          対象のネットワークのNextHop
目的のネットワークアドレス
BGPパスアトリビュート
BGP パスアトリビュート
経路情報にはいくつかのパスアトリビュートが付加されている
・   ORIGIN
・   AS_PATH               必ずBGPの経路情報に含まれる

・   NEXT_HOP
・ LOCAL_PREFERENCE
・ Multi Exit Discriminator(MED)
・ COMMUNITY
パスアトリビュートの書き換えやフィルタリングなど行い
ベストパスを任意に決定し、パケットのルーティングを制御する


     他にも沢山のBGPパスアトリビュートが存在します
ORIGIN アトリビュート
ORIGIN アトリビュートはBGPルートの生成元を示す

・ IGP 「i」 (優先度:高)
 →BGPルートが AS 内のIGP (RIPやOSPFなど)から生成されている事を示す
・ EGP「e」 (優先度:中)
 →BGPルートがBGPの前身のプロトコルであるEGPから生成されている事を示
す
・ Incomplete「?」 (優先度:低)            ORIGINアトリビュート
 →BGPの生成元が不明であることを示す
AS_PATH アトリビュート
AS_PATH アトリビュートはBGPルートが経由してきたAS番号を
示す



                           AS_PATHアトリビュート




   経由する数が少ないほうが優先度が高い
NEXT_HOP アトリビュート
NEXT_HOPアトリビュート、ルートに対するネクストホップアド
レスを示す


                        NEXT_HOPアトリビュート
アトリビュートの動き
経路情報を通知する時に自身のAS番号を追記する
            AS1 の経路情報を送信
            AS_PATH :1
            NEXT_HOP:2001:1::1
            ORIGIN  :i



AS 1                                              AS 2
          2001:1::1           2001:1::2

                                                         2001:100::1

                                                           AS1 の経路情報を送信
                                                           AS_PATH :2 1
                                                           NEXT_HOP:2001:100::1
                                                           ORIGIN  :i
       2001:200::2                  2001:200::1            2001:100::2
AS 4                                              AS 3
             AS1 の経路情報を送信
             AS_PATH :3 2 1
             NEXT_HOP:2001:200::1
             ORIGIN  :i
ルーティングループの検知
BGPパスアトリビュートを参照して、自身のAS番号が含まれてい
る場合
その経路情報を破棄する。
             AS1 の経路情報を送信
                 AS_PATH:1




AS 1                         AS 2




                                    AS1 の経路情報を送信
                                       AS_PATH:2 1
 AS1 の経路情報を送信
   AS_PATH:3 2 1

                             AS 3
       自身のAS番号が含まれている
       経路情報を破棄
ほんの少しだけBGPを
ご紹介しました。
とりあえず実機を触って実際にどん
な動きをするか見てみましょう。
今日はこんなネットワークを作ります!
                                            @tomocha
                                             AS65537

                     @kongou_ae
                      AS64585




                                                           @tahiro_1986jpn
                                                              AS64592
                                                              Hodogaya
@cafewalker_lab
   AS64569




                                              @stereocat
                                               AS64594
                                               Kajigaya
                  @hikari1019
                   AS64593
                   Nakahara




                                  @imksoo
                                  AS64595


                                                @qryuu
                                                Ōmiya
                                               Zabbix2.0

自宅ラック勉強会資料