JP3597756B2 - ネットワークアドレス変換装置およびvpnクライアント多重化システム - Google Patents

ネットワークアドレス変換装置およびvpnクライアント多重化システム Download PDF

Info

Publication number
JP3597756B2
JP3597756B2 JP2000173667A JP2000173667A JP3597756B2 JP 3597756 B2 JP3597756 B2 JP 3597756B2 JP 2000173667 A JP2000173667 A JP 2000173667A JP 2000173667 A JP2000173667 A JP 2000173667A JP 3597756 B2 JP3597756 B2 JP 3597756B2
Authority
JP
Japan
Prior art keywords
packet
esp
vpn
address
processing unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2000173667A
Other languages
English (en)
Other versions
JP2001352344A (ja
Inventor
敬信 山田
清志 中濱
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2000173667A priority Critical patent/JP3597756B2/ja
Publication of JP2001352344A publication Critical patent/JP2001352344A/ja
Application granted granted Critical
Publication of JP3597756B2 publication Critical patent/JP3597756B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Small-Scale Networks (AREA)
  • Computer And Data Communications (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、ネットワークアドレス変換方法およびその装置並びにVPNクライアント多重化システムに関し、特にESPパケットを用いたVPNにおけるネットワークアドレス変換方法およびその装置並びにVPNクライアント多重化システムに関するものである。
【0002】
【従来の技術】
VPN(Virtual Private Network )は、アクセスサーバやWANルータあるいはVPN専用装置などを利用して実現されるWAN(Wide Area Network )の技術であり、その定義は「共有ネットワークをプライベートネットワークとし、ユーザが共有ネットワークを利用していることを意識することなく利用すること」であり、またそのための基盤テクノロジーを指す。ここでいう「共有ネットワーク」とは、インターネットや公衆通信網の電話網やフレーム・リレー網のことを指している。インターネットやフレーム・リレー上に、プライベートネットワークを構築し、利用者がそのことを意識しないで使える環境がVPNであるということができる。
【0003】
VPN機能としては、データリンク層ではPPTP、L2TP等、ネットワーク層ではIPsec、セッション層ではSOCKSv5やSSL3.0(Secure Socket Layer)といったいくつかの種類がある。ここでIPsecは、TCP/IP上で暗号化通信を行うための標準であり、RFC2401〜2412(RFC:Request For Comments)等で規定されている。これはIPレベルでの認証・暗号化によってVPNを提供し、PGPやSSHと違ってIPレベルにセキュリティ機能を施すことにより、エンドユーザは使用するホストやアプリケーションを意識することなく、安全な通信を確保することができ、柔軟な運用が可能になる。しかし、VPNから出てしまった情報はもはや保護されないので、例えばメールの内容を保護したい場合にはPGP等が必要になる。
【0004】
〔ESPの概要〕
IPsecでは、セキュリティプロトコルとして以下の2つが定義され、その実装が必須になっている。
・ESP(Encapsulating Security Payload)
・AH(IP Authentication Header)
【0005】
このうち、ESPとは、パケットの暗号化と認証機能を実現するプロトコルの一種であり、詳細はRFC2406に記載されている。各プロトコルは、セキュリティプロトコルで処理されるデータの範囲を示すトランスポートモードとトンネルモードの2つのモードが用意されている。トランスポートモードはIPのデータ部分を対象とし、トンネルボードはIPパケット全体を対象としている。したがって、トンネルモードはIPパケット全体を暗号化し、それを新しいIPパケットにカプセル化(包み込む)することにより、データだけでなくIPヘッダも暗号化されるため、送信元アドレスや宛先アドレス、使用しているプロトコル(アプリケーション)等の情報の隠蔽が可能である。プライベートネットワークを利用している場合でも、VPNゲートウェイにグローバルアドレスが付与されていれば、そのグローバルアドレスを含むIPヘッダが付加されるので、インターネットを経由してプライベートアドレス同士の端末間で通信をすることが可能である。一方、トランスポートモードは、IPヘッダを暗号化せずにIPパケットのユーザデータ(トランスポート層以上の部分)のみを暗号化するモードであり、主に端末間でのピア・ツー・ピア(Peer to Peer)の通信におけるセキュリティを提供するために利用される。
【0006】
このようなVPNにおいては、インターネット接続装置(例えばルータ等)に付与されているグローバルIPアドレスを、配下のプライベートIPアドレスが付与された端末(以下、プライベートホストという)とで共有することにより、プライベートホストとインターネット上のグローバルIPアドレスが付与されたホスト(以下、グローバルホストという)とのエンドエンドのIP通信を実現する。
【0007】
アドレスを共有するためには、プライベートホストが送出したグローバルホスト向けのパケットのソースアドレス、すなわちプライベートホストに付与されたプライベートIPアドレスをインターネット接続装置に付与されたグローバルIPアドレスに変換するアドレス変換方法がある。また、アドレス変換方法としては、従来よりNATとIPマスカレードが存在する。NATは複数のプライベートホストが順次にグローバルIPアドレスを共有することを可能とするものであり、IPマスカレードは複数のプライベートホストが同時にグローバルIPアドレスを共有することを可能とするものである。
【0008】
図17は、プライベートネットワークからのインターネット接続を説明するためのネットワーク構成図である。同図に示すように、プライベートネットワークPNを構成する複数のプライベートホストPH1,…がアドレス変換装置Rを介して、インターネットINETおよびグローバルホストGH1’、GH2’に接続されている場合を例にしてNAT(Network Address Translation )およびIPマスカレードについて具体的に説明する。どちらの方法においても共有されるのはプライベートネットワークPNに付与されているグローバルIPアドレスGR(アドレス変換装置Rのインターネット側のIPアドレス)であり、この共有を実施するのがアドレス変換装置Rである。グローバルホストGH1’,GH2’にはそれぞれグローバルIPアドレスG1’,G2’が付与され、プライベートホストPH1,PH2,PH3にはそれぞれプライベートIPアドレスP1,P2,P3が付与されている。
【0009】
〔1.NAT〕
アドレス変換装置RがプライベートネットワークPNから受信したパケットを図18に示すフローチャートに従って処理するとともに、インターネットから受信したパケットを図19に示すフローチャートに従って処理する。図18に示すようにアドレス変換装置Rは任意のプライベートホストPH1から受信したパケットのソースアドレス(プライベートホストPH1,…に付与されているプライベートIPアドレス、以下PAという)を読み出し(ステップs101)、アドレス変換装置RのグローバルIPアドレス(以下、GRという)に対応しているプライベートIPアドレスと一致するか否かを判断し(ステップs102)、一致しない場合にはそのパケットを破棄し(ステップs105)、一致する場合にはパケット内のPAを格納する各フィールドにアドレス変換装置RのGRを書き込むことによる(ステップs103)、グローバルIPアドレスが付与されていないプライベートホストPH1,…からのパケットのソースアドレスをGRに変換する。そして、アドレス変換されたパケットをインターネットINETに転送する(ステップs104)。
【0010】
一方、アドレス変換装置Rがインターネット上の任意のグローバルホストGH1’,…からのパケットを受信すると、図19に示すようにパケット内のGRを格納する各フィールドにGRに対応しているPAを書き込むことにより(ステップs201)、送信先のアドレスをアドレス変換装置RのGRから、何れかのプライベートホストPH1,…のプライベートIPアドレスに変換するアドレス変換を行い、アドレス変換されたパケットをプライベートネットワークPNに送る(ステップs202)。
このように、NATではアドレス変換装置Rが自己のGRを何れか1台のプライベートホストPH1,…のPAに1対1に対応させてアドレス変換を行っており、同時にインターネットと接続可能なプライベートホストPH1,…の台数が一台に限定されることになる。
【0011】
〔2.IPマスカレード〕
次にIPマスカレードにおいて説明を行う。プライベートホストPH1,…での一連のトランザクション処理に付与されるポート番号(以下、PPという)アドレス変換装置Rが各プライベートホストPH1,…のPAとプライベートホストPH1,…でのトランザクション処理に付与されたポート番号の対(PA,PP)をアドレス変換装置Rからインターネット側に送受信されるパケットのユニークなポート番号(以下、GPという)GPに1対1に対応させ、その対応関係を内部テーブルに記憶しており、これによって各プライベートホストPH1,…のPAをアドレス変換装置RのGRの多対一にマップすることを可能としている。
【0012】
図20は、IPマスカレードにおけるアドレス変換装置RがプライベートネットワークPNから受信したパケットの処理を示すフローチャートである。図21は、IPマスカレードにおけるアドレス変換装置RがインターネットINETから受信したパケットの処理を示すフローチャートである。図20に示すようにアドレス変換装置Rは、任意のプライベートホストPH1,…から受信したパケットから送信元のIPアドレスとポート番号PPを読み出す(ステップs301)。そして、読み出したPAとPPの対(PA,PP)に対応するGPが内部テーブルに記憶されているか否か判断し(ステップs302)、記憶されている場合にはパケット内のPAを格納するフィールドにGRを書き込む(ステップs303)とともにパケット内のPPを格納する各フィールドにGPを書き込むことにより(ステップs304)、グローバルIPアドレスが付与されていないプライベートホストPH1,…からのパケットの送信元アドレスをGRに変換するとともに送信元のポート番号PPをユニークなポート番号GPに変換する。そして、アドレス変換されたパケットをインターネットに転送する(ステップs305)。
【0013】
また、(PA,PP)に対応するGPが内部テーブルに記憶されていない場合には、その(PA,PP)に対して、ユニークなGPが生成できるか否かを判断し(ステップs306)、生成できなければパケットを破棄し(ステップs311)、生成できる場合には(PA,PP)に対応したユニークなGPを作成して(ステップs307)、内部テーブルに(PA,PP)と生成したGPを格納するエントリを付け加える(ステップs308)。そして、パケット内のPAを格納する各フィールドにGRを書き込む(ステップs309)とともにパケット内のPPを格納する各フィールドにGPを書き込むことにより(ステップs310)、グローバルIPアドレスが付与されていないプライベートホストPH1,…からのパケットの送信元アドレスをGRに変換するとともに送信元のポート番号PPをユニークなポート番号GPに変換する。そして、アドレス変換されたパケットをインターネットに転送する(ステップs311)。
【0014】
一方、アドレス変換装置RがインターネットINET上の任意のグローバルホストGH1’,…からのパケットを受信すると、図21に示すようにパケットからGPを読み出し(ステップs401)、内部テーブルにそのGPに対応する(PA,PP)の対があるか否かを判断する(ステップs402)。そして、対応する(PA,PP)の対が内部テーブルにある場合には、パケット内のGRを格納する各フィールドPPを書き込むことにより(ステップs404)、送信先のアドレスをアドレス変換装置RのGRから何れかのプライベートホストPH1,…のプライベートIPアドレスPAに変換するアドレス変換を行う。そして、アドレス変換されたパケットをプライベートネットワークPNに送る(ステップs405)。なお、内部テーブルに受信パケットのGPと対応する(PA,PP)がない場合には、そのパケットは破棄される(ステップs406)。
【0015】
【発明が解決しようとする課題】
ここでプライベートネットワーク上に位置するVPNクライアントから、ESPパケットを送出し、任意のインターネット上のVPNゲートウェイとVPNセッションを確立する場合において、上記のNATとIPマスカレードを適用する場合について説明する。VPNクライアントとは、プライベートネットワーク上に位置し、IPパケットに対してESPの処理を施し、ESPパケットを送出する機能を備えた機器である。VPNセッションは必ずVPNクライアントから開始される(VPNのイニシエータ)。また、VPNゲートウェイとは、インターネット上に位置し、IPパケットに対してESPの処理を施し、ESPパケットを送出する機能を備えた機器である。VPNの設定はセッション待ち受けの設定とする(VPNのレスポンダ)。
【0016】
図22は、ESPパケットフォーマットを示す模式図である。ESPでパケットの認証および暗号化を行う場合、同図に示すとおり、IPヘッダは認証対象外であるので、アドレス変換を行うことは可能である。その場合においては、1対1のアドレス変換であるNATのみが可能であり、1つのグローバルIPアドレスを複数のセッションで共有するN対1のアドレス変換であるIPマスカレードを行うことはできない。これは、ESPのパケットはTCPでもUDPでもないため、ポート番号による多重化ができないためである(ESPヘッダにはポート番号という概念がない)。
【0017】
図23は、VPNにNATを適用した場合を説明するためのネットワーク構成図である。同図に示すように、NATを適用した場合、プライベートネットワークに仕置するVPNクライアントにおいて、インターネット上のVPNゲートウェイとVPNセッションを可能としているが、1対1のNATによってアドレス変換をしなければいけないため、そのプライベートネットワーク上でVPNセッションを確立可能な端末は一台に限定される。そのため、図24に示すようにプライベート空間内の複数のVPNクライアントから、VPNセッションを複数確立するためには、そのVPNセッションの数だけ、NAT機能を有する機器(例えばルータ等)を用意しなければならない。そのため機器コスト、またその機器の管理コスト等が増大するという問題があった。
【0018】
本発明は、このような課題を解決するためのものであり、1つのプライベートネットワーク上にある複数のVPNクライアントから1つのアドレス変換装置経由でインターネットに接続し、同時に1つまたは複数のVPNゲートウェイとの間でVPNセッション(使用プロトコルはESP)を構築可能とするネットワークアドレス変換装置を提供することを目的とする。
また、このようなネットワークアドレス変換装置を用いることにより、VPNクライアントの多重化を実現可能とするVPNクライアント多重化システムを提供することをその他の目的とする。
【0019】
【課題を解決するための手段】
このような目的を達成するために、本発明に係るネットワークアドレス変換装置は、パケットをプライベートネットワークとの間で送受信するLANインターフェース手段と、前記送受信されたパケットを中継するIPルーティング手段と、受信されたパケットがESP( Encapsulating Security Payload )か否かを判断するESP監視手段と、前記受信されたパケットにアドレス変換を施すNAT処理手段と、ESPのパケットにアドレス変換を施すESPNAT処理手段と、パケットをグローバルネットワークとの間で送受信するWANインターフェースとを備え、前記ESPNAT処理手段は、セキュリテイーパラメータインデックスと前記プライベートネットワーク上の端末のIPアドレスとを対応付けた内部テーブルを有し、この内部テーブルを参照することにより前記ESPのパケットのアドレス変換を実施する。
【0021】
また、本発明に係るVPNクライアント多重化システムは、第1のプライベートネットワークを介して複数のVPNクライアントを収容したアドレス変換装置と、第2のプライベートネットワークを介して複数の内線端末を収容したVPNゲートウェイトと、前記アドレス変換装置および前記VPNゲートウェイの接続されたグローバルネットワークとで構成されたVPNクライアント多重化システムにおいて、前記アドレス変換装置は、パケットを前記第1のプライベートネットワークとの間で送受信するLANインターフェース手段と、前記送受信されたパケットを中継するIPルーティング手段と、受信されたパケットがESP(Encapsulating Security Payload)か否かを判断するESP監視手段と、前記受信されたパケットにアドレス変換を施すNAT処理手段と、ESPのパケットにアドレス変換を施すESPNAT処理手段と、パケットをグローバルネットワークとの間で送受信するWANインターフェースとを備え、前記ESPNAT処理手段は、セキュリテイーパラメータインデックスと前記第1のプライベートネットワーク上の端末のIPアドレスとを対応付けた内部テーブルを有し、この内部テーブルを参照することにより前記ESPのパケットのアドレス変換を実施する。
【0022】
このように構成することにより本発明は、ESPパケット中のSPIを利用することにより、VPN内のプライベートアドレスとインターネット上のグローバルアドレスとのアドレス変換を実現し、VPN内の複数の端末とインターネット上のVPNゲートウェイとを接続することができる。したがって、1つのプライベートネットワーク上にある複数のVPNクライアントから1つのアドレス変換装置経由でインターネットに接続し、同時に1つまたは複数のVPNゲートウェイとの間でVPNセッション(使用プロトコルはESP)を構築可能となる。
【0023】
【発明の実施の形態】
次に、本発明の一つの実施の形態について図を用いて説明する。
図1は、本発明の一つの実施の形態を示すブロック図である。同図に示すように、本実施の形態に係るシステムは、VPNクライアントLH1_1、LH1_2およびLH2と、プライベートネットワークLと、アドレス変換装置Rと、グローバルネットワークであるインターネットINETと、VPNゲートウェイGH1およびGH2と、プライベートネットワークXおよびYと、内線端末XH1、XH2、YH1およびYH2とで構成されている。
また、VPNクライアントLH1_1は、パケット処理部LH1_1aとVPN処理部LH1_1bとLANインターフェースLH1_1cとで構成されている。
【0024】
また、アドレス変換装置Rは、パケットをLANとの間で送受信するLANインターフェースRaと、パケットをルーティングするIPルーティングRbと、受信したパケットがESPかどうか判断するESP監視部Rdと、パケットにアドレス変換を施すNAT処理部Rcと、ESPのパケットにアドレス変換を施すESPNAT処理部Reと、パケットをWANとの間で送受信するWANインターフェースRfとで構成されている。
また、VPNゲートウェイGH1は、WANインターフェースGH1aとVPN処理部GH1bとLANインターフェースGH1cとで構成されている。
また、内線端末XH1は、LANインターフェースXH1aとパケット処理部XH1bとで構成されている。
【0025】
ここで、アドレス変換装置Rの構成要素について詳細に説明する。
LANインターフェースRaは、イーサネット処理といったOSI参照モデルの物理層およびデータリンク層に関する処理、またはフィルタリング等のOSI参照モデルのネットワーク層の処理を行う。
IPルーティングRbは、ルーティングテーブルに基づいて、パケットのルーティングを行う。ただし、ディステイネーションアドレスが自分自身であった場合、トランスポートレイヤ以上の処理に委ね、パケットを内部に取り込む。
ESP監視部Rdの内部には、LAN側から受信したパケットとWAN側から受信したパケットに対して施す処理が異なることにより、LAN側、WAN側という2つ処理部を持つ。LAN側から来たパケットは、そのパケットのIPの上位プロトコルがESPかどうか判断する。ESPであったら、ESPNAT処理部ReのLAN側に処理を渡し、ESPでなければNAT処理部RcのLAN側に処理を渡す。WAN側から来たパケットの場合、そのパケットのIPの上位プロトコルがESPかどうか判断し、ESPであったら、ESPNAT処理部ReのWAN側に処理を渡し、ESPでなければNAT処理部RcのWAN側に処理を渡す。
【0026】
図2は、ESP監視部のLAN側の処理フローチャートを示す。
〔ステップs501(ESP判断)〕
LANインターフェースRaから受信したIPパケットのIPヘッダのプロトコルフィールドを読み取り、ESPかどうか、すなわち50番かどうか判断する(IANAによってプロトコル番号50は、ESPのため予約されている)。ESPであるならばステップs502へ、ESP以外のプロトコルであった場合ステップs503へ処理を移行する。
〔ステップs502(ESPNAT処理へ移行)〕
ESPNAT処理部ReのLAN側処理部Re1に処理を渡す。
〔ステップs503(NAT処理へ移行)
NAT処理部RcのLAN側処理部Rc1に処理を渡す。
【0027】
図3は、ESP監視部のWAN側の処理フローチャートを示す。
〔ステップs601(ESP判断)〕
IPルーティングから受信したIPパケットのIPヘッダのプロトコルフィールドを読み取り、ESPかどうか、すなわち50番かどうか判断する(IANAによってプロトコル番号50は、ESPのため予約されている)判断する。ESPであるならばステップs602へ、ESP以外のプロトコルであった場合ステップs603へ処理を移行する。
〔ステップs602(ESPNAT処理へ移行)〕
ESPNAT処理部ReのWAN側処理部Re3に処理を渡す。
〔ステップs603(NAT処理へ移行)〕
NAT処理部RcのWAN側処理部Rc2に処理を渡す。
【0028】
NAT処理部Rcは、ESP監視部Rdからパケットを受け取り、自らが持つ変換テーブルに従って、そのパケットのアドレスを変換する。LAN側から受信したパケットとWAN側から受信したパケットに対して施す処理が異なるのでLAN側処理部Rd1、WAN側処理部Rd2という2つ処理部を持つこととする。詳細にいうと、ESP監視部RdのLAN側処理部Rd1から、NAT処理部RcのLAN側処理部Rc1がパケットを受信するとき、そのパケットはソースアドレスとしてプライベートアドレスを持つが、NAT処理部Rcは自らが持つ変換テーブルに従ってそのパケットのソースアドレスをグローバルアドレスに変換して、インターネットINETヘ中継する。反対に、ESP監視部RdのWAN側から、NAT処理部RcのWAN側処理部Rc2がパケットを受信するとき、そのパケットのディスティネーションアドレスに対してNAT処理部Rcが変換を施す。NAT処理部Rcでは、NAT(Network Address Translation )とそれに改良を加えたIPマスカレードというアドレス変換方法を行うことが可能である。
【0029】
ESPNAT処理部Reは、ESP監視部Rdからパケットを受け取り、自らが持つ内部テーブルに従って、パケットのアドレスを変換し、パケットをIPルーティングRbまたはWANインターフェースRfに送出する。ESPNAT処理部Reは、本発明の特徴とする構成であり、その構成要素は(1)内部テーブルRe2、(2)LAN側処理部Re1、(3)WAN側処理部Re3である。
【0030】
(1)内部テーブルRe2
図4は、内部テーブルを示す模式図である。内部テーブルRe2は、ESPNAT処理部ReのLAN側処理部Re1が受信したパケットのソースアドレスを格納するVPNクライアントフィールドと送信先のインターネット上に存在するVPNゲートウェイのグローバルアドレスを格納するVPNゲートウェイフィールド、そのパケットのレスポンスパケットのSPIの値を格納するSPIフィールドを持つ。これらのVPNゲートウェイフィールド、VPNクライアントフィールド、SPIフィールドに格納される1組のデータの組をレコードと呼ぶ。
【0031】
ここで、SPIの概要について説明する。
SPIとは、受信者がセキュリティプロトコル毎にセキュリティパラメータであるセキュリティアソシエーション(以下、SAという)を識別するために使うもので、ESPヘッダ(図22参照)に含まれている。IPsecでは、暗号化や認証に使用するアルゴリズムを規定していない。このため、様々な種類のアルゴリズムの中から利用したいものを選択することが可能となる。しかし、当然、相手側がどのアルゴリズムを使用して暗号化したのか、どのアルゴリズムを利用して認証しているのかということが分からなければパケットを受け取ることができない。このような情報を保持するために、IPsecではSAを利用する。VPNクライアントとVPNゲートウェイが保持するSAには、使用する暗号化アルゴリズムの種類、暗号化アルゴリズムのモード、暗号化アルゴリズムで使用する初期ベクトル(IV)の長さ、認証アルゴリズムの種類、認証アルゴリズムのモード、暗号化鍵、認証鍵などの情報がされている。
【0032】
このSAはそれぞれの機器で保持され、IPsecパケットを送り出す場合には、相手側の保持するSAの中から利用できるものを送信側が選択し、そのSAに付けられているSPIの値をそのパケットのESPヘッダのフィールドに含めて送信する。受信側は、ESPヘッダ中のSPI値によってどのSAが使用されているのかを識別する。SPI値は鍵交換のフェーズで決定される32ビットの擬似乱数値である。またSAは単方向である。つまり、端末Aと端末Bが通信する場合、端末Aから端末Bへのパケットと、端末Bから端末Aへのパケットには異なるSAが使用される。よって、行きのパケットはDESで暗号化し、帰りのパケットはトリプルDESで暗号化するといったような、その方向によって使用するアルゴリズムを変えることも可能である。SAが単方向ということは、すなわち、鍵交換を行ったVPNクライアント、VPNゲートウェイは、互いに受信したIPsecパケットに対して適切なSAを識別するためのSPI値、IPsecパケットを送信する際に適切なSAを選択するためのSPI値という2つのSPI値を持つことになる。
【0033】
図5は、SPIとSAの使用例を示す説明図である。
▲1▼ IPsecパケットの送出側はIPsec処理が必要なパケットがきたら、適切なSAを選択し、どのようなセキュリティパラメータに従ってパケットに処理を施すか決定する。受信したパケットに対して、IPsec処理が必要か否かおよび適切なSAを選択する方法は、そのパケットのIPアドレス、トランスポート層プロトコルなどによって決定される。
▲2▼ ▲1▼によって決定したSAに従い、パケットにIPsec処理(パケットの暗号化等)を施し、パケットを送出する。
▲3▼ IPsecパケットの受信側はIPsecのパケットを受信したら、そのパケットのSPI値を読み出して、そのSPI値を元にセキュリティパラメータ表を検索し、そのIPsecパケットを復号化するのに適切なSAを選択する。
▲4▼ ▲3▼で検索したSAを用いて、IPsec処理(パケットの復号化等)を行う。ここで説明したSPIをインデックスとして適切なSAを選択したり、受信パケットの宛先アドレス等からVPN処理するか否かといった機能はVPNクライアント、VPNゲートウェイの構成要素VPN処理部が行う。
【0034】
(2)LAN側処理部Re1
LAN側処理部Re1は、ESP監視部RdのLAN側処理部Rd1から受信したESPパケットに対して、図6に示すようなフローチャートに従い、パケットを処理する。
【0035】
図6は、ESP処理部における処理フローチャートを示す。
〔ステップs701〕
ESPNAT処理部ReのLAN側処理部Re1は、受信したパケットのソースアドレス、ディスティネーションアドレス、SPI値と内部テーブルを参照し、受信パケットを「新規」、「登録不可」、「登録完了」の3つの状態の何れかに判別する。受信パケットを「新規」と判別した場合にはステップs702へ、「登録不可」と判別した場合にはステップs705へ、登録完了と判別した場合はステップs706へと処理を移行する。
【0036】
次に、受信パケットの状態を判別方法を説明する。
図7は、図6のステップs701の詳細フローチャートを示す。
まず、受信したパケットのディスティネーションアドレスを読み出し、内部テーブルのVPNゲートウェイフィールドを参照して、読み出したディスティネーションアドレスと同一のアドレスがあるかどうか判断する(ステップs901)。ディスティネーションアドレスと同一のアドレスが存在する場合には、ステップs902へ移行する。ディスティネーションアドレスと同一のアドレスが存在しない場合には、受信パケットの状態を「新規」に決定する(ステップs906)。ステップs902では、内部テーブルを参照し、受信パケットのディスティネーションアドレスと同一のアドレスを持つVPNゲートウェイフィールドのレコードを抽出する。ステップs903では、ステップs902で抽出された全てのレコードにおいて、SPIフィールドに値が格納されているかどうか判断する。全てのレコードにおいて、SPIフィールドに値が格納されていた場合、受信パケットの状態、を「登録完了」とする(ステップs904)。少なくとも1つのレコードのSPIフィールドにおいて、値が格納されていない場合、受信パケットの状態を「登録不可」とする(ステップs905)。
【0037】
〔ステップs702〕
・受信したパケットのソースアドレスを内部テーブルのVPNクライアントフィールドに、ディステイネーションアドレスを内部テーブルのVPNゲートウェイフィールドに格納する。
〔ステップs703〕
・受信したパケットのソースアドレスをルータが持つグローバルアドレスに変換する。
〔ステップs704〕
・パケットをWANインターフェースに転送する。
〔ステップs705〕
・パケットを破棄する。
〔ステップs706〕
・受信したパケットのソースアドレスをルータが持つグローバルアドレスに変換する。
〔ステップs707〕
・パケットをWANインターフェースに転送する。
【0038】
(3)WAN側処理部Re3
次にWAN側処理部Re3は、ESP監視部RdのWAN側処理部Rd2から受信したESPパケットに対し、図8に示すようなフローチャートに従ってパケットを処理する。
【0039】
図8は、ESPNAT処理部のWAN側処理部における処理フローチャートを示す。
〔ステップs801〕
・ESPNAT処理部ReのWAN側処理部Re3は、受信したパケットのソースアドレス、ディスティネーションアドレス、SPI値と内部テーブルを参照し、受信パケットを「未登録」、「登録途中」、「登録完了」の3つの状態の何れかに判別する。受信パケットを「未登録」と判別した場合にはステップs802へ、「レスポンス」と判別した場合にはステップs805へ、「登録済み」と判別した場合はステップs803へと処理を移行する。
【0040】
次に、受信パケットの状態を判別する方法を説明する。
図9は、受信パケットが「未登録」、「レスポンス」、「登録完了」の何れの状態か判断するためのフローチャートを示す。まず、受信したパケットのソースアドレスを読み出し、内部テーブルのVPNゲートウェイフィールドを参照して、読み出したソースアドレスと同一のアドレスがあるかどうか判断する(ステップs1001)。ソースアドレスと同一のアドレスが存在する場合には、ステップs1002へ移行する。VPNゲートウェイフィールドに受信パケットのソースアドレスと同一のアドレスが存在しない場合には、受信パケットの状態を「未登録」に決定する(ステップs1007)。ステップs1002では、内部テーブルを参照し、受信パケットのソースアドレスと同一のアドレスを持つVPNゲートウェイフィールドのレコードを抽出する。
【0041】
ステップs1003では、ステップs1002で抽出された全てのレコードにおいて、SPIフィールドに値が格納されているかどうか判断する。全てのレコードにおいて、SPIフィールドに値が格納されていた場合、ステップs1005に移行する。少なくとも1つのレコードのSPIフィールドにおいて、値が格納されていない場合、受信パケットの状態を「レスポンス」とする(s1004)。ステップs1005では、受信パケットのSPI値を読み込み、ステップs1002で抽出されたレコードにおけるSPIフィールドにおいて、同一の値が格納されているかどうか判断する。同一の値が格納されていた場合、受信パケットの状態を「登録完了」とする(ステップs1006)。同一の値が格納されていない場合は、受信パケットの状態を「未登録」とする(ステップs1007)。
【0042】
〔図8のステップs802〕
・パケットを破棄する。
〔ステップs803〕
・受信したパケットのESPヘッダのSPI値を読み出して、内部テーブルを参照し、読み出したSPI値と同一のSPIフィールドを含むレコードを抽出する。抽出したレコードのVPNクライアントフィールドに格納されているアドレスをパケットのディスティネーションアドレスに変換する。
〔ステップs804〕
・パケットをIPルーティングRbに転送する。
〔ステップs805〕
図9のステップs1002により抽出されたレコードにおいて、SPIフィールドに値が格納されていないレコードを抽出し、そのレコードのSPIフィールドに受信したパケットのESPヘッダのSPIフィールドに格納されているSPI値を格納する。
【0043】
WANインターフェースRfは、PPPやISDN回線処理といったOSI参照モデルの物理層およびデータリンク層に関する処理、またはフィルタリング等のOSI参照モデルのネットワーク層の処理を行う。これらの処理は本発明の主旨ではないため、ここでは言及しない。また、接続回線は、ISDNや専用線、イーサーネットといった種類は問わない。
【0044】
本実施の形態は上記構成要素により、ESPパケットを送出するプライベートネットワーク上の複数のVPNクライアント間でグローバルなIPアドレスを同時に共用することが可能なアドレス変換方法を実現する。従来のアドレス変換装置には、ESP監視部とESPNAT処理部がなかったので、ESPパケットを送出するプライベートネットワーク上の複数のVPNクライアント間でグローバルなIPアドレスを同時に共用することができなかったのに対し、ESP監視部とESPNAT処理部を新規に追加したことにより、グローバルなIPアドレスを同時に共用することができるようになった。
【0045】
なお、本発明において、グローバルなIPアドレスを同時に共用することができることに関して、VPNゲートウェイが送信したESPパケットに含まれるSPI値がVPNクライアント固有であることを前提としているが、SPI値は、鍵交換時に決定される32ビットの擬似乱数値であるため、約43億分の1で異なるVPNクライアントが同一のSPI値を保持することがある。この場合は、VPNゲートウェイからのESPパケットのディスティネーションアドレスを適切なVPNクライアントのアドレスに変換することができないため、正しく通信を行うことができない。この問題は、再度鍵交換を行うといった運用で回避することとする。
【0046】
〔VPNクライアント多重化システム〕
図1に示すVPN多重化システムは、1つのプライベートネットワーク上にある複数のVPNクライアントから1つのアドレス変換装置を経由してインターネットに接続し、同時に1つまたは複数のVPNゲートウェイとの間でVPNセッションを構築する。VPNセッションの多重化を行う際のシステムは、アドレス変換装置配下のプライベートネットワーク上に位置する複数のVPNクライアント、アドレス変換装置、インターネット上に位置する複数のVPNゲートウェイ、内線端末の4つのノードから構成される。
【0047】
次に、4つのノードの構成要素を各々説明する。
VPNクライアントLH1_1は、パケットの処理およびルーティングを実施するパケット処理部LH1_1aと、パケットにVPNの処理を施すVPN処理部LH1_1bと、パケットをイーサーネットとの間で送受信するLANインターフェースLH1_1cとで構成されている。
アドレス変換装置Rは、パケットをLANとの間で送受信するLANインターフェースRaと、パケットをルーティングするIPルーティングRbと、受信したパケットがESPかどうか判断するESP監視部Rdと、パケットにアドレス変換を施すNAT処理部Rcと、ESPのパケットにアドレス変換を施すESPNAT処理部Reと、パケットをWANとの間で送受信するWANインターフェースRfとで構成されている。
VPNゲートウェイGH1は、パケットをWANとの間で送受信するWANインターフェースGH1aと、パケットにVPNの処理を施すVPN処理部GH1bと、パケットをLANとの間で送受信するLANインターフェースGH1cとで構成されている。
内線端末XH1は、パケットをLANとの間で送受信するLANインターフェースXH1aと、パケットの処理およびルーティングするパケット処理部XH1bとで構成されている。
【0048】
これらのシステム構成要素において、アドレス変換装置Rの各構成要素は、前記アドレス変換装置の構成要素の説明と同一である。また、それ以外の構成要素については、特に従来のTCP/IP通信およびTCP/IP通信ノード上のVPN処理部については、従来の処理とは特に変わらず、新規な部分は存在しないので、説明を省略する。
【0049】
以下、システムの構成を説明する。
複数のVPNクライアントLH1_1,…がアドレス変換装置Rにバス接続されてプライベートネットワークLを構成している。LH1_1,…に付記した添え字は、「対向VPNゲートウェイの添え字」アンダーバー「VPNクライアントの添え字」(例:対向VPNゲートウェイがG1で、その対向VPNゲートウェイに接続するVPNクライアントが2台あるとき、LH1_1、LH1_2となる)。添え字については、以下、同様の記述規則とする。プライベートネットワークLはアドレス変換装置Rを介してインターネットINETに接続しており、インターネットINET上には複数のVPNゲートウェイGH1,…が存在し、各々のVPNゲートウェイGH1,…の配下には複数の内線端末XH1,XH2,…がバス接続されてプライベートネットワークX,…を構築している。プライベートネットワーク上の各VPNクライアントLH1_1,LH1_2,LH2,…には、各々プライベートIPアドレスL1_1,L1_2,L2,…が付与されている。
【0050】
また、アドレス変換装置RのインターネットINET側には、グローバルIPアドレスGRが付与されている。インターネットINET上のVPNゲートウェイGH1,…のインターネットINET側には、各々グローバルIPアドレスG1,…が付与されている。VPNゲートウェイ配下の内線端末XH1,…には各々プライベートIPアドレスX1,…が付与されている。
図1中に示す太破線の矢印は、VPNクライアントから内線端末へのパケットの流れを示している。太線の矢印は、内線端末からVPNクライアントヘのパケットの流れである。細線の矢印は、VPNクライアントからのパケットが内線端末へと到達する際の各構成要素における処理の流れを示している。細線の矢印は、内線端末からのパケットがVPNクライアントヘと到達する際の各構成要素における処理の流れを示している。
【0051】
【実施例】
次に、本発明の実施例について説明する。
図10は、本発明の実施例を示すネットワーク構成図である。同図に示すようなアドレス変換装置Rを介してVPNゲートウェイLH1_1,LH1_2,LH2とVPNゲートウェイGH1,GH2との間で3とおりのVPNセッションを確立する場合を例にして、アドレス変換装置でのアドレス変換手順を説明する。
【0052】
まず、本発明を実施するための前提条件は、VPNクライアントがセキュアな通信を行う対向のVPNゲートウェイと鍵交換のフェーズを完了していることである。既にこの時点で各々の2点間の鍵交換のフェーズは完了し、各VPNクライアントおよびVPNゲートウェイはともにセキュアな通信に必要なパラメータの集合であるSAを保持しているものとする。鍵交換に関しては、トランスポート層プロトコルUDP、ポート番号500番が使用される。よってNAT処理部においては、トランスポート層プロトコルUDP、ポート番号500番のパケットに対して、ポート番号を500番に保持したまま、アドレスのみを変換する方法によって対処する。このとき、アドレス、プロトコル、ポート番号の組を変換テーブルに保持するわけだが、その保持期間は鍵交換が完了した後、可能な限り短時間で終了することが望ましい。鍵交換を行ったVPNクライアントおよびVPNゲートウェイは、互いに受信したESPパケット用のSAを識別するためのSPI値(以下、受信SPI値という)、ESPパケットを送信する際に適切なSAを選択するためのSPI値(以下、送信SPI値という)という2つのSPI値を持っていることになる。
【0053】
本実施例ではVPNクライアントLH1_1はVPNゲートウェイGH1と、VPNクライアントLH1_2はVPNゲートウェイGH1と、VPNクライアントLH2はVPNゲートウェイGH2と鍵交換を完了しているとする。図10に示すようにVPNクライアントLH1_1は、VPNゲートウェイ配下のネットワークX向けのパケットに対して、ESP処理を施すわけだが、適切なSAを選択する際の送信SPI値がAAAであり、またVPNゲートウェイGH1から受信したESPパケットに対しては、適切なSAを選択するために受信SPI値BBBが使用される。同様にVPNクライアントLH1_2の送信SPI値はCCC、受信SPI値はDDD,VPNクライアントLH2の送信SPI値はEEE、受信SPI値はFFFである。VPNゲートウェイGH1の送信SPI値は、パケットの宛先がL1_1であった場合BBB,L1_2であった場合DDDであり、受信SPI値は、AAA、CCCの2つを保持している。同様にVPNゲートウェイGH2の送信SPI値は、パケットの宛先がL2であった場合、FFFであり、受信SPI値はEEEを保持している。
【0054】
ここで、3つのVPNセッションの確立の例を述べて、本実施例を説明する。アドレス変換装置Rを介して、VPNクライアントLH1_1とVPNゲートウェイGH1、VPNクライアントLH1_2とVPNゲートウェイGH1、VPNクライアントLH2とVPNゲートウェイGH2との間で3とおりのVPNセッションを確立する場合を例にして、アドレス変換手順を説明する。なお、以下の例ではESP・トンネルモードについて説明するが、ESP・トランスポートモードについても同様の手順で行われる。
【0055】
図10におけるVPNクライアントLH1_1は、VPNゲートウェイGH1と鍵交換を完了している。また、VPNクライアントLH1_2はVPNゲートウェイGH1と鍵交換を完了し、VPNクライアントLH2はVPNゲートウェイGH2と鍵交換を完了しており、各々SPI値を保持している。同図において、破線矢印はVPNセッションを示しており、矢印の起点がVPNセッション確立要求するホストであり、矢印の先がVPNセッション確立要求相手のホストである。
【0056】
VPNセッション▲1▼は、VPNクライアントLH1_1がVPNゲートウェイGH1との間にVPNセッションを確立し、プライベートネットワークX上の端末XH1と通信を行うことを意味している。また、VPNセッション▲2▼は、VPNクライアントLH1_2がVPNゲートウェイGH1との間にVPNセッションを確立し、プライベートネットワークX上の端末XH2と通信を行うことを意味している。さらに、VPNセッション▲3▼は、VPNクライアントLH2がVPNゲートウェイGH2との間にVPNセッションを確立し、プライベートネットワークY上の端末YH1と通信を行うことを意味している。
このようなVPNセッション▲1▼、▲2▼、▲3▼を順に確立していくものとする。
【0057】
図11、図12、図13、図14、図15、図16は、図10に示すVPNセッションを確立するにあたってのESPNAT処理部における内部テーブルの変化、パケットのアドレス変換等の変化を時系列的に示したシーケンス図である。ここでパケットの形態を分かりやすく表示するため、ソースアドレス(以下、SAという)、ディスティネーションアドレス(以下、DAという)、セキュリティパラメータインデックスの値(以下、SPIという)、データ(以下、DATAという)のみを示すことにより、パケットの構成を簡易に表記する。
【0058】
まず、プライベートネットワークL上のVPNゲートウェイLH1_1がインターネットINET上のVPNゲートウェイGH1配下のプライベートネットワークX上の端末XH1に対して通信を行うものとする。
【0059】
〔1〕VPNクライアントLH1_1
1−1 VPNクライアントLH1_1のパケット送出部LH1_1a(図1)が送信先のIPアドレスX1のパケットP1を作成し、VPN処理部LH1_1bへ渡す。
1−2 パケットP1のディスティネーションアドレスはX1であり、プライベートネットワークX向けのパケットのため、パケットP1にESP処理を施し、ESPパケットEP1を生成する。そして、LANインターフェースLH1_1cヘ処理を渡す。
1−3 VPNクライアントLH1_1のLANインターフェースLH1_1cは、ESPパケットEP1をプライベートネットワークLへ送出する。
【0060】
〔2〕アドレス変換装置R
2−1 ESPパケットEP1をアドレス変換装置RのLANインターフェースRaが受信し、IPルーティングRbヘ処理を渡す。
2−2 IPルーティングRbはESPパケットEP1のディステイネーションアドレスG1を読み出し、ESP監視部RdのLAN側処理部Rd1へ処理を渡す。
2−3 ESP監視部RdのLAN側処理部Rd1は、ESPパケットEP1のIPヘッダのプロトコルフィールドを参照し、パケットのIPの上位プロトコルがESPかどうかを判断する(図2のステップs501)。
2−4 ESPパケットEP1はESPであるため、ESPNAT処理部ReのLAN側処理部Re1へ処理を渡す(図2のステップs502)。
【0061】
2−5 ESPNAT処理部ReのLAN側処理部Re1は、内部テーブルRe2のVPNゲートウェイフィールドを参照し、パケットのディステイネーションアドレスG1と同一のアドレスが格納されているかどうかを検索する(図7のステップs901)。
2−6 その結果、同一のアドレスが格納されていないので、ESPパケットEP1の状態を「新規」と判断する(図7のステップs906)。
2−7 内部テーブルRe2のVPNゲートウェイフィールドにG1を格納し、VPNクライアントフィールドにL1_1を格納する(図6のステップs702)。
2−8 ESPパケットEP1のソースアドレスをGRに変換し(変換後のESPパケットをEP1’とする)、WANインターフェースRfヘ処理を渡す。2−9 WANインターフェースRfは、ESPパケットEP1’をインターネットINETへ送出する。
【0062】
〔3〕VPNゲートウェイGH1
3−1 ESPパケットEP1’をVPNゲートウェイGH1のWANインターフェースGH1aが受信し、VPN処理部GH1bへ処理を渡す。
3−2 VPN処理部GH1bは、ESPパケットEP1’のSPI値AAAを読み出し、適切なSAを選択してESPパケットEP1’を復号化してパケットP1を取り出し、LANインターフェースGH1cヘ処理を渡す。
3−3 LANインターフェースGH1cは、パケットP1をプライベートネットワークXへ送出する。
【0063】
〔4〕内線端末XH1
4−1 パケットP1を内線端末XH1のLANインターフェースXH1aが受信し、パケット処理部XH1bへ処理を渡す。
4−2 パケット処理部XH1bは、パケットP1の内容を読み取り、適切な処理を実行する。
【0064】
次に、この時点でプライベートネットワークL上のVPNクライアントLH1_2がインターネットINET上のVPNゲートウェイGH1配下のプライベートネットワークX上の端末XH2に対して通信を行うものとする。
【0065】
〔5〕VPNクライアントLH1_2
5−1 VPNクライアントLH1_2のパケット処理部が送信先X2のパケットP2を作成し、VPN処理部へ渡す。
5−2 パケットP2のディスティネーションアドレスはX2であるとともに、プライベートネットワークX向けのパケットのため、パケットP2にESP処理を施し、ESPパケットEP2を生成する。そして、LANインターフェースヘと処理を渡す。
5−3 VPNクライアントLH1_2のLANインターフェースは、ESPパケットEP2をプライベートネットワークLへ送出する。
【0066】
〔6〕アドレス変換装置R
6−1 ESPパケットEP2をアドレス変換装置RのLANインターフェースRaが受信し、IPルーティングRbヘ処理を渡す。
6−2 IPルーティングRbはESPパケットEP2のディステイネーションアドレスG1を読み出し、ESP監視部RdのLAN側処理部Rd1へ処理を渡す。
6−3 ESP監視部RdのLAN側処理部Rd1は、ESPパケットEP2のIPヘッダのプロトコルフィールドを参照し、ESPパケットEP2のIPの上位プロトコルがESPかどうか判断する(図2のステップs501)。
6−4 ESPパケットEP2はESPであるため、ESPNAT処理部ReのLAN側処理部Re1へ処理を渡す(図2のステップs502)。
【0067】
6−5 ESPNAT処理部ReのLAN側処理部Re1は、内部テーブルRe2のVPNゲートウェイフィールドを参照し、ESPパケットEP2のディステイネーションアドレスG1と同一のアドレスが格納されているかどうかを検索する(図7のステップs901)。
6−6 6−5結果、同一のアドレスが格納されているので、受信パケットEP2のディスティネーションアドレスG1と同一のアドレスを持つVPNゲートウェイフィールドのレコードを抽出する(図7のステップs902)。
6−7 6−6で抽出したレコードにおいて、そのSPIフィールドに値が格納されていないかどうかを判別する(図7のステップs903)。
6−8 6−7の結果、そのSPIフィールドに値が格納されてないので、パケットの状態を「登録不可」と判断する(図7のステップs905)。
6−9 ESPパケットEP2を廃棄する(図6のステップs705)。このとき、パケットP2はトランスポート層のプロトコルがTCPであった場合、タイムアウトまで再送される。
【0068】
次に、この時点でプライベートネットワークL上のVPNゲートウェイLH2がインターネットINET上のVPNゲートウェイGH2配下のプライベートネットワークY上の端末Y1に対して通信を行うものとする。
【0069】
〔7〕VPNクライアントLH2
7−1 VPNクライアントLH2のパケット処理部が送信先Y1のパケットP3を作成し、VPN処理部へ渡す。
7−2 パケットP3のディスティネーションアドレスはY1であり、ネットワークY向けのパケットのため、パケットP3にESP処理を施し、ESPパケットEP3を生成する。そして、LANインターフェースヘと処理を渡す。
7−3 VPNクライアントLH2のLANインターフェースは、ESPパケットEP3をプライベートネットワークLへ送出する。
【0070】
〔8〕アドレス変換装置R
8−1 ESPパケットEP3をアドレス変換装置RのLANインターフェースRaが受信し、IPルーティングRbヘ処理を渡す。
8−2 IPルーティングRbはESPパケットEP3のディスティネーションアドレスG2を読み出し、ESP監視部RdのLAN側処理部Rd1へ処理を渡す。
8−3 ESP監視部RdのLAN側処理部Rd1は、ESPパケットEP3のIPヘッダのプロトコルフィールドを参照し、ESPパケットEP3のIPの上位プロトコルがESPかどうか判断する(図2のステップs501)。
8−4 ESPパケットEP3はESPであるため、ESPNAT処理部ReのLAN側処理部Re1へ処理を渡す(図2のステップs502)。
【0071】
8−5 ESPNAT処理部ReのLAN側処理部Re1は、内部テーブルRe2のVPNゲートウェイフィールドを参照し、ESPパケットEP3のディステイネーションアドレスG2と同一のアドレスが格納されているかどうかを検索する(図7のステップs901)。
8−6 8−5の結果、同一のアドレスが格納されていないので、ESPパケットEP3の状態を「新規」と判断する(図7のs906)。
8−7 内部テーブルRe2のVPNゲートウェイフィールドにG2、VPNクライアントフィールドにL2を格納する(図6のステップs702)。
8−8 ESPパケットEP3のソースアドレスをGRに変換し(変換後のパケットをEP3’とする)、WANインターフェースRfヘ処理を渡す。
8−9 WANインターフェースRfは、ESPパケットEP3’をインターネットINETへ送出する。
【0072】
〔9〕VPNゲートウェイGH2
9−1 ESPパケットEP3’をVPNゲートウェイGH2のWANインターフェースが受信し、VPN処理部へ処理を渡す。
9−2 VPN処理部は、ESPパケットEP3’のSPI値EEEを読み出し、適切なSAを選択してESPパケットEP3’を復号化してパケットP3を取り出し、LANインターフェースヘ処理を渡す。
9−3 LANインターフェースは、パケットP3をプライベートネットワークYへ送出する。
【0073】
〔10〕内線端末YH1
10−1 パケットP3を内線端末YH1のLANインターフェースが受信し、パケット処理部へ処理を渡す。
10−2 パケット処理部は、パケットP3の内容を読み取り、適切な処理を実行する。
【0074】
次に、プライベートネットワークX上の内線端末XH1が4−2で示したパケットP1に対するレスポンスパケットを送信するものとする。
【0075】
〔11〕内線端末XH1
11−1 内線端末XH1のパケット処理部XH1bが送信先L1_1のパケットP4を作成し、LANインターフェースXH1aヘ処理を渡す。
11−2 内線端末XH1のLANインターフェースXH1aは、パケットP4をプライベートネットワークXへ送出する。
【0076】
〔12〕VPNゲートウェイGH1
12−1 パケットP4をVPNゲートウェイGH1のLANインターフェースGH1cが受信し、VPN処理部GH1bへ処理を渡す。
12−2 パケットP4のディスティネーションアドレスはLH11であり、宛先アドレスLH11向けのパケットのため、パケットP4にESP処理を施し、ESPパケットEP4を生成する。そしてWANインターフェースGH1aヘ処理を渡す。
12−3 VPNゲートウェイGH1のWANインターフェースGH1aは、ESPパケットEP4をインターネットINETへ送出する。
【0077】
〔13〕アドレス変換装置R
13−1 ESPパケットEP4をアドレス変換装置RのWANインターフェースRfが受信し、ESP監視部RdのWAN側処理部Rd2へ処理を渡す。
13−2 ESP監視部RdのWAN側処理部Rd2は、ESPパケットEP4のIPヘッダのプロトコルフィールドを参照し、ESPパケットEP4のIPの上位プロトコルがESPかどうか判断する(図3のステップs601)。
13−3 ESPパケットEP4はESPであるため、ESPNAT処理部ReのWAN側処理部Re3へ処理を渡す(図3のステップs602)。
13−4 ESPNAT処理部ReのWAN側処理部Re3は、内部テーブルRe2のVPNゲートウェイフィールドを参照し、ESPパケットEP4のディステイネーションアドレスG1と同一のアドレスが少なくとも1つ格納されているかどうかを検索する(図9のステップs1001)。
13−5 13−4の結果、同一のアドレスが格納されているので、VPNゲートウェイフィールドがG1のレコードを抽出する(図9のステップs1002)。
【0078】
13−6 13−5で抽出したレコードにおいて、SPIフィールドに値が格納されてないものが1つあるかどうか検索する(図9のステップs1003)
13−7 13−6の結果、13−5で抽出したレコードにおいて、そのSPIフィールドに値が格納されていないものがあったので、ESPパケットEP4のパケットの状態を「レスポンス」と決定する(図9のステップs1004)。
13−8 13−7の結果、ESPパケットEP4の状態はレスポンスであったので、ESPパケットEP4のESPヘッダに含まれるSPI値BBBを内部テーブルRe2のSPIフィールドに格納する(図8のステップs805)。
13−9 ESPパケットEP4のSPI値はBBBであるので、ESPパケットEP4のディスティネーションアドレスをLH11に変換し(アドレス変換されたパケットEP4をEP4’とする)、IPルーティングRbヘ処理を渡す。
13−10 IPルーティングRbは、ESPパケットEP4’のディスティネーションアドレスを読み出し、LANインターフェースRaへ処理を渡す。
13−11 LANインターフェースRaはESPパケットEP4’をプライベートネットワークLへ送出する。
【0079】
〔14〕VPNクライアントLH1_1
14−1 VPNクライアントLH1_1のLANインターフェースLH1_1cは、ESPパケットEP4’を受信し、VPN処理部LH1_1bへ処理を渡す。
14−2 VPN処理部LH1_1bは、ESPパケットEP4’のSPI値BBBを読み出し、適切なSAを選択してESPパケットEP4’を復号化してパケットP4を取り出し、パケット処理部LH1_1aへ処理を渡す。
14−3 パケット処理部LH1_1aは、パケットP4の内容を読み取り、適切な処理を実行する。
【0080】
次に、プライベートネットワークY上の内線端末YH1が10−2で示した受信パケットP3に対するレスポンスパケットP5を送信するものとする。
【0081】
〔15〕内線端末YH1
15−1 内線端末YH1のパケット処理部が送信先LH2のパケットP5を作成し、LANインターフェースヘ処理を渡す。
15−2 内線端末YH1のLANインターフェースは、パケットP5をプライベートネットワークYへ送出する。
【0082】
〔16〕VPNゲートウェイGH2
16−1 パケットP5をVPNゲートウェイGH2のLANインターフェースが受信し、VPN処理部へ処理を渡す。
16−2 パケットP5のディスティネーションアドレスはL2であり、宛先アドレスL2向けのパケットのため、パケットP5にESP処理を施し、ESPパケットEP5を生成する。そしてWANインターフェースヘと処理を渡す。
16−3 VPNクライアントGH2のWANインターフェースは、ESPパケットEP5をインターネットINETへ送出する。
【0083】
〔17〕アドレス変換装置R
17−1 ESPパケットEP5をアドレス変換装置RのWANインターフェースRfが受信し、ESP監視部RdのWAN側処理部Rd2へ処理を渡す。
17−2 ESP監視部RdのWAN側処理部Rd2は、ESPパケットEP5のIPヘッダのプロトコルフィールドを参照し、ESPパケットEP5のIPの上位プロトコルがESPかどうか判断する(図3のステップs601)。
17−3 ESPパケットEP5はESPであるため、ESPNAT処理部ReのWAN側処理部Re3へ処理を渡す(図3のステップs602)。
17−4 ESPNAT処理部ReのWAN側処理部Re3は、内部テーブルRe2のVPNゲートウェイフィールドを参照し、ESPパケットEP5のディステイネーションアドレスG2と同一のアドレスが少なくとも1つ格納されているかどうかを検索する(図9のステップs1001)。
17−5 17−4の結果、同一のアドレスが格納されているので、VPNゲートウェイフィールドがG2のレコードを抽出する(図9のステップs1002)。
【0084】
17−6 17−5で抽出したレコードにおいて、そのSPIフィールドに値が格納されてないものが1つあるかどうか検索する(図9のステップs1003)
17−7 17−6の結果、17−5で抽出したレコードにおいて、そのSPIフィールドに値が格納されていないものがあったので、ESPパケットEP5のパケットの状態を「レスポンス」と決定する(図9のステップs1004)。
17−8 17−7の結果、ESPパケットEP5の状態はレスポンスであったので、ESPパケットEP5のESPへッダに含まれるSPI値DDDを内部テーブルRe2のSPIフィールドへ格納する(図8のステップs805)
17−9 ESPパケットEP5のSPI値はDDDであるので、ESPパケットEP5のディスティネーションアドレスをL2に変換し(アドレス変換されたパケットEP5をEP5’とする)、IPルーティングRbヘ処理を渡す。
17−10 パケットEP5’のディステイネーションアドレスを読み出し、LANインターフェースRaへ処理を渡す。
17−11 LANインターフェースRaはESPパケットEP5’をプライベートネットワークLへ送出する。
【0085】
〔18〕VPNクライアントLH2
18−1 VPNクライアントLH2のLANインターフェースは、ESPパケットEP5’を受信し、VPN処理部へと処理を渡す。
18−2 VPN処理部は、ESPパケットEP5’のSPI値DDDを読み出し、適切なSAを選択してESPパケットEP5’を復号化してパケットP5を取り出し、パケット処理部へ処理を渡す。
18−3 パケット処理部は、パケットP5の内容を読み取り、適切な処理を実行する。
【0086】
次に先ほど、アドレス変換装置Rによって、パケットが破棄されたプライベートネットワークL上のVPNゲートウェイLH1_2からインターネットINET上のVPNゲートウェイGH1配下のプライベートネットワークX上の端末XH2へのパケットがTCPにより再送される、もしくは手動で再送を行ったものとする。
【0087】
〔19〕VPNクライアントLH1_2
19−1 VPNクライアントLH1_2のパケット処理部が送信先X2のパケットP6を作成し、VPN処理部へ渡す。
19−2 パケットP6のディスティネーションアドレスはX2であり、プライベートネットワークX向けのパケットのため、パケットP6にESP処理を施し、ESPパケットEP6を生成する。そしてLANインターフェースヘと処理を渡す。
19−3 VPNクライアントLH1_2のLANインターフェースは、ESPパケットEP6をプライベートネットワークLへ送出する。
【0088】
〔20〕アドレス変換装置R
20−1 ESPパケットEP6をアドレス変換装置RのLANインターフェースRaが受信し、IPルーティングRbヘ処理を渡す。
20−2 IPルーティングRbはパケットのディステイネーションアドレスG1を読み出し、ESP監視部RdのLAN側処理部Rd1へ処理を渡す。
20−3 ESP監視部RdのLAN側処理部Rd1は、ESPパケットEP6のIPヘッダのプロトコルフィールドを参照し、ESPパケットEP6のIPの上位プロトコルがESPかどうか判断する(図2のステップs501)。
20−4 ESPパケットEP6はESPであるため、ESPNAT処理部ReのLAN側処理部Re1へ処理を渡す(図2のステップs502)。
【0089】
20−5 ESPNAT処理部ReのLAN側処理部Re1は、内部テーブルRe2のVPNゲートウェイフィールドを参照し、ESPパケットEP6のディステイネーションアドレスG1と同一のアドレスが格納されているか検索する(図7のステップs901)。
20−6 20−5の結果、同一のアドレスが格納されていないので、ESPパケットEP6の状態を「新規」と判断する(図7のステップs906)。
20−7 内部テーブルRe2のVPNゲートウェイフィールドにG1、VPNクライアントフィールドにL1_2を格納する(図6のステップs702)。
20−8 ESPパケットEP6のソースアドレスをGRに変換し(変換後のパケットをEP6’とする)、WANインターフェースRfヘ処理を渡す。
20−9 WANインターフェースRfは、ESPパケットEP6’をインターネットINETへ送出する。
【0090】
〔21〕VPNゲートウェイGH1
21−1 ESPパケットEP6’をVPNゲートウェイGH1のWANインターフェースGH1aが受信し、VPN処理部GH1bへ処理を渡す。
21−2 VPN処理部GH1bは、ESPパケットEP6’のSPI値CCCを読み出し、適切なSAを選択してESPパケットEP6’を復号化してパケットP6を取り出し、LANインターフェースGH1cヘ処理を渡す。
21−3 LANインターフェースGH1cは、パケットP6をプライベートネットワークXに送出する。
【0091】
〔22〕内線端末XH2
22−1 パケットP6を内線端末XH2のLANインターフェースが受信し、パケット処理部へ処理を渡す。
22−2 パケット処理部は、パケットP6の内容を読み取り、適切な処理を実行する。
【0092】
次に、プライベートネットワークX上の内線端末XH2が先ほど受信したパケットP6に対するレスポンスパケットP7を送信するものとする。
【0093】
〔23〕内線端末XH2
23−1 内線端末XH2パケット処理部が送信先L1_2向けのパケットP7を作成し、VPN処理部へ渡す。
23−2 内線端末XH2のLANインターフェースは、パケットP7をプライベートネットワークXへ送出する。
【0094】
〔24〕VPNゲートウェイGH1
24−1 パケットP7をVPNゲートウェイGH1のLANインターフェースGH1cが受信し、VPN処理部GH1bへ処理を渡す。
24−2 パケットP7のディステイネーションアドレスはL1_2であるとともに、宛先アドレスL1_2向けのパケットのため、パケットP7にESP処理を施し、ESPパケットEP7を生成する。そしてWANインターフェースGH1aヘ処理を渡す。
24−3 VPNゲートウェイGH1のWANインターフェースGH1aは、ESPパケットEP7をインターネットINETへ送出する。
【0095】
〔25〕アドレス変換装置R
25−1 ESPパケットEP7をアドレス変換装置RのWANインターフェースRfが受信し、ESP監視部RdのWAN側処理部Rd2へ処理を渡す。
25−2 ESP監視部RdのWAN側処理部Rd2は、ESPパケットEP7のIPヘッダのプロトコルフィールドを参照し、ESPパケットEP7のIPの上位プロトコルがESPかどうか判断する(図3のステップs601)。
25−3 ESPパケットEP7はESPであるため、ESPNAT処理部ReのWAN側処理部Re3へ処理を渡す(図3のステップs602)。
25−4 ESPNAT処理部ReのWAN側処理部Re3は、内部テーブルRe2のVPNゲートウェイフィールドを参照し、ESPパケットEP7のディステイネーションアドレスG1と同一のアドレスが少なくとも1つ格納されているか検索する(図9のステップs1001)。
25−5 25−4の結果、同一のアドレスが格納されているので、VPNゲートウェイフィールドがG1のレコードを抽出する(図9のステップs1002)。
25−6 25−5で抽出したレコードにおいて、そのSPIフィールドに値が格納されてないものが1つあるかどうか検索する(図9のステップs1003)
【0096】
25−7 25−6の結果、25−5で抽出したレコードにおいて、そのSPIフィールドに値が格納されていないものがあったので、ESPパケットEP7のパケットの状態を「レスポンス」と決定する(図9のステップs1004)。
25−8 25−7の結果、ESPパケットEP7の状態はレスポンスであったので、ESPパケットEP7のESPヘッダに含まれるSPI値DDDを内部テーブルRe2のSPIフィールドに格納する(図8のステップs805)
25−9 ESPパケットEP7のSPI値はDDDであるので、ESPパケットEP7のディスティネーションアドレスをL1_2に変換し(アドレス変換されたパケットEP7をEP7’とする)、IPルーティングRbヘ処理を渡す。
25−10 ESPパケットEP7’のディスティネーションアドレスを読み出し、LANインターフェースRaへ処理を渡す。
25−11 LANインターフェースRaはESPパケットEP7’をプライベートネットワークLへ送出する。
【0097】
〔26〕VPNクライアントLH1_2
26−1 VPNクライアントLH1_2のLANインターフェースは、ESPパケットEP7’を受信し、VPN処理部へ処理を渡す。
26−2 VPN処理部は、ESPパケットEP7’のSPI値DDDを読み出し、適切なSAを選択してESPパケットEP7’を復号化してパケットP7を取り出し、パケット処理部へ処理を渡す。
26−3 パケット処理部は、パケットP7の内容を読み取り、適切な処理を実行する。
【0098】
次に、プライベートネットワークL上のVPNゲートウェイLH1_1がインターネットINET上のVPNゲートウェイGH1配下のプライベートネットワークX上の端末XH1に対して通信を行うものとする。
【0099】
〔27〕VPNクライアントLH1_1
27−1 VPNクライアントLH1_1のパケット処理部LH1_1aが送信先X1のパケットP8を作成し、VPN処理部LH1_1bへ渡す。
27−2 パケットP8のディスティネーションアドレスはX1であり、ネットワークX向けのパケットのため、パケットP8にESP処理を施し、ESPパケットEP8を生成する。そしてLANインターフェースLH1_1cヘと処理を渡す。
27−3 VPNクライアントLH1_1のLANインターフェースLH1_1cは、ESPパケットEP8をプライベートネットワークLへ送出する。
【0100】
〔28〕アドレス変換装置R
28−1 ESPパケットEP8をアドレス変換装置RのLANインターフェースRaが受信し、IPルーティングRbヘ処理を渡す。
28−2 IPルーティングRbはESPパケットEP8のディステイネーションアドレスG1を読み出し、ESP監視部RdのLAN側処理部Rd1へ処理を渡す。
28−3 ESP監視部RdのLAN側処理部Rd1は、ESPパケットEP8のIPヘッダのプロトコルフィールドを参照し、ESPパケットEP8のIPの上位プロトコルがESPかどうか判断する(図2のステップs501)。
28−4 ESPパケットEP8はESPであるため、ESPNAT処理部ReのLAN側処理部Re1へ処理を渡す(図2のステップs502)。
28−5 ESPNAT処理部ReのLAN側処理部Re1は、内部テーブルRe2のVPNゲートウェイフィールドを参照し、ESPパケットEP8のディスティネーションアドレスG1と同一のアドレスが格納されているか検索する(図7のs901)。
【0101】
28−6 28−5の結果、同一のアドレスが格納されているので、VPNゲートウェイフィールドがG1のレコードを抽出する(図7のs902)。
28−7 28−6で抽出したレコードにおいて、そのSPIフィールドに値が格納されていないかどうかを検索する(図7のステップs903)
28−8 28−7の結果、28−6で抽出したレコードにおいて、そのSPIフィールドに値BBBが格納されていたので、ESPパケットEP8のパケットの状態を「登録完了」と決定する(図7のステップs904)
28−9 ESPパケットEP8のソースアドレスをGRに変換する(変換後のパケットをEP8’とする)(図6のステップs706)。
28−10 WANインターフェースRfヘ処理を渡す(図6のステップs707)。
28−11 WANインターフェースRfは、ESPパケットEP8’をインターネットINETに送出する。
【0102】
〔29〕VPNゲートウェイGH1
29−1 ESPパケットEP8’をVPNゲートウェイGH1のWANインターフェースGH1aが受信し、VPN処理部GH1bへ処理を渡す。
29−2 VPN処理部GH1bは、ESPパケットEP8’のSPI値AAAを読み出し、適切なSAを選択してESPパケットEP8を復号化してパケットP8を取り出し、LANインターフェースGH1cヘ処理を渡す。
29−3 LANインターフェースGH1cは、パケットP8をプライベートネットワークXへ送出する。
【0103】
〔30〕内線端末XH1
30−1 パケットP8を内線端末XH1のLANインターフェースXH1aが受信し、パケット処理部XH1bへ処理を渡す。
30−2 パケット処理部XH1bは、パケットP8の内容を読み取り、適切な処理を実行する。
【0104】
次に、プライベートネットワークX上の内線端末XH1が先ほど受信したパケットP8に対するレスポンスパケットP9を送信するものとする。
【0105】
〔31〕内線端末XH1
31−1 内線端末XH1のパケット処理部XH1bが送信先L1_1のパケットP9を作成し、LANインターフェースXH1aヘ渡す
31−2 内線端末XH1のLANインターフェースXH1aは、パケットP9をプライベートネットワークXへ送出する。
【0106】
〔32〕VPNゲートウェイGH1
32−1 パケットP9をVPNゲートウェイGH1のLANインターフェースGH1cが受信し、VPN処理部GH1bへ処理を渡す。
32−2 パケットP9のディスティネーションアドレスはL1_2であり、宛先アドレスL1_2のパケットのため、パケットP9にESP処理を施し、ESPパケットEP9を生成する。そしてWANインターフェースGH1aヘ処理を渡す。
32−3 VPNゲートウェイGH1のWANインターフェースGH1aは、ESPパケットEP9をインターネットINETへ送出する。
【0107】
〔33〕アドレス変換装置R
33−1 ESPパケットEP9をアドレス変換装置RのWANインターフェースRfが受信し、ESP監視部RdのWAN側処理部Rd2へ処理を渡す。
33−2 ESP監視部RdのWAN側処理部Rd2は、ESPパケットEP9のIPヘッダのプロトコルフィールドを参照し、ESPパケットEP9のIPの上位プロトコルがESPかどうかを判断する(図3のステップs601)。
33−3 ESPパケットEP9はESPであるため、ESPNAT処理部ReのWAN側処理部Re3へ処理を渡す(図3のステップs602)。
33−4 ESPNAT処理部ReのWAN側処理部Re3は、内部テーブルRe2のVPNゲートウェイフィールドを参照し、ESPパケットEP9のディスティネーションアドレスG1と同一のアドレスが少なくとも1つ格納されているか検索する(図9のステップs1001)。
33−5 33−4の結果、同一のアドレスが格納されているので、VPNゲートウェイフィールドがG1のレコードを抽出する(図9のステップs1002)。
33−6 33−5で抽出したレコードにおいて、そのSPIフィールドに値が格納されてないものがあるかどうか検索する(図9のステップs1003)。
【0108】
33−7 33−6の結果、SPIフィールドに値が格納されていないものがないので、33−5で抽出したレコードにおけるSPIフィールドにおいて、ESPパケットEP9のSPI値BBBと同一のものが格納されているか検索する(図9のステップs1005)
33−8 33−7の結果、同一のSPI値が格納されていたので、ESPパケットEP9の状態を「登録完了」と決定する(図9のステップs1006)。
33−9 ESPパケットEP9のSPI値はBBBであるので、ESPパケットEP9のディスティネーションアドレスをL11に変換し(アドレス変換されたパケットEP9をEP9’とする)、IPルーティングRbヘ処理を渡す。
33−10 ESPパケットEP9’のディスティネーションアドレスを読み出し、LANインターフェースRaへ処理を渡す。
33−11 LANインターフェースRaはESPパケットEP9’をプライベートネットワークLへ送出する。
【0109】
〔34〕VPNクライアントLH1_1
34−1 VPNクライアントLH1_1のLANインターフェースLH1_1cは、ESPパケットEP9’を受信し、VPN処理部LH1_1bへと処理を渡す。
34−2 VPN処理部LH1_1bは、ESPパケットEP9’のSPI値BBBを読み出し、適切なSAを選択してESPパケットEP9’を復号化してパケットP9を取り出し、パケット処理部LH1_1aへ処理を渡す。
34−3 パケット処理部LH1_1aは、パケットP9の内容を読み取り、適切な処理を実行する。
以上のとおり図11〜図16に基づくアドレス変換手順により、VPNクライアント多重化システムを実現することができる。
【0110】
【発明の効果】
以上説明したように、本発明はESPパケット中のSPIを利用することにより、VPN内のプライベートアドレスとインターネット上のグローバルアドレスとのアドレス変換を実現し、VPN内の複数の端末とインターネット上のVPNゲートウェイとを接続することができる。したがって、1つのプライベートネットワーク上にある複数のVPNクライアントから1つのアドレス変換装置経由でインターネットに接続し、同時に1つまたは複数のVPNゲートウェイとの間でVPNセッション(使用プロトコルはESP)を構築可能となるため、本発明により次のような効果が得られる。
(1)複数の人がPCを利用するスペース(レンタルオフィス等)に設置してあるPC、もしくは、持ち込んだPCから、それぞれの人が同時に会社等へのVPNアクセスが可能になる。
(2)複数の人がPCを利用するスペースの管理コストが減る。
(3)本発明の機能を有する機器1台で複数のVPNセッションを可能とするため、機器コストが減る。
(4)複数のPCから同時にVPNセッションが可能なため、VPNでアクセスするユーザの利便性が向上する。
【図面の簡単な説明】
【図1】本実施の形態に係るシステムを示すネットワーク構成図である。
【図2】プロトコル監視部のLAN側処理部における処理を示すフローチャートである。
【図3】プロトコル監視部のWAN側処理部における処理を示すフローチャートである。
【図4】ESPNAT処理部の内部テーブルを示す模式図である。
【図5】SAおよびSPIを説明するための模式図である。
【図6】ESPNAT処理部のLAN側処理部における処理を示すフローチャートである。
【図7】図6のステップs701の詳細を示すフローチャートである。
【図8】ESPNAT処理部のWAN側処理部における処理を示すフローチャートである。
【図9】図8のステップs801の詳細を示すフローチャートである。
【図10】実施例を示すネットワーク構成図である。
【図11】パケットおよび内部テーブルの変化状態を示すシーケンス図である。
【図12】パケットおよび内部テーブルの変化状態を示すシーケンス図である。
【図13】パケットおよび内部テーブルの変化状態を示すシーケンス図である。
【図14】パケットおよび内部テーブルの変化状態を示すシーケンス図である。
【図15】パケットおよび内部テーブルの変化状態を示すシーケンス図である。
【図16】パケットおよび内部テーブルの変化状態を示すシーケンス図である。
【図17】プライベートネットワークからのインターネット接続を説明するためのネットワーク構成図である。
【図18】NATの処理(LAN側)を示すフローチャートである。
【図19】NATの処理(WAN側)を示すフローチャートである。
【図20】IPマスカレードの処理(LAN側)を示すフローチャートである。
【図21】IPマスカレードの処理(WAN側)を示すフローチャートである。
【図22】ESPパケットのフォーマットを示す模式図である。
【図23】VPNにNATを適用した場合を説明するためのネットワーク構成図である。
【図24】複数のNAT機器を使用した状態を説明するためのネットワーク構成図である。
【符号の説明】
LH1_1…VPNクライアント、LH1_1a…パケット処理部、LH1_1b…VPN処理部、LH1_1c…LANインターフェース、LH1_2,LH2…VPNクライアント、L…プライベートネットワーク、R…アドレス変換装置、Ra…LANインターフェース、Rb…IPルーティング、Rc…NAT処理部、Rc1…LAN側処理部、Rc2…WAN側処理部、Rd…ESP監視部、Rd1…LAN側処理部、Rd2…WAN側処理部、Re…ESPNAT処理部、Re1…LAN側処理部、Re2…内部テーブル、Re3…WAN側処理部、Rf…WANインターフェース、INET…インターネット、GH1…VPNゲートウェイ、GH1a…WANインターフェース、GH1b…VPN処理部、GH1c…LANインターフェース、X…プライベートネットワーク、XH1…内線端末、XH1a…LANインターフェース、XH1b…パケット処理部、XH2…内線端末、GH2…VPNゲートウェイ、Y…プライベートネットワーク、YH1,YH2…内線端末、L1_1,L1_2,L2,GA,G1,G2,X1,X2,Y1,Y2…IPアドレス。

Claims (2)

  1. パケットをプライベートネットワークとの間で送受信するLANインターフェース手段と、
    前記送受信されたパケットを中継するIPルーティング手段と、
    受信されたパケットがESP( Encapsulating Security Payload )か否かを判断するESP監視手段と、
    前記受信されたパケットにアドレス変換を施すNAT処理手段と、
    ESPのパケットにアドレス変換を施すESPNAT処理手段と、
    パケットをグローバルネットワークとの間で送受信するWANインターフェースとを備え、
    前記ESPNAT処理手段は、セキュリテイーパラメータインデックスと前記プライベートネットワーク上の端末のIPアドレスとを対応付けた内部テーブルを有し、この内部テーブルを参照することにより前記ESPのパケットのアドレス変換を実施することを特徴とするネットワークアドレス変換装置。
  2. 第1のプライベートネットワークを介して複数のVPNクライアントを収容したアドレス変換装置と、第2のプライベートネットワークを介して複数の内線端末を収容したVPNゲートウェイトと、前記アドレス変換装置および前記VPNゲートウェイの接続されたグローバルネットワークとで構成されたVPNクライアント多重化システムにおいて、
    前記アドレス変換装置は、
    パケットを前記第1のプライベートネットワークとの間で送受信するLANインターフェース手段と、
    前記送受信されたパケットを中継するIPルーティング手段と、
    受信されたパケットがESP( Encapsulating Security Payload )か否かを判断するESP監視手段と、
    前記受信されたパケットにアドレス変換を施すNAT処理手段と、
    ESPのパケットにアドレス変換を施すESPNAT処理手段と、
    パケットをグローバルネットワークとの間で送受信するWANインターフェースとを備え、
    前記ESPNAT処理手段は、セキュリテイーパラメータインデックスと前記第1のプライベートネットワーク上の端末のIPアドレスとを対応付けた内部テーブルを有し、この内部テーブルを参照することにより前記ESPのパケットのアドレス変換を実施する
    ことを特徴とするVPNクライアント多重化システム。
JP2000173667A 2000-06-09 2000-06-09 ネットワークアドレス変換装置およびvpnクライアント多重化システム Expired - Fee Related JP3597756B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000173667A JP3597756B2 (ja) 2000-06-09 2000-06-09 ネットワークアドレス変換装置およびvpnクライアント多重化システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000173667A JP3597756B2 (ja) 2000-06-09 2000-06-09 ネットワークアドレス変換装置およびvpnクライアント多重化システム

Publications (2)

Publication Number Publication Date
JP2001352344A JP2001352344A (ja) 2001-12-21
JP3597756B2 true JP3597756B2 (ja) 2004-12-08

Family

ID=18675859

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000173667A Expired - Fee Related JP3597756B2 (ja) 2000-06-09 2000-06-09 ネットワークアドレス変換装置およびvpnクライアント多重化システム

Country Status (1)

Country Link
JP (1) JP3597756B2 (ja)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7058973B1 (en) * 2000-03-03 2006-06-06 Symantec Corporation Network address translation gateway for local area networks using local IP addresses and non-translatable port addresses
US20030191845A1 (en) * 2002-04-03 2003-10-09 Hinds John Sherman Method, apparatus and system for establishing communications between communications devices
US8042170B2 (en) * 2004-07-15 2011-10-18 Qualcomm Incorporated Bearer control of encrypted data flows in packet data communications
KR100687415B1 (ko) * 2005-04-14 2007-02-26 주식회사 케이티프리텔 신호처리를 간소화시킨 IPsec 통신시스템, 통신방법및 그 기록매체
JP4647481B2 (ja) * 2005-12-19 2011-03-09 三菱電機株式会社 暗号化通信装置
JP4665007B2 (ja) * 2008-03-28 2011-04-06 パナソニック株式会社 監視映像送信装置および方法
JP5239996B2 (ja) * 2009-03-26 2013-07-17 富士通株式会社 中継装置、転送方法およびコンピュータプログラム
JP5158021B2 (ja) * 2009-05-27 2013-03-06 富士通株式会社 トンネル通信装置及び方法
JP5897439B2 (ja) * 2012-09-14 2016-03-30 株式会社東芝 通信システム、ネットワークデバイス、呼制御装置、及びシステム制御方法

Also Published As

Publication number Publication date
JP2001352344A (ja) 2001-12-21

Similar Documents

Publication Publication Date Title
JP4634687B2 (ja) ローカルipアドレスと変換不可能なポートアドレスとを用いたローカルエリアネットワークのためのネットワークアドレス変換ゲートウェイ
US9838362B2 (en) Method and system for sending a message through a secure connection
EP1911242B1 (en) Ipsec connection over nat gateway
JP4481518B2 (ja) 情報中継装置及び転送方法
CA2602778C (en) Preventing duplicate sources from clients served by a network address port translator
US9253146B2 (en) Preventing duplicate sources from clients served by a network address port translator
US20020016926A1 (en) Method and apparatus for integrating tunneling protocols with standard routing protocols
EP2400693A2 (en) Routing and service performance management in an application acceleration environment
JP2009111437A (ja) ネットワークシステム
EP1328105B1 (en) Method for sending a packet from a first IPsec client to a second IPsec client through a L2TP tunnel
JP2003502913A (ja) トンネリングおよび補償を使用するネットワーク・アドレス翻訳によりセキュリティを与えるための方法および装置
JPH10178450A (ja) フレームを捕獲、カプセル化及び暗号化するための擬似ネットワークアダプタ
US9445384B2 (en) Mobile device to generate multiple maximum transfer units and data transfer method
JP3597756B2 (ja) ネットワークアドレス変換装置およびvpnクライアント多重化システム
JP2001156841A (ja) 暗号装置、暗号化器および復号器
JP2006191205A (ja) 通信装置及び通信方法、通信システム
JP3603830B2 (ja) セキュリティゲートウェイ装置
US20130133063A1 (en) Tunneling-based method of bypassing internet access denial
CN117439815B (zh) 一种基于反向透明桥接的内网穿透系统及方法
Odhner Secure Communications with WireGuard in Decentralized Networks: A Mesh VPN with NAT Traversal via STUN/TURN Servers
JP4778094B2 (ja) 情報中継装置及び転送方法
Fleischer et al. Formal specification and validation of secure connection establishment in a generic access network scenario
JPWO2018142526A1 (ja) 中継装置、通信システム、及び通信方法

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20040625

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040706

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040803

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20040907

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20040909

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080917

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080917

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090917

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090917

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100917

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100917

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110917

Year of fee payment: 7

LAPS Cancellation because of no payment of annual fees