• 検索結果がありません。

NAT 越えが可能な DPRP の検討 Researches on an Extended Dynamic Process Resolution Protocol for NAT-Traversal

N/A
N/A
Protected

Academic year: 2021

シェア "NAT 越えが可能な DPRP の検討 Researches on an Extended Dynamic Process Resolution Protocol for NAT-Traversal"

Copied!
18
0
0

読み込み中.... (全文を見る)

全文

(1)

NAT越えが可能な DPRPの検討

Researches on an Extended Dynamic Process Resolution Protocol for NAT-Traversal

後藤  裕司*1 鈴木  秀和*2 渡邊  晃*1 Yuji Goto Hidekazu Suzuki Akira Watanabe

*1  名城大学理工学部  *2名城大学大学院理工学研究科 Graduated School of Science and Technology, Meijo University

1. はじめに

近年,ネットワーク経由の情報漏洩などの驚異に対する セキュリティ対策が重要視されている.そこで我々は柔軟 かつ安全なグループ通信を可能とするためにシステム構成 が 変 化 し て も そ の 変 化 を 動 的 に 学 習 す る こ と が で き る DPRPDynamic Process Resolution Protocol[1]と呼ぶ通信 プロトコルを提案してきた.しかし,既存の DPRPは同一 ア ド レ ス 空 間 で し か 動 作 せ ず , 通 信 経 路 上 に NAT

Network Address Translation)が介在するような通信環境 では利用することができなかった.この課題を解決するた めに,これまでプライベートアドレス(以下 PA)空間か らグローバルアドレス(以下 GA)空間への通信を開始す る場合についての検討を行ってきた[2] 本稿ではさらに GA 空間から PA への通信を開始する場合についての検討 を行った.具体的には我々が別途提案してきた NAT 越え 技術 NAT-fNAT free protocol[3]と組み合わせることに よりNAT越えが可能なDPRPを実現した.

2. 既存技術

2.1 DPRP

DPRPは通信端末間が通信に先立って 2往復のネゴシエ ーションを行う.1往復目で通信経路上の DPRP 対応装置 がどの通信グループに帰属するかという情報を収集する.

収集した情報より動作処理情報を決定し,各装置に対し動 作処理情報テーブル PIT(Process Information Table)を通 知する.PITには,透過中継,暗号化,破棄など通信パケ ットに対する処理内容が記述されている.ネゴシエーショ ン終了後は生成した通信PITに従ってパケットを処理する.

グループ番号や暗号鍵はあらかじめ DPRP対応装置に設定 されている必要がある.

2.2 NAT-f

NAT-fGA空間上の端末(以下GN)とNAT-fに対応 したルータ(以下 NAT-fルータ)が連携することにより GNからPA空間内にいる端末(以下PN)に通信の開始が 可能になるプロトコルである.GN は通信に先立ち NAT-f ルータに対し 1 往復の NAT-fネゴシエーションを行い,

NATテーブルを生成するために必要な情報を NAT-f ルー タに通知する. NAT-fルータは,NATテーブルを強制的 に生成し,NATテーブル生成時にマッピングされたポート 番号を GN へ応答する.GNはポート変換テーブルを生成 し,送受信パケットに対しポート番号の変換を行う.以後 GNからの通信は通知されたポート番号に向けて送信さ

れるため,NAT-fルータは通常の NAT処理により通信を 行うことができる.

3. NAT越えDPRP

DPRPNAT-fIP層に実装され,かつ通信に先だって ネゴシエーションであるため統合することが可能である.

1NAT越えDPRPの動作について示す.DPRPネゴシ エーションの1往復目にNAT-fのネゴシエーションに必要 な情報を追加し,NATテーブルを強制的に生成する. 2

復目でGNNAT-fルータから通知されたポート番号を用

いてPIT生成し,NAT-fルータおよびPNに通知する.GN はポート変換を行ってから PIT に従った処理を行うため PNと通信が可能となる.

図 1  NAT越えDPRPの動作

4. まとめ

本稿では DPRP NAT-f を組み合わせることにより

NAT越えが可能なDPRPについて提案した.これまで検討 してきたPA空間から GA空間への DPRPと組み合わせる ことによりアドレス空間の違いを意識しない DPRPが可能 となる.今後は,本提案を実装し評価を行う.

参考文献

[1] 鈴木秀和,渡邊晃:フレキシブルプライベートネット ワークにおける動的処理可決プロトコルDPRPの実装 と 評 価 , 情 報 処 理 学 会 論 文 誌 ,Vol.47No.11 pp.2976-2991,Nov.2006

[2] 後藤裕司,鈴木秀和,渡邊晃:グローバルアドレスと プライベートアドレス空間を跨る DPRP の検討,第 68回情報処理学会全国大会講演論文集,Mar.2006 [3] 鈴木秀和,渡邊晃: アドレス空間透過性を実現する

NAT-f の実装と評価,DICOMO2006シンポジウム論

文集(I),Vol.2006,No.6,pp.453-456,Jul.2006.

GN NAT-fルータ PN

TCP/UDP通信 TCP/UDP通信 Private address area

NAT-fネゴシエーションに必要な情報 動作処理情報の通知

