(57)【特許請求の範囲】
【請求項１】
データリンク層のフレームの中継を行うブリッジ装置であって、
フレーム転送の可否をネットワーク層以上の観点から検査するためのアクセス制限ルールを記憶するアクセス制限ルール記憶装置と、
第１のインターフェイスと第２のインターフェイスと、
前記第１のインターフェイスと前記第２のインターフェイスにそれぞれ関連して設けられた、前記アクセス制限ルール記憶装置に記憶されたアクセス制限ルールに基づいて、フレームヘッダ部分だけではなく内部データ構造を解析しフレームの通過・廃棄を判定する入力用と出力用のフィルタ装置と、
前記フィルタ装置の状態を監視し、その状態に基づいてアクセス制限ルールを動的に生成し、動的に生成したアクセス制限ルールを前記アクセス制限ルール記憶装置に設定するフィルタ状態監視装置と、
通信の状態を記憶する通信状態記憶装置と、
を備え、
前記フィルタ状態監視装置は、前記第１のインターフェイスからＴＣＰセッションを開始するセッション開始パケットを含んだフレームが到着し前記第１のインターフェイスに関連して設けられた前記入力用フィルタ装置を通過しようとするとき、該ＴＣＰセッションの開始状態を前記通信状態記憶装置に保存し、かつ前記第２のインターフェイスに関連して設けられた入力用フィルタ装置が前記ＴＣＰパケットの返答のＴＣＰパケットを含んだフレームを通過できるようにアクセス制限ルールを動的に生成し、該アクセス制限ルールを前記アクセス制限ルール記憶装置に設定し、前記ＴＣＰセッションの開始から終了までの通信の状態を前記通信状態記憶装置に記憶し、前記ＴＣＰセッションの終了を検出した場合に前記アクセス制限ルール記憶装置に動的に設定した前記アクセス制限ルールを削除することを特徴とするブリッジ装置。
【請求項２】
請求項１に記載のブリッジ装置であって、
前記フィルタ状態監視装置は、通信の状態を前記通信状態記憶装置に記憶しておき、一定時間通信が行われなかった場合に、動的に設定したアクセス制限ルールを前記アクセス制限ルール記憶装置から削除することを特徴とするブリッジ装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データリンク層におけるブリッジ装置を構成する技術に関し、特にフィルタリング機能を有するブリッジ装置を構成する技術に関する。
【背景技術】
【０００２】
データリンク層においてフレームを転送する装置のなかには、特定の用途のために上位層のデータを解析して転送を判断する装置が存在する。特許文献１では、クライアント装置とルーティング装置との間に、スヌーピング装置を設置し、スヌーピング装置が、認証を伴うＩＧＭＰ受信要求をスヌーピング（覗き見）し、ルーティング装置に、受信要求をそのまま送信し、認証サーバに送信するパケットを作成せず、ルーティング装置が認証サーバに送信するパケットを作成し、また、ルーティング装置から受信したマルチキャストデータを、要求のあったクライアント装置にコピーし、送信している。また特許文献２では、本来エンドホストが有するべき暗号化機能を、外部の代理機構に持たせることによって、エンドホストに代わって暗号化を実施している。
【０００３】
【特許文献１】特開２００４−３５７２００号公報
【特許文献２】特開２００６−３３３５０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
エンドホストへ到着するフレームやパケットを適切に選別するために、従来はファイヤウォール装置やエンドホスト自身が持つパケットフィルタ機構が用いられていた。しかし、ネットワーク構成によってはファイヤウォール装置の設置が困難であったり、エンドホストが十分なパケットフィルタ機構を持たない場合は、到着するフレームやパケットの選別が不十分である問題がある。また背景の技術の項で述べたように、エンドホストと外部ネットワークとの間にスヌーピング装置を配置することで、エンドホストに流入するフレームを制御しようとする試みが存在するが、制御可能な範囲が限定的であり柔軟性に乏しい。
【０００５】
本発明の目的は、プロトコル階層によらずフレームの内部構造を解析し、フレームの通過・廃棄を判定するブリッジ装置を実現できる技術を提供することである。
【課題を解決するための手段】
【０００６】
本明細書において開示される発明のうち、代表的なものの概要を簡単に説明すれば、以下のとおりである。
【０００７】
第１の発明は、データリンク層のフレームの中継を行うブリッジ装置であって、フレーム転送の可否をネットワーク層以上の観点から検査するためのアクセス制限ルールを記憶するアクセス制限ルール記憶装置と、第１のインターフェイスと第２のインターフェイスと、前記第１のインターフェイスと前記第２のインターフェイスにそれぞれ関連して設けられた、前記アクセス制限ルール記憶装置に記憶されたアクセス制限ルールに基づいて、フレームヘッダ部分だけではなく内部データ構造を解析しフレームの通過・廃棄を判定する入力用と出力用のフィルタ装置と、前記フィルタ装置の状態を監視し、その状態に基づいてアクセス制限ルールを動的に生成し、動的に生成したアクセス制限ルールを前記アクセス制限ルール記憶装置に設定するフィルタ状態監視装置と、通信の状態を記憶する通信状態記憶装置と、を備え、前記フィルタ状態監視装置は、前記第１のインターフェイスからＴＣＰセッションを開始するセッション開始パケットを含んだフレームが到着し前記第１のインターフェイスに関連して設けられた前記入力用フィルタ装置を通過しようとするとき、該ＴＣＰセッションの開始状態を前記通信状態記憶装置に保存し、かつ前記第２のインターフェイスに関連して設けられた入力用フィルタ装置が前記ＴＣＰパケットの返答のＴＣＰパケットを含んだフレームを通過できるようにアクセス制限ルールを動的に生成し、該アクセス制限ルールを前記アクセス制限ルール記憶装置に設定し、前記ＴＣＰセッションの開始から終了までの通信の状態を前記通信状態記憶装置に記憶し、前記ＴＣＰセッションの終了を検出した場合に前記アクセス制限ルール記憶装置に動的に設定した前記アクセス制限ルールを削除することを特徴とする。
【００１２】
第２の発明は、第１の発明のブリッジ装置であって、前記フィルタ状態監視装置は、通信の状態を前記通信状態記憶装置に記憶しておき、一定時間通信が行われなかった場合に、動的に設定したアクセス制限ルールを前記アクセス制限ルール記憶装置から削除することを特徴とする。
【００１３】
本ブリッジ装置をエンドホストと外部ネットワークの間に挿入することでネットワーク層の通信に影響を与えることなく（エンドホストもＩＰルータ装置のいずれに対しても一切の設定の変更を必要とすることなく）フレームの選別と通過・廃棄の判定を行うことができる。本ブリッジ装置はデータリンク層のフレーム中継器として振舞うためネットワーク層からは透過となる。ただし、本ブリッジ装置がフレームの内部を解析し、上位層のプロトコル情報を用いて通過・廃棄の判別を行うため柔軟な制御が可能である。
【発明の効果】
【００１４】
本発明により、プロトコル階層によらずフレームの内部構造を解析し、フレームの通過・廃棄を判定するブリッジ装置を実現できる。これまでのブリッジ機構はフレームの通過・廃棄を判定条件として限定的なものしか記述ができなかったが、本発明では、ネットワーク層で処理を行うＩＰファイヤウォールが持つ装置が判別能力と同等に柔軟な設定をブリッジ装置にも持たせることができる。
【発明を実施するための最良の形態】
【００１５】
以下、本発明の実施例を図を参照して詳細に説明する。
本実施例のブリッジ装置は、データリンク層のフレームの中継を行う通常のブリッジ装置が有する機能のほかに、データリンク層のフレームを上位層（ネットワーク層以上）の観点から内部構造の検査を行いフレームの通過・廃棄を判断する機能を有するブリッジ装置である。データリンク層においてイーサネットフレームを検査しパケットを転送するブリッジ装置は、本来イーサネットフレームのデータ部分にはなんら関与せず、イーサネットフレームのヘッダ部分のみの情報を解釈して転送処理を行っていた。本実施例のブリッジ装置はレイヤを越えてフレームのデータ部分の検査を行い転送・非転送の判断を行うことが特徴である。
【００１６】
図１は本実施例のブリッジ装置の概要を示したものである。本実施例のブリッジ装置は上位層によるフィルタリング機能つきのブリッジ装置であり、本来はデータリンク層において転送されるフレームに対して、フレームのデータ部分の情報を取り出しネットワーク層やトランスポート層、あるいはそれ以上の層の観点からフレームの内部構造を把握する。
【００１７】
図１において、１１は本実施例のブリッジ装置であり、フレーム転送の可否をネットワーク層以上の観点から検査しフィルタリングするフィルタ装置（図示していない）を有している。１２は入力フレーム群であり、１３は出力フレーム群である。１４〜１７はプロトコルレイヤを表しており、１４は物理層、１５はデータリンク層、１６はネットワーク層、１７はトランスポート層である。ブリッジ装置１１に入力したフレームは、フレーム転送の可否をデータリンク層１５以上、すなわちデータリンク層１５、ネットワーク層１６、トランスポート層１７、その上のアプリケーション層（図示していない）の観点から検査しフィルタリングを行い、フレームを出力する。ここで、データリンク層１５において検査を行う機能は従来のブリッジ装置の機能と同様であり、本ブリッジ装置１１において特徴的な機能は、ネットワーク層１６以上の観点から検査を行う機能である。
【００１８】
図２はイーサネットフレームの構造を記したものである。図２において、１４〜１８はプロトコルレイヤを示しており、順に、物理層、データリンク層、ネットワーク層、トランスポート層、アプリケーション層を示している。２１はデータリンク層１５のイーサネットフレームであり、２２はネットワーク層１６のＩＰパケットであり、２３はトランスポート層１７のＴＣＰパケットであり、２４はアプリケーション層１８のアプリケーションメッセージである。イーサネットフレーム２１、ＩＰパケット２２、ＴＣＰパケット２３のそれぞれについて、黒の部分がヘッダ部分であり、白の部分がデータ部分である。このように、フレームのデータ構造を解釈するとイーサネットフレーム２１の内部にネットワーク層のＩＰパケット２２がカプセル化されており、さらにその内部にはトランスポート層のＴＣＰパケット２３がカプセル化されている。さらにＴＣＰパケット２３の内部にはアプリケーションが生成したメッセージ２４が内包されている。
【００１９】
レイヤを越えてフレームの情報を取り出すことについて例をもって説明する。例えば、たくさんのイーサネットフレームの中からＨＴＴＰトラフィックだけを抽出する場合は、特定のトランスポート層のヘッダを取り出しポート番号を検査すれば選別を行うことができる。同様にたくさんのイーサネットフレームの中から、ＩＣＭＰパケットだけを取り出すにはＩＰパケットを抽出し、ＩＰヘッダのプロトコル番号を検査すれば選別することができる。
【００２０】
本来データリンク層１５で動作するイーサネットブリッジ装置は、フレームのデータ部分の情報を参照することなくデータの転送を行っていたが、本実施例のブリッジ装置１１においては、上記の例に示すとおりレイヤを越えてフレームの内部情報を参照することで、フレームの種別を選別することが可能である。
【００２１】
図３は本発明の実施例のブリッジ装置を用いたエンドホストの防衛を説明するための図である。図３において、１１は本実施例のブリッジ装置である。３１はブリッジ装置１１内においてフレームのヘッダ部分だけではなく内部データ構造を解析しフレームの通過・廃棄を判定するフィルタ装置であり、３２はアクセス制限ルールを記憶するアクセス制限ルール記憶装置である。３３はアクセス制限ルール記憶装置３２に記憶されているアクセス制限ルールの例であり、フレーム転送の可否をネットワーク層以上の観点から検査するためのアクセス制限ルールである。フィルタ装置３１はアクセス制限ルール記憶装置３２に記憶されたアクセス制限ルール３３に基づいてフレームの通過・廃棄を判定する。３４はエンドホスト装置であり、３５はＩＰルータ装置である。
【００２２】
なお、図３に示したアクセス制限ルール３３は、通常の言語でわかりやすく表現したものであるが、本実施例においては、実際のアクセス制限ルール３３は次の形式的で記述される。
10 discard indev eth0 port HTTP
20 discard indev eth0 port TELNET
30 discard indev eth0 proto ICMP
40 discard indev eth0 from 10.10.10.10
このようにンターフェイスに関する指定とフレームの中身を調べるためのルールを記述するが、これは一般的なファイヤウォールにおけるルール記述とほとんど同じである。上記の記述例において、ｉｎｄｅｖが入力されるインターフェイス（出力の場合はｏｕｔｄｅｖ）を記しており、その後ろにフレームの中身を調べる条件を記している。ｐｏｒｔキーワードはレイヤ４（トランスポート層）のプロトコルの種類を指定している。ルール番号１０、２０は、フレームの中身に格納されているパケットのトランスポート層部分がＨＴＴＰもしくはＴＥＬＮＥＴの場合廃棄するという意味である。ルール番号３０のｐｒｏｔｏはレイヤ３（ネットワーク層）部分の構造を解釈させる指示であり、ネットワーク層部分がＩＣＭＰであるフレームを廃棄するという指示である。最後に、ルール番号４０のｆｒｏｍはレイヤ３の送信元ＩＰアドレスを検査する指示子である。
【００２３】
本実施例においては、ＩＰルータ装置３５とエンドホスト装置３４は、ネットワーク層において同一のネットワークに所属しておりサブネットを共有している。またブリッジ装置１１はＩＰルータ装置３５とエンドホスト装置３４の間に設置されており、両者からのイーサネットフレームを中継するブリッジとして機能する。ブリッジ装置１１は２つのイーサネットポートを有しており、ひとつはｅｔｈ０でＩＰルータ装置３５に、もうひとつはｅｔｈ１でエンドホスト装置３４と接続されている。ｅｔｈ０ポートとｅｔｈ１ポート間で相互にフレームが中継される。
【００２４】
本ブリッジ装置１１はイーサネットフレームを中継する際に、フレームの内部を検査して中継の可否を判断することができる。もしなんら検査を行わずすべてのフレームを中継する場合はデータリンク層におけるリピータ（ハブ）と全く等価である。したがってネットワーク層において、エンドホスト装置３４はＩＰルータ装置３５に到達するまでにブリッジ装置１１の存在を意識せず通信を行うことができる。つまりエンドホスト装置３４やＩＰルータ装置３５に、本ブリッジ装置１１を利用するための特別な設定や機構は一切必要ない。
【００２５】
ここで、ブリッジ装置１１を用いてエンドホスト装置３４を防衛する例をあげる。ブリッジ装置１１にアクセス制限を行うアクセス制限ルール３３を適応する。この例ではルール番号１０〜４０の４つのルールが適応されているが、ブリッジ装置１１がフレームの階層構造をアプリケーション層まで解析して廃棄の条件に値するか判定を行う。ルール番号１０、２０についてはトランスポート層（ＴＣＰ層）のヘッダまで取り出し、その種別を示すポート番号の検査を行う。ルール番号３０についてはネットワーク層（ＩＰ層）のヘッダまでを取り出しその種別を示すプロトコル番号の検査を行う。同様にルール番号４０についてはネットワーク層（ＩＰ層）のヘッダまでを取り出し、送信元アドレスフィールドの検査を行う。このようにイーサネットフレームのヘッダだけでなく、その内部のデータ構造を解析することによってフレームの通過の条件をデータリンク層より上位のプロトコルで規定することが可能な、ブリッジ装置を構成することが可能である。通過したパケットについてはネットワーク層において透過であり、通常のブリッジやリピータと同一の挙動を示す。これにより、エンドホスト装置３４自身が有するパケットフィルタリング機構を、エンドホスト装置３４の外部に取り付けられた本ブリッジ装置１１が代理することができる。
【００２６】
一般に、イーサネットブリッジ装置は、イーサネットフレームを入力しＭＡＣアドレスを見て転送先を判断するが、フレームの内部に含まれるＩＰパケットの情報は原則的に参照しない。すなわち、フレームが入力されフレームが出力されるのが通常のブリッジ装置（ハブ、レイヤ２スイッチ）の基本機能である。これに対して、本ブリッジ装置１１では、フレームを転送する際にフレームの内部のＩＰパケットの構造まで検査した上で、転送するか否かを判断する。転送が許可されたフレームは出力インターフェイスから送出されるが、フレームが入力され、フレームが出力される、という動作に着目すると、ブリッジを通過している動作と同じである。本ブリッジ装置１１は検査機構については上位層の機能を利用できるにもかかわらず、フレームの転送についてはブリッジと同じであり、透過なフレーム転送を行うことができる。本ブリッジ装置１１は、プロトコル階層に依存しないフレーム通過制御装置ということができる。
【００２７】
図４は本ブリッジ装置１１の詳細な内部構造を示したものである。図４において、４１、４３はブリッジ装置１１に入力するフレームのフィルタリングを行う入力用フィルタ装置であり、４２、４３はブリッジ装置１１から出力するフレームのフィルタリングを行う出力用フィルタ装置である。４５はアクセス制限ルールを記憶するアクセス制限ルール記憶装置である。４６はフィルタ装置４１〜４４の状態を監視するフィルタ状態監視装置である。４７は通信の状態を記憶する通信状態記憶装置である。４８はインターフェイス１であり、４９はインターフェイス２である。入力用フィルタ装置４１はインターフェイス１（４８）に接続されており、出力用フィルタ装置４４はインターフェイス２（４９）に接続されている。入力用フィルタ装置４３はインターフェイス２（４９）に接続されており、出力用フィルタ装置４２はインターフェイス１（４８）に接続されている。太線の矢印がフレームの流れを表す。フィルタ装置４１〜４４はアクセス制限ルール記憶装置４５に記憶されたアクセス制限ルールによりそれぞれを通過するフレーム転送の可否をネットワーク層以上の観点から検査しフィルタリングする。図４では入力インターフェイスを２つ図示しているが３つ以上存在してもよい。また、アクセス制限ルール記憶装置４５、通信状態制御装置４７は同じ記憶装置内の別々の記憶領域であってもよい。
【００２８】
インターフェイス１（４８）には入力用のフィルタ装置４１と、出力用のフィルタ装置４２が関連付けられており、インターフェイス１（４８）を通過するパケットは入力の方向に応じてそれぞれ入力用フィルタ装置４１、出力用フィルタ装置４２を通過する。通過する際にあらかじめ設定されたルールに応じて、フレームの内部を検査し通過させるか破棄するかの判断を行う。これはインターフェイス２（４９）と入力用フィルタ装置４３、出力用フィルタ装置４４についても同じ役割をもつ。またフィルタ状態監視装置４６は、各フィルタ装置４１〜４４の状態を監視し、その状態に基づいてアクセス制限ルールを動的に生成し、そのアクセス制限ルールをアクセス制限ルール記憶装置４５に設定する。ここで、動的に生成するとは、例えばエンドホストから外部に向けて通信が開始された際に、その通信に最低限必要なアドレスやポートだけに通信許可を与えるアクセス制限ルールを生成するというような、各フィルタ装置４１〜４４の状態に応じてアクセス制限ルールを生成することである。
【００２９】
例えば、インターフェイス２（４９）からＨＴＴＰのセッションを開始するＴＣＰパケット（あて先アドレスが１．１．１．１、送信元アドレスが２．２．２．２、あて先ポートが８０、送信元ポートが１２３４５であるとする）を含んだフレームが到着し入力用フィルタ装置４３を通過しようとするとき、フィルタ状態監視装置４６は、２．２．２．２からのＨＴＴＰセッションの開始を検知し、セッションの開始状態を通信状態記憶装置４７に保存し、かつインターフェイス１の入力用フィルタ装置４１が、返答のフレーム（あて先アドレスが２．２．２．２、送信元アドレスが１．１．１．１、あて先ポートが１２３４５、送信元ポートが８０であるＴＣＰパケットを含んだフレーム）を通過できるようにアクセス制限ルールを動的に生成し、アクセス制限ルール記憶装置４５に設定する。このときアクセス制限ルール記憶装置４５に設定されるアクセス制限ルールは「インターフェイス１から入力されるフレームのうちあて先アドレスがエンドホスト（２．２．２．２）かつ送信元アドレスが１．１．１．１かつあて先ポートが１２３４５かつ送信元ポートが８０であるＴＣＰパケットを含むフレームのみ通過」である。なお、この例の場合は、アクセス制限ルールに記載されていないもの以外はすべて廃棄することを前提としている。
【００３０】
また、通信を行っているセッションに関する最小限必要なフレームだけを通過させるためには、現在行われているセッションが何であるかの状態（例えば、エンドホストに関してセッションの開始状態）を記憶しておき、通信が終了したら動的に生成されたルールを解除する必要がある。そこで、通信の開始から終了までの間、通信の状態を通信状態記憶装置４７に記憶しておき、通信の終了を検知した場合に、動的に設定したルールを解除する。例えば、ＴＣＰ通信であれば、通信が開始された時に通信状態記憶装置４７にセッションの開始が記憶され、通信の終了はそのセッションの終了を示すフラグを読み取ることで通信の終了を検知することができる。また、通信状態記憶装置４７に記憶されているセッションについて、通信が一定時間通信が行われなかった場合は、通信の終了とみなすことも可能である。結局、フィルタ状態監視装置４６は、通信の状態を通信状態記憶装置４７に記憶しておき、通信の終了を検知した場合あるいは一定時間通信が行われなかった場合に、動的に設定したアクセス制限ルールをアクセス制限ルール記憶装置４５から削除し、また通信状態記憶装置４７からそのセッションを削除する。
【００３１】
このように各部のフィルタの状態を一元的に監視するフィルタ状態監視装置４６を配置することにより、イーサネットフレームの内容に応じて動的なフィルタルールを構成することができる。
【００３２】
以上の説明では動的なアクセス制限ルールの設定について説明したが、アクセス制限ルールは利用者の設定次第で任意に設定することも可能である。すなわち静的に設定することも可能である。静的にアクセス制限ルールを設定する場合は、図示していない入力手段により、アクセス制限ルールをアクセス制限ルール記憶手段４５に設定する。また、アクセス制限ルール記憶手段４５にはデフォルトのアクセス制限ルールを記憶させておくこともできる。例えば、「ルールがない場合は廃棄」、「ルールがない場合は許可」のようなデフォルトのルールを利用者の選択により設定することもできる。なお、静的なアクセス制限ルールのみを利用し、動的なアクセス制限ルールを利用しない場合は、フィルタ状態監視装置４６、通信状態記憶装置４７は不要である。
【００３３】
図４に示した実施例においては、各インターフェイスそれぞれに入力用フィルタ装置と出力用フィルタ装置が設けられており、このようにするのが好適であるが、各インターフェイスそれぞれに一つのフィルタ装置、例えば入力用フィルタ装置だけを用いてフィルタリングを行ってもよい。ただし、ブリッジ装置から出力されるフレームを制御したい（例えば特定の種類のもの以外は外に出さない）場合は、出力用フィルタ装置も有効である。また、すべてのインターフェイスに対して一つのフィルタ装置を用いてフィルタリングを行うこともできる。
【００３４】
以上、本発明者によってなされた発明を、前記実施例に基づき具体的に説明したが、本発明は、前記実施例に限定されるものではなく、その要旨を逸脱しない範囲において種々変更可能であることは勿論である。
【図面の簡単な説明】
【００３５】
【図１】本発明の実施例である上位層によるフィルタリング機能つきブリッジ装置の概要を示す図である。
【図２】イーサネットフレームの構造を示す図である。
【図３】本発明の実施例のブリッジ装置を用いたエンドホストの防衛を説明するための図である。
【図４】本発明の実施例のブリッジ装置の詳細な内部構造を示す図である。
【符号の説明】
【００３６】
１１…ブリッジ装置、１２…入力フレーム群、１３…出力フレーム群、１４…物理層、１５…データリンク層、１６…ネットワーク層、１７…トランスポート層、１８…アプリケーション層、２１…イーサネットフレーム、２２…ＩＰパケット、２３…ＴＣＰパケット、２４…アプリケーションメッセージ、３１…フィルタ装置、３２…アクセス制限ルール記憶装置、３３…アクセス制限ルール、３４…エンドホスト装置、３５…ＩＰルータ装置、４１、４３…入力用フィルタ装置、４２、４４…出力用フィルタ装置、４５…アクセス制限ルール記憶装置、４６…フィルタ状態監視装置、４７…通信状態記憶装置、４８…インターフェイス１、４９…インターフェイス２
【図１】
0004813970.tif 000002
【図２】
0004813970.tif 000003
【図３】
0004813970.tif 000004
【図４】
0004813970.tif 000005