【SRへの道6】IS-IS設定で分からなかった疑問を解消
トップページはこちら
前回までに行ったこと
前回はISP-B内でIS-ISを動作させました。
しかし、OSPFとは少し異なる設定をしました。こちらなぜなのか疑問を解消していこうと思います。
IS-ISとは
まずIS-ISについてザックリと調べていきます。
IS-ISはOSIプロトコル
IS-ISはIntermediate System to Intermediate Systemの略でIGPのルーティングプロトコルです。もうすでに基本ですが、ダイナミックルーティングをするためのプロトコルは大きく分けてIGP(Interior Gateway Protocol)とBGP(Exterior Gateway Protocol)に分類されていて、IS-ISはOSPF, RIP, EIGRPなどと一緒のIGPに分類されます。
しかしIS-ISはOSPF, RIP, EIGRPなどのIGPとは異なり「ISOが策定したOSIプロトコル」で使用されるルーティングプロトコルになります。
- OSIプロトコルスイートで使用されるルーティングプロトコル
⇒ IS-IS
- TCP/IPプロトコルスイートで使用されるルーティングプロトコル
⇒ IGP: RIP、EIGRP、OSPF、iBGP
⇒ BGP: eBGP
OSI参照モデルとTCP/IP
最初にネットワークについて学ぶときにOSI参照モデルとTCP/IPという似たような二つの表をみました。こちらが大きくかかわっているのですが、もともとインターネットで使われるプロトコルを標準化するためにISO(国際標準化機構)がOSI参照モデルというものを提唱しました。そのOSI参照モデルはOSI(Open Systems Interconnection:開放型システム間相互接続)で用いられる通信のモデルをもとに作られています。
このOSI(Open Systems Interconnection:開放型システム間相互接続)で動くように開発されたルーティングプロトコルがIS-ISというわけです。なのでIS-ISはもともとIPルーティングはできないのです。
しかしOSIモデルよりTCP/IPが普及し使われるようになったため、IS-ISはOSI環境とTCP/IP環境どちらでも共存できるように対応されました。これがIntegrated IS-ISです!今現在TCP/IPで使われているルーティングプロトコルのIS-ISは実はIntergrated IS-ISという名前なのですが、現在ではIS-ISだけでもIntergrated IS-ISを指します。
以下、Integrated IS-ISの場合でもIS-ISと表記します。
※すこし込み入った話
OSIプロトコルという意味でのIS-ISはOSI(Open Systems Interconnection:開放型システム間相互接続)でのネットワーク層サービスであるCLNS(Connection Less Network Service)上で使用されるルーティングプロトコルでした。
CLNSはCLNP(Connection Less Network Protocol)というプロトコルが提供しています。このCLNPの機能は現在のインターネット上ではIPが代替しています。そのCLNPではルーティングにIS-ISを利用するのです。
というわけでIntegreted IS-ISというのはCLNS上だけではなくIPでも動作できるように改良されたプロトコルなのです。
ちなみにCLNSではメッセージの経路を送信先のNSAPアドレスで個別に指定します。(後で出てきます)
IS-ISはリンクステートプロトコル
少しややこしいですが、IS-ISはOSPFと同様のリンクステートルーティングプロトコルです。なのでOSPFとの共通点が多くあります。
NSAPアドレス
NSAPアドレスをなぜ使うのか
前回IS-ISを設定したときにNETコマンドを用いてNSAPアドレスを各ルータに設定しました。これはOSPFと異なり戸惑いましたが、前述した通りIS-ISではルーティング自体をOSIのCLNSのアドレス体系であるNSAPアドレスを使用します。IPアドレスではないんですね。IS-ISではルータの識別やトポロジーテーブルを作成する際にもNSAPアドレスを使います。
NSAPアドレスの構成
実際に割り当てた例
こちらの例を参考に今回のIS-ISは設定させていただきました。
XE-B1: 01.0000.0000.0001.00
XE-B2: 01.0000.0000.0002.00
XE-B3: 01.0000.0000.0003.00
XE-B4: 01.0000.0000.0004.00
XE-B5: 01.0000.0000.0005.00
今回後ろのシステムIDは自由につけていい値ということでルータの通し番号通りにつけてあります。NSELは通常ルータでは「00」を付けるそうなのでそうしてあります。
さて、エリアIDなのですが、通常はプライベートアドレスであればAFに49を入れます。そしてIDI ,HO-DSPを付けるのですがこちらAFを省略しても動作しました。すべて同一エリア内のルータなので「01」を付けました。
なぜこれで動作するのかはいまだにわかっておりません。わかり次第追記します。
まとめ
Integrated IS-IS、調べれば調べるほど奥が深くて時間が足りません。今回こちらを完璧に理解するまで立ち止まってしまったら全く前に進みません。ひとまずこちらの理解にとどめておき、先に進めていきたいと思います。もし目標に到達したら戻ってきてより詳しくなりたいと思います。