1.AS(Autonomous System)
◆AS
・ASとは自律システムとう意味だが、自律システムというとよく分かりにくい。
・直訳は、「Autonomous=自治の、独立した」という意味。
よって、AS=独立したネットワーク(システム)と考えればいいだろう。
・ネットワークスペシャリスト試験の過去問では、自律システムのことを、「単一のルーティングポリシによって管理されるネットワーク(H18NW午前 問23)」と述べている。
・ちょっと乱暴ではあるが、AS=各ISPと思っていいだろう。
◆AS番号
・IANA(Internet Assigned Numbers Authority:アイアナ)が割り当て、日本ではJPNICが管理している。
※IANAの業務は、1998年に設立された国際的組織であるICANN(Internet Corporation for Assigned Names and Numbers)が行っている。
・AS番号は16ビットで構成されており、1~65535の値をとる。
・このなかで、64512~65535はプライベートASと呼ばれ、プライベートIP
アドレスと同様に企業が自由に割り当てることができる。
2.IGPとEGP
1.IGP(Interior Gateway Protocol)
自律システム内で利用する(ことが多い)。
例:RIP、OSPF
2.EGP(Exterior Gateway Protocol)
自律システム間で利用する。
例:BGP
インターネットすべてのルーティングを統一して制御することは困難。そこで、ASという単位を設け、「AS内は自分たちで管理してよ」ということからこの仕組みが始まった。国と地方自治の関係と同じ。
しかし、愛知県と岐阜県で交換したくない情報もあるはず。
だから、その点を考量しているルーティングプロトコル。
がEGPである。たとえば、BGPであれば、両者の情報交換はAS番号のみ。
3.BGP(Border Gateway Protocol)
BGPの特徴を理解しましょう。
・自律システム間で利用するルーティングプロトコル。
・BGP(Border gateway protocol)は,パスベクトル型アルゴリズムです。RIPのディスタンスベクタ型と同様に、パス(ASパス)とベクター(方向)で経路を決めます。ASパス(AS_PATH)には、接続先ネットワークへのASの経路情報を含んでいます。具体的には、どのASを経由して宛先に届くかという情報です。※そのネットワークからどのASパスを通って来たかという情報、という記載もありますが、実際には同じことを言っています。
・「2.IGPとEGP」でも述べましたが、AS間のルーティングなので組織内の情報は伏せられている。
組織内の情報とは、IPアドレスとサブネットマスク情報。
そこで、AS番号だけでルーティングする。
・過去問では、IPネットワークのルーティングプロトコルの一つであるBGP-4の説明として、「自律システム間を接続する場合に使用され、経路が変化したときだけ、その差分を送信する。(H18NW午前 問23)」と述べている。
・BGP-4の4はVersion4を意味している。
・AS間の通信を扱うBGPでは信頼性の高さが求められている。
当然ですよね。
愛知県名古屋市内の道路1本が不通になるのと、県をまたぐ高速道路が不通になるのは意味合いが違いますから。
だから、RIPとは違い、BGPでは経路情報交換に、UDPではなくTCPを使っています。参考までに、BGPはTCPの179番ポート、RIPはUDPの520番を使って経路情報の交換を行う。OSPFはIP上で直接動作するので、TCPやUDPという概念はない。(TCPとUDPの違いはTCPとUDP のページで確認ください。)
以下これ以降はテスト対策より踏み込んでいるので、参考レベルと考えてください。
・BGP(Border gateway protocol)の直訳は、境界ゲートウェーイでのプロトコルという意味。つまり、ASの境界において、他のASとルーティング情報を交換するプロトコル。
・BGPスピーカ:BGPが設定されているルータ。同一AS内にはBGPで動作するルータとOSPFなどのIGPで動作するルータが混在することが一般的である。
・iBGP(Internal BGP):AS内のBGP。つまり同一AS番号でのBGP
・eBGP(External BGP):AS間のBGP。例えば異なるプロバイダ間でのBGP
※なぜ、IBGPとEBGPで分ける必要があるのか?
AS間は別のISP同士と思えばいいので、管理者が別になる。ということは設定も各々がバラバラ。バラバラで通信できるような設定が必要。AS内では同一管理者が一環したポリシーで設計できるので、冗長化などの高度な設定が可能。
・経路の収束時間はOSPFの方が高速
■BGPの設定
では、CiscoルータでBGPの設定をしてみましょう。
RIPやOSPFと同様に、設定はシンプルです。
特徴的なのは、AS番号をルータに付与することです。
ルータ1(RT1)のAS番号を1001、ルータ2(RT2)のAS番号を1002とし、以下の構成で設定します。
(1)RT1の設定
①インターフェースの設定
interface GigabitEthernet0
ip address 10.1.1.254 255.255.255.0
interface GigabitEthernet1
ip address 172.16.12.254 255.255.255.0
②BGPの設定
router bgp 1001
network 10.1.1.0 mask 255.255.255.0
neighbor 172.16.12.253 remote-as 1002
このように、BGPのAS番号を指定し、広告(アドバタイズ)したいネットワークを指定します。さらに、BGPのピア(またはネイバー)と呼ばれる、隣接したAS(ルータ)と接続をするために、ピアとなるASのIPアドレスとAS番号を指定します。
(2)RT2の設定
①インターフェースの設定
interface GigabitEthernet0
ip address 10.1.2.254 255.255.255.0
interface GigabitEthernet1
ip address 172.16.12.253 255.255.255.0
②BGPの設定
router bgp 1002
network 10.1.2.0 mask 255.255.255.0
neighbor 172.16.12.254 remote-as 1001
(3)RT1の経路情報
経路情報をコマンドで確認しましょう。BとあるのがBGPで取得した経路です。
RT1#sh ip route
C 10.1.1.0/24 is directly connected, GigabitEthernet0
B 10.1.2.0/24 [20/0] via 172.16.12.253, 00:52:50
C 172.16.12.0/24 is directly connected, GigabitEthernet1
(4)RT1のneighbor情報
RT1#sh ip bgp neighbors
BGP neighbor is 172.16.12.253, remote AS 1002, external link
BGP version 4, remote router ID 172.16.23.254
BGP state = Established, up for 01:29:06
※最後の行にあるように、Establishedであればneighborが確立されている。
(5)RT1のAS_PATH情報
RT1#sh ip bgp
Network Next Hop Metric LocPrf Weight Path
*> 10.1.1.0/24 0.0.0.0 0 32768 i
*> 10.1.2.0/24 172.16.12.253 0 0 1002 i
最後の行の一番右を見てみよう。Pathのところに、AS_PATHの情報が記載されている。1002とあるように、10.1.2.0/24のネットワークに接続するには、1002のAS番号のルータを経由することが分かる。経由するルータ(AS)が多数になる場合、ここにAS番号が順番に並ぶことになる。
■AS_PATH属性について
※ネットワークスペシャリスト試験では、知らなくていい内容です。
(1)AS_PATH属性とは
ルート情報は、ASを経由するごとに、経由したAS番号を付加していきます。これにより、複数の経路情報があるときに、どちらが最短かを判断する基準の一つになります。
また、自分のところにルーティング情報が帰ってきても、ループを発見できます。
ルート情報の例
1)AS1からルーティング情報を発信
[1.1.1.0/16][AS番号 1]
2)AS2を経由して転送
[1.1.1.0/16][AS番号 1] [AS番号 2]
3)AS3を経由して転送
[1.1.1.0/16][AS番号 1] [AS番号 2] [AS番号 3]
※ルート情報に自分のAS番号があれば、ループであることがわかる。
※このようにパス属性を用いた経路制御のことをパスベクタ型という。
(2)AS_PATHについて、4台構成でみてみよう。
では、AS_PATHがどのようになるのか、複数の経路がある以下の構成で確認します。
ルータが4台あり、それそれAS番号が付与されています。RT1はAS番号が1001、RT2は1002、・・・RT4は1004です。
ここで、RT4からRT1に接続されている10.1.1.0/24への経路は、2つがあります。
1つは、RT1に直接向かう経路と、R3→RT2→RT1と経由する経路です。
まず、経路情報をみてみましょう。
RT4#sh ip route
B 10.1.1.0/24 [20/0] via 172.16.14.254, 00:08:40
B 10.1.2.0/24 [20/0] via 172.16.14.254, 00:04:16
B 10.1.3.0/24 [20/0] via 172.16.34.254, 00:07:23
経路情報としては、最短ルートのRT1に向かう経路だけが表示されます。もちろん、RT1とRT4のケーブルが断線すれば、もう一方のルートが浮かび上がります。
Q.RT4から見て、10.1.1.0/24のネットワークのパスは2つある。AS_PATH情報はどうなるか。それぞれ記載せよ。 |
↓
↓
↓
↓
↓
A.AS_PATHを書かせるような問題は過去には出題されていない。だが、一度書いておくと、イメージがつかめると思う。
では、実際のAS_PATH情報を見てみましょう。
RT4#sh ip bgp
Network Next Hop Metric LocPrf Weight Path
* 10.1.1.0/24 172.16.34.254 0 1003 1002 1001 i
*> 172.16.14.254 0 0 1001 i
* 10.1.2.0/24 172.16.34.254 0 1003 1002 i
*> 172.16.14.254 0 1001 1002 i
・・・・
このように、AS_PATHとしては、複数の経路のAS_PATHが表示されています。たとえば、分かりやすいのが1行目です。PATHのところに、1003 1002 1001 iとなっていて、AS番号1003(RT3)、AS番号1002(RT2)、AS番号1001(RT1)を経由して10.1.1.0/24 のネットワークに接続することが分かります。
※「i」は iBGPのルートであることを表しています。
■参考:BGPで、嘘の経路情報を伝えたら?
じゃあ、嘘の経路情報を流すことができるのでは?
実際、嘘の経路情報が流れて、大規模な通信断が起こった事例があった。
https://xtech.nikkei.com/it/atcl/column/14/346926/082701101/
これは、GoogleがBGPにて間違った経路情報を流したことが原因である。
正しい情報も流れているんですよね?どっちを優先するのですか?
試験には出ないので、余談として。基本的には、近い方の情報を正しいと判断する。