DPRP Negotiation

(2)

名城大学理工学部 名城大学理工学部 後藤 裕司 鈴木 秀和 鈴木 秀和 渡邊 晃

(3)

はじめに

y ユビキタスネットワークでは

y いつでもネットワークに繋げたい(外出中・移動中)

y どこからでもアクセス(屋外・友人宅・移動体など)

y 安全な通信(盗聴・改竄などがない)

柔軟性とセキュリティを兼ね備えたグループ通信を可能にする

GSCIP

Grouping for Secure Communication for IP

(4)

GSCIP Grouping for Secure Communication for IP )

Group1 GMS

GK1 GEGSCIP対応した装置

‹GESSoftware型):ホストタイプ

Group2 GEN GK2 ‹GENNetwork型):ルータタイプ

GMS:管理装置

一般端末l

GK2

Group3

GMSは各GEにグループ番号とグループ

GES2 IP:PA2

GK2

GES1 IP:PA1

GK3 GK3 GKを配送

IP:PA2

通信グループとグループ鍵GKを1:1に対応づける IPアドレスに依存しないグループを定義

システム構成が変化してもグループ関係は維持される

(5)

DPRP Dynamic Process Resolution Protocol )

GES1 GEN GES2

subnet

4つの制御パケット(ICMPベース)

GES1 IP:PA1

GEN IP:PA2

GES2

IP:PA3 DDEDetect Destination End GE RGIReport GE Information

MPITMake Process Information table

DDE RGI

CDNComplete DPRP Negotiation DPRPの動作(2往復のネゴシエーション)

PA1:X→PA3:Y

PIT

MPIT CDN

終端GEの決定、通信経路上の各GEの設定情 報を取得し動作処理情報を決定

TCP/UDP通信

動作処理情報の通知と動作処理情報テーブル

PITProcess Information Table)の生成

PA1:XÙPA3:Y

暗号化/復号

PA1:XÙPA3:Y

透過中継

PA1:XÙPA3:Y

暗号化/復号

GKにより通信相手が同一グループである かどうかを確認

パケットは動作処理情報に従って処理さケッ 動作処 情報 従 れる

(6)

通信経路上に

NAT

が存在する場合

GA空間側の端末:GES1

GES1 GEN GES2

Private address area Global address area

PA空間側の端末:GES2 NAT機能を追加したGEN

GEN GES2

NAT越え問題

y GA空間側から通信開始ができない

y GA空間からPA空間の中が見えないため

DPRP

を拡張することにより

NAT

越えを実現

DPRP

を拡張することにより

NAT

越えを実現

(7)

NAT

越え

DPRP

:事前設定

y

Dynamic DNS

への登録

Dynamic DNS

y PA空間の端末のホスト名

y GENIPアドレス RRResource Records

Name IP

y GENへの登録

Bob GA2

y PA空間の端末のホスト名とIPアドレス

y アクセス許可情報

GES1 GES2

Private address area Global address area

ACT (Access control table) GES1

GEN GES2

Name IP Authorization bob PA1 allow

ACT

IP:GA1  HN:alice

IP:GA2 HN:sun

IP:PA1  HN:bob

(8)

DPRP

に追加する情報

P i t dd GES1

GEN GES2

Private address area Dynamic DNS

example.net

IP:GA1  HN li

IP:GA2 IP:PA1  HN b b

ACT

HN:alice HN:sun HN:bob

ACT参照,PA1を取得 宛先をPA1に変更

名前解決

GA1:X→GA2:Y

DDE + ”bob” DDE + ”bob”

RGI + Z RGI

GA1:X→GA2:Y 変更

NATにマッピングされた

ポート番号Z NATテーブル生成 ポート変換テーブルの生成

MPIT MPIT

CDN CDN

MPIT MPIT

ポート変換テーブル NATテーブル

(9)

生成される

PIT

通信経路上にNAT

GES1 GEN GES2

Private address area GES1 

IP:GA1

GEN IP:GA2

GES2  IP:PA1

GA1:X ÙGA2:Z

暗号化/復号

GA1:X ÙGA2:Z

透過中継

GA1:XÙPA1:Y

暗号化/復号 暗号化/復号 透過中継 暗号化/復号

ポート変換テーブル GA2 Y Ù GA2 Z

NATテーブル GA2 Z Ù PA1 Y

GES2GES1が通信相手に見える GA2 Ù GA2Z GA2:Z  Ù PA1:Y

GES1GENが通信相手に見える

通信相手の見え方によ 異なる が生成される 通信相手の見え方によって異なるPITが生成される

(10)

通信開始

GES1

GEN GES2

Private address area Dynamic DNS

example.net

GEN

IP GA1 IP GA2 IP PA1

ACT

ポート番号を変換

IP:GA1  HN:alice

IP:GA2 HN:sun

IP:PA1  HN:bob

GA1:X→GA2:Y

GA1:X→GA2:Z GA1:X→PA1:Y

NATテーブル GA2:Z  Ù PA1:Y ポート変換テーブル

GA2 Ù GA2Z

y GES1NATにマッピングされたポート番号に変換して送信 y GA空間側から通信開始が可能になる

y GA空間側から通信開始が可能になる

(11)

まとめ

y DPRPの概要 y NAT越え問題

y NAT越えDPRPの提案

y GA空間からの通信が可能に

y アドレス空間を意識しないグループ通信を実現 空間を意識 な グ 通信を実現

y 今後の予定 y 今後の予定

y 提案の実装・性能評価

(12)

付録

(13)

NAT

テーブル生成方法

y RGIの情報から疑似パケットを生成

通信パケットのコネクション情報とACTで得たIPアドレス

y 通信パケットのコネクション情報とACTで得たIPアドレス

y GES2からGES1に送信するパケットと見せかけたもの

Private address area GES1

GEN GES2

Private address area

IP:GA1 IP:GA2 IP:PA1

ACT GA1:X→GA2:Y

DDE:GA1,X,GA2,Y,TCP,bob DDE:GA1,X,GA2,Y,TCP,PA1bob RGI:GA1,X,GA2,Y,TCP,PA1

NATテーブル GA2:Z  Ù PA1:Y

PA1:Y→GA:X

(14)

通信経路上に

NAT

がある場合の問題点

Global Private

GES1 IP:GA1

GEN IP:GA2

GES2 IP:PA1 Private address area Global address area

GA1:X→PA1:Y GA1:X→GA2:Z

DPRPネゴシエーション

PA1:YÙGA1:X

暗号化/復号

PA1:YÙGA1:X

透過中継

PA1:YÙGA1:X

暗号化/復号

y パケットとPITの情報が一致しない

y 通信パケットのコネクション情報で通信パケットのコネクション情報でPITPITが生成されるが生成される

y NATでアドレスとポート番号が変換される

(15)

PA

空間から

GA

空間への

DPRP

実装済み

Global Private

GES1 IP:GA1

GEN IP:GA2

GES2 IP:PA1 Private address area Global address area

GA1:X→PA1:Y GA1:X→GA2:Z

DPRPネゴシエーション

GA2:ZÙGA1:X

暗号化/復号

GA2:ZÙGA1:X

透過中継

PA1:YÙGA1:X

暗号化/復号

y GES1GENではNATで変換後の情報でPITを生成 y NATNATでアドレス変換されてもでアドレス変換されてもPITPITが一致

y PA空間からGA空間へのDPRPはすでに実装済み

(16)

Symmetric NAT Symmetric NAT

y 宛先ごとに異なるポート番号がマップされる

PN GN1

2000 3000

GN2

4000 2001 GN2

外部 NATルータ 内部

2002 3000

GN1:3000 NAT:2000 PN:1000 GN1:4000 NAT:2001 PN:1000 GN2:3000 NAT:2002 PN:1000

(17)

PA

空間の端末が一般端末の場合

GES1

GEN

一般端末 Private address area Dynamic DNS

example.net

GEN

IP:GA1  IP:GA2 IP:PA1 

ACT

HN:alice

IP:GA2

HN:sun HN:bob

名前解決

DDE + ”bob” DDE + ”bob”

DDEReply RGI + Z

GA1:X→GA2:Y

DDEReply RGI + Z

CDN MPIT

CDN

‹DDEICMPEchoパケット

‹一般端末からReplyが応答される

‹GENが終端GEとなる

(18)

ALG

Application Layer Gateway

y IPアドレスやポートを制御するアプリケーション FTP

y FTP

y SIP

Î ペイロ ド内に アドレス ポ トの情報が記載されて ÎIPペイロード内にIPアドレス・ポートの情報が記載されて

おり,NAT通過時に変換されない

ALG

Application Layer Gateway

)を

ALG

Application Layer Gateway

)を

NAT‐f

ルータに実装して解決

参照

関連したドキュメント

を NTM 端末の仮想アドレスとして割り当てる.NTM 端末側は通常の NTMobile で使用する仮想アドレスの 他に

て GSCIP ( Grouping for Secure Communication for IP ) を検討している.

“G2” を GNAT1 に応答する. GNAT1 は, DNS 応答 パケットを受信すると, GNAT1 のカーネルにおいて GNAT2 の IP アドレス “G2” を仮想アドレス “V1” に 変換する.

IN から送信された REGISTER メッセージを受信した SIP プロキシ B は, IP アドレスを P1 から仮想アドレス V1 へ書 き換えて登録する. EN から INVITE を受け付けると SIP プ ロキシ

EN は IN へ通信を開始する際,DDNS サーバへ 名前解決を依頼する.DDNS サーバは NAT ルータ の IP アドレス G2 を返答する.EN は IP 層におい て取得した NAT ルータの

複数の一般端末 ( 以下 GN:General Node) が NTMA を共有す る. NTMA はイニシエータ,レスポンダ側の両方で利用でき るので以後は両側に NAT が存在する構成に記述する. NAT

CCGI を構成する EE には,クライアント端末にソ フトウェアをインストールして実現するソフトウェア 型暗号装置

図 5 に NAT-f ルータの実装概要を示す. NAT-f ルー タには今回実装した NAT-f モジュールに加えて, NAT デーモン natd ☆☆ を動作させる. NAT-f