JP2020137006A - アドレス解決制御方法、ネットワークシステム、サーバ装置、端末及びプログラム - Google Patents

アドレス解決制御方法、ネットワークシステム、サーバ装置、端末及びプログラム Download PDF

Info

Publication number
JP2020137006A
JP2020137006A JP2019030630A JP2019030630A JP2020137006A JP 2020137006 A JP2020137006 A JP 2020137006A JP 2019030630 A JP2019030630 A JP 2019030630A JP 2019030630 A JP2019030630 A JP 2019030630A JP 2020137006 A JP2020137006 A JP 2020137006A
Authority
JP
Japan
Prior art keywords
address
terminal
server device
arp
network
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.)
Pending
Application number
JP2019030630A
Other languages
English (en)
Inventor
敦也 山下
Atsuya Yamashita
敦也 山下
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.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Priority to JP2019030630A priority Critical patent/JP2020137006A/ja
Publication of JP2020137006A publication Critical patent/JP2020137006A/ja
Pending legal-status Critical Current

Links

Images

Abstract

【課題】アドレス解決のためのデータ転送によるネットワーク伝送効率の低下を回避可能で、かつ安全性の確保/既存のネットワーク設備との混在が可能な方法を提供する。【解決手段】サーバ装置が、アドレス解決に関する告知情報を、ネットワーク上の複数の端末に通知し、告知情報を受理した端末は、サーバ装置との間のセキュアな通信で、IP(Internet Protocol)アドレスとMAC(Media Access Control)アドレスの対応を格納したテーブルの転送要求をサーバ装置に送信し、サーバ装置は、端末からテーブルの転送要求を受信すると、サーバ装置で保持するネットワークに接続する複数のノードのIPアドレスとMACアドレスの対応を含むテーブルを、セキュアな通信で端末に送信し、端末は、サーバ装置から受信したテーブルを記憶部に記憶し、記憶部に記憶されたテーブルを用いて、端末の通信の宛先のアドレス解決を行う。【選択図】図1

Description

本発明は、アドレス解決制御方法、ネットワークシステム、サーバ装置、端末及びプログラムに関する。
イーサネット(Ethernet:登録商標)を用いたLAN(Local Area Network)では、OSI(Open Systems Interconnection)参照モデルのレイヤ2(データリンク層)のフレーム転送を行うレイヤ2スイッチ(L2スイッチ)を接続してネットワークが構築される。LAN内のネットワークは同一セグメントとされ、異なるセグメントのLANとは、例えばルータやレイヤ3(ネットワーク層)のスイッチを介して通信する。
イーサネットを用いたネットワークにおいて、IPv4(Internet Protocol version 4)では、データリンク層のアドレスの解決には、ARP(Address Resolution Protocol)が用いられる。ホスト(端末)は、通信相手のIP(Internet Protocol)アドレスに対応するMAC(Media Access Control)アドレスを取得するため、ARP要求パケットをイーサネットフレーム(「MACフレーム」ともいう)でカプセル化したフレーム(ARP要求フレーム)をブロードキャスト送信する。すなわち、ホスト(端末)のOS(Operating System)で管理するARPテーブル(ネットワークノードのIPアドレスとMACアドレスとを関連付けて保持するテーブル)に、通信相手のノードのIPアドレスに対応するMACアドレスが登録されていない場合、OSは、ARP要求をNIC(Network Interface Card)ドライバ(イーサネットインタフェースカード等のNICのソフトウェアドライバ)に発行する。NICドライバでは、ARP要求パケットを、イーサネットフレームにカプセル化してLAN内(ARP要求発信元と同一のセグメント内のすべてのノード)にブロードキャストする。
図10(A)は、ARPフレーム(ARPパケット)のフレームフォーマット(パケットフォーマット)を例示する図である。図10(B)は、図10(A)のARPパケットの各フィールドの説明である。ARP要求フレームのフレームヘッダの宛先MACアドレス欄(6オクテット)は全て1(0xFF-FF-FF-FF-FF-FF:0xは16進数(hexadecimal)を表す)である。フレームヘッダの送信元MACアドレス欄はARP要求フレーム送信元のMACアドレスである。なお、MACアドレスはNICの固有のID(16進数で12桁(12hexadecimal−digits))である。ARP応答フレームのフレームヘッダの宛先MACアドレス欄はARP要求フレーム送信元のMACアドレスであり、送信元MACアドレス欄は、ARP応答フレームの送信元のMACアドレスである。
タイプは、ARPのとき0x0806である。オペレーション(Operation)は、当該パケットがARP要求またはARP応答を識別するための情報が入る(ARP要求の場合、0x0001、ARP応答の場合、0x0002)。送信元MACアドレス(Source MAC Address)は送信元のMACアドレス情報(フレームヘッダの送信元MACアドレス)である。送信元IPアドレス(Source IP Address)は送信元のIPアドレス情報である。ターゲットMACアドレス(Target MAC Address)は、通信相手のMACアドレス情報である(ARP要求の場合はox00-00-00-00-00-00)。ターゲットIPアドレス(Target IP Address)は、通信相手のIPアドレスである。
ARP要求パケットのターゲットIPアドレス情報が、自ノードのIPアドレスであった場合、ARP要求フレームを受信したノードは、自ノードのMACアドレスをターゲットMACアドレス欄に格納したARP応答フレームを、ARP要求フレームの送信元にユニキャストで返信する。ARP要求フレームを送信したホスト(端末)のOSは、受信したARP応答に設定されたターゲットMACアドレスをターゲットIPアドレスと関連付けてARPテーブル(「ARPキャッシュ」ともいう)に格納し、一定時間記憶保持する。ARP要求フレームは同一セグメント(ブロードキャストドメイン)内にブロードキャストされるが、異なるネットワークセグメント間のARPは、例えばデフォルトゲートウェイ(ルータ)を介して行われる。なお、ARPについては、例えばIETF(Internet Engineering Task Force)のRFC(Request For Comments)826が参照される。
ARP要求フレームがブロードキャストされると、ARP要求フレームを入力ポートから受信したL2スイッチでは、ARP要求フレームを該入力ポート以外の全てのポートから送信する。この結果、レイヤ2ネットワーク内でARP要求フレームが溢れ、当該ネットワークの帯域を圧迫する場合が生じる。さらに、ブロードキャストされたARP要求フレームがL2スイッチ間でループ状に転送されると、転送が無限に繰り返され、その結果、ブロードキャストされるARP要求フレームがネットワークの帯域幅を使い切ってしまうというブロードキャストストームも発生し得る。
上記問題に対して、特許文献1には、ネットワークノードのIPアドレスとMACアドレスとを対応付けた情報の一覧を事前に取得して記憶部に記憶する第1の手段と、IPアドレスに対応するMACアドレスを解決するためのARP要求を受信すると、前記記憶部を参照し、ARP要求で指定されたIPアドレスに対応するMACアドレスが記憶されている場合には、前記記憶部に記憶されているMACアドレスを含む応答を、前記ARP要求の送信元へ送信する第2の手段を備えた通信装置(CPE(Customer Premises Equipment:顧客構内機器、あるいは加入者構内設備))が開示されている。ルータ配下のノードのIPアドレス情報を該ルータから取得したCPEがIPアドレスとMACアドレスの対応情報を保持しておき、当該CPEがARP要求フレームを受信すると、要求されたIPアドレスが保持されている場合、ARP応答フレームを返す。CPEは該ARP要求フレームを、CPEとルータを接続するレイヤ2ネットワークにはブロードキャストしない。この結果、該レイヤ2ネットワークでは、ブロードキャストされたARP要求フレームが溢れてネットワークの帯域を圧迫することは回避される。特許文献1では、ルータを介して接続するネットワークにARP要求があった場合に、CPEがホストに代わって代理で回答するものである。
特開2015−228606号公報
関連技術の分析を与える。
ARPは、上記したように、ネットワークの帯域を圧迫する等の問題がある。特許文献1等のように、ARPの回答を代理する装置や専用追加回路を付加したL2スイッチ等のノードにARPテーブルを備え、ブロードキャストされたARP要求フレームを受信した場合、該ARP要求フレームのブロードキャストを止め、ARP応答フレームを代理で送信元に返す手法の場合、ネットワークセグメント内にブロードキャストされるARP要求フレーム数が削減され、その分、当該ネットワークでのARPトラフィックの帯域使用量が削減可能となる。しかし、特許文献1等の構成では、ARPの回答を代理で行う専用の通信装置(CPE、ルータ、スイッチ、あるいは回線終端装置等)の導入が必要とされる。
また、不正アクセスやDoS(Denial of Service Attack:サービス拒否攻撃)やDDoS(Distributed Denial of Service Attacks:分散サービス拒否攻撃)等の攻撃を行うことを目的とした端末(もしくは故障や操作ミス、ソフトウェアのバグ等の不具合)がARP要求フレーム等を不必要に大量発生させた場合、ブロードキャストドメイン全体に影響が及ぶ。特許文献1では、ネットワークの機密性、安全性を高める認証機能等が具備されていない。
イーサネットにおいて、MTU(Maximum Transmission Unit:1フレームで伝送可能なデータ量)は最小46バイト、最大1500バイトである(ヘッダ14バイトとFCS(Frame Check Sequence)4バイトを加えると、64、1518バイト)。図10(A)に例示したように、ARPパケットのサイズは28バイトであり、ARPフレーム(イーサネットフレーム)のデータ部は、MTUサイズまで0で穴埋め(パディング)されて伝送される。伝送速度1Gbps(Giga bit per second)、10Gbps、25Gbps、100Gbp、400Gbpsといった最近のイーサネットインタフェース等において、ARPパケット等の短パケットの伝送は、ネットワークの伝送効率を低下させる。MTUサイズが小さいと、必要なデータの転送に必要なフレーム数が増加し、MTUサイズを大きくすると、ARPパケット等の短サイズを伝送する場合、パディング長さが増大し、ネットワークの帯域の最適化に寄与しない。
一方、新規のARPプロトコルを導入する場合、既存ネットワーク設備や端末等のネットワークノードの全て入れ替えることが必要な方式は、非経済的であり、実現は難しい。
本発明は、上記課題に鑑みて創案されたものであって、その目的は、アドレス解決のためのデータ転送によるネットワーク伝送効率の低下を回避可能とし、安全性の確保、既存のネットワーク設備との混在を可能とするネットワークシステム、サーバ装置、端末、アドレス解決制御方法、及び、プログラムを提供することにある。
本発明の1つの側面によれば、ネットワークシステムは、複数の端末と、前記複数の端末が接続するネットワークに接続されるサーバ装置と、を備えている。
前記サーバ装置は、アドレス解決に関する告知情報を前記複数の端末に通知する手段を備えている。
前記複数の端末の少なくとも一つの端末は、前記サーバ装置から前記告知情報を受理した上で、前記端末と前記サーバ装置との間のセキュアな通信で、IPアドレスとMACアドレスの対応を格納したテーブルの転送要求を前記サーバ装置に送信する手段を備えている。
前記サーバ装置は、前記端末から前記テーブルの転送要求を受信すると、前記サーバ装置で保持する、前記ネットワークに接続するノードのIPアドレスとMACアドレスの対応を含むテーブルを、前記セキュアな通信で、前記端末に送信する手段を備えている。
前記端末は、前記サーバ装置から受信した前記テーブルを記憶する記憶部を備え、前記記憶部に記憶された前記テーブルを用いて、前記端末の通信の宛先のアドレス解決を行う。
本発明の別の側面の1つによれば、サーバ装置は、ネットワークに接続するノードのIP(Internet Protocol)アドレスとMAC(Media Access Control)アドレスの対応を含むテーブルを記憶する記憶部と、アドレス解決に関する告知情報を、前記ネットワークに接続する複数の端末に通知する手段と、前記告知情報を受理した前記端末から、IPアドレスとMACアドレスの対応を含むテーブルの転送要求を、前記端末との間のセキュアな通信で、受信する手段と、前記記憶部に保持される前記テーブルを、前記セキュアな通信で、前記端末に送信する手段と、前記転送要求を送信した前記端末のIPアドレスとMACアドレスの組で前記記憶部に保持される前記テーブルを更新する手段と、を備えている。
本発明の別の側面の1つによれば、端末は、ネットワークに接続するノードのIPアドレスとMACアドレスの対応を含むテーブルを記憶するサーバ装置から通知されるアドレス解決に関する告知情報を受信する手段と、前記サーバ装置との間でセキュアな通信にて、IPアドレスとMACアドレスの対応を格納したテーブルの転送要求を前記サーバ装置に送信する手段と、前記サーバ装置から、前記セキュアな通信で、前記ネットワークに接続するノードのIPアドレスとMACアドレスの対応を含むテーブルを受信し記憶部に記憶する手段と、を備え、前記記憶部に記憶された前記テーブルを用いて、前記端末の通信の宛先のアドレス解決を行う。
本発明の別の側面の1つによれば、アドレス解決制御方法は、サーバ装置が、アドレス解決に関する告知情報を、ネットワークに接続する複数の端末に通知し、
前記告知情報を受理した前記端末は、前記端末と前記サーバ装置との間のセキュアな通信で、IPアドレスとMACアドレスの対応を格納したテーブルの転送要求を前記サーバ装置に送信し、
前記サーバ装置は、前記端末から前記テーブルの転送要求を受信すると、前記サーバ装置で保持する、前記ネットワークに接続する複数のノードのIPアドレスとMACアドレスの対応を含むテーブルを、前記セキュアな通信で、前記端末に送信し、
前記端末は、前記サーバ装置から受信した前記テーブルを記憶部に記憶し、
前記端末は、前記記憶部に記憶された前記テーブルを用いて、前記端末の通信の宛先のアドレス解決を行う。
本発明のさらに別の側面の1つによれば、サーバによるアドレス解決のための制御方法は、ネットワークに接続するノードのIPアドレスとMACアドレスの対応を含むテーブルを記憶部に記憶しておき、
アドレス解決に関する告知情報を複数の端末に通知し、
前記複数の端末のうち前記告知情報を受理した前記端末から、前記端末との間でのセキュアな通信で、IPアドレスとMACアドレスの対応を含むテーブルの転送要求を受信し、
前記記憶部に記憶される前記テーブルを、セキュアな通信で、前記端末に送信し、
前記転送要求を送信した前記端末のIPアドレスとMACアドレスの組で、前記記憶部に記憶される前記テーブルを更新する。
本発明のさらに別の側面の1つによれば、端末によるアドレス解決のための制御方法は、ネットワークに接続するノードのIPアドレスとMACアドレスの対応を含むテーブルを記憶するサーバ装置から通知されるアドレス解決に関する告知情報を受信し、
IPアドレスとMACアドレスの対応を格納したテーブルの転送要求を、前記サーバ装置との間のセキュアな通信で、前記サーバ装置に送信し、
前記サーバ装置から送信された前記テーブルを、前記セキュアな通信で受信して記憶部に記憶し、
前記記憶部に記憶された前記テーブルを参照して、前記端末の通信の宛先のアドレス解決を行う。
本発明の別の側面の1つによれば、ネットワークに接続するノードのIP(Internet Protocol)アドレスとMAC(Media Access Control)アドレスの対応を含むテーブルを記憶部に記憶する処理と、
アドレス解決に関する告知情報を複数の端末に通知する処理と、
前記複数の端末のうち前記告知情報を受理した前記端末から、前記端末との間でのセキュアな通信で、IPアドレスとMACアドレスの対応を含むテーブルの転送要求を受信する処理と、
前記記憶部に記憶される前記テーブルを、前記セキュアな通信で、前記端末に送信する処理と、
前記転送要求を送信した前記端末のIPアドレスとMACアドレスの組で、前記記憶部に記憶される前記テーブルを更新する処理と、
をコンピュータに実行させるプログラムが提供される。
本発明のさらに別の側面の1つによれば、ネットワークに接続するノードのIP(Internet Protocol)アドレスとMAC(Media Access Control)アドレスの対応を含むテーブルを記憶するサーバ装置から通知されるアドレス解決に関する告知情報を受信する処理と、
IPアドレスとMACアドレスの対応を格納したテーブルの転送要求を、前記サーバ装置との間のセキュアな通信で、前記サーバ装置に送信する処理と、
前記サーバ装置から送信された前記テーブルを、前記セキュアな通信で受信して記憶部に記憶する処理と、
前記記憶部に記憶された前記テーブルを参照して、前記端末の通信の宛先のアドレス解決を行う処理と、
を端末のプロセッサに実行させるプログラム提供される。
本発明によれば、上記した各側面のプログラムを記憶したコンピュータ読み出し可能な記録媒体((例えばRAM(Random Access Memory)、ROM(Read Only Memory)、又は、EEPROM(Electrically Erasable and Programmable ROM))等の半導体ストレージ、HDD(Hard Disk Drive)、CD(Compact Disc)、DVD(Digital Versatile Disc)等のnon-transitory computer readable recording medium)が提供される。
本発明によれば、アドレス解決のためのデータ転送によるネットワーク伝送効率の低下を回避可能とし、安全性の確保、さらに既存のネットワーク設備との混在を可能としている。
本発明の例示的な実施形態のネットワークを説明する図である。 本発明の例示的な実施形態のネットワークを説明する図である。 本発明の例示的な実施形態の端末とARPサーバの機能構成例を説明する図である。 本発明の例示的な実施形態のシーケンス動作を説明する図である。 本発明の例示的な実施形態のシーケンス動作を説明する図である。 (A)は、本発明の例示的な実施形態のネットワーク、(B)はIPアドレス−MACアドレステーブルの一例を説明する図である。 本発明の例示的な実施形態のシーケンス動作を説明する図である。 本発明の例示的な実施形態のシーケンス動作を説明する図である。 本発明の例示的な実施形態においてコンピュータ実装例を説明する図である。 (A)はARPフレームのフォーマット、(B)ARPパケットの各フィールドを説明する図である。
本発明の例示的な実施形態について説明する。図1は、本発明の基本的な形態を説明する図である。ARPサーバ20が、アドレス解決に関する告知情報(ARPサーバ告知情報)を、ネットワークに接続する複数の端末(10−1〜10−n:nは2以上の整数)に通知する(S11)。ARPサーバ20は、ARPサーバ告知情報(パケット)を複数の端末(10−1〜10−n)にマルチキャストで送信してもよい。
端末10−1(10−2〜10−n)は、ARPサーバ20から通知されたARPサーバ告知情報を受け取ると、IPアドレスとMACアドレスの対応を格納したテーブルの転送要求をARPサーバ20に送信する(S12)。その際、端末10−1(10−2〜10−n)は、ARPサーバ20との間でセキュアな通信を確立した上で該テーブルの転送要求をARPサーバ20に送信するようにしてもよい。
ARPサーバ20は、端末10−1(10−2〜10−n)から前記テーブルの転送要求を受信すると、ARPサーバ20で保持する前記ネットワークに接続する端末のIPアドレスとMACアドレスの対応を備えたテーブルを前記端末10−1(10−2〜10−n)に送信する(S13)。その際、ARPサーバ20は、IPアドレスとMACアドレスの対応を備えたテーブルを、好ましくは、一括で、前記端末10−1(10−2〜10−n)に送信する。
端末10−1(10−2〜10−n)は、ARPサーバ20から受信した前記テーブルを記憶部に記憶する(S14)。
端末10−1(10−2〜10−n)では、通信の宛先のIPアドレスに対応するMACアドレスが必要な場合、ARP要求をネットワークにブロードキャストせず、端末10−1(10−2〜10−n)で保持する前記テーブルを参照して、該通信の宛先のIPアドレスに対応するMACアドレスを取得する(S15)。以下、具体的な実施形態に即して説明する。
図2は、本発明の例示的な実施形態のネットワークシステムを説明する図である。図2を参照すると、第1の端末10−1(端末1)、・・・、第nの端末10−n(端末n)(nは2以上の整数)と、ARPサーバ20と、イーサネット等のレイヤ2ネットワーク1を構成する複数のL2スイッチ(L2 SW)30−1〜30−4を備えている。L2スイッチ30−3、30−4はエッジスイッチを構成してもよい。特に制限されないが、各端末は仮想化機構を備えた情報通信装置(例えばPC(Personal Computer)等)であってもよい。図2において、レイヤ2ネットワーク1のトポロジ―は、L2スイッチ(L2 SW)30をカスケード接続した構成とされているが、ネットワークのトポロジーはかかる構成の制限されるものでないことは勿論である。L2スイッチ30の数は上記に制限されるものでないことは勿論である。なお、端末、L2スイッチ等の説明(参照)において、枝番による特定が不要の場合、枝番を付加せず、例えば端末10、L2スイッチ30と記載する。
図2に模式的に例示するように、端末10は、イーサネットインタフェースカード等のNIC(Network Interface Card)と、NICドライバを有する。また、端末10は、例えばハイパーバイザ等の仮想化機構を備え、ハイパーバイザ上に仮想マシン(Virtual Machine:VM)を備える。仮想マシン(VM)は、OS(Operating System)(「ゲストOS」ともいう)と、該OS上で稼働するアプリケーションを有する。アプリケーションプロトコルのためのソフトウェア(例えばHTTP(Hyper Text Transport Protocol)など)は仮想マシン(VM)上のアプリケーションに実装される。なお、端末10において、仮想マシン(VM)を複数備えてもよいことは勿論である。また1つの仮想マシン(VM)上に複数のアプリケーションを稼働するようにしてもよいことは勿論である。仮想マシン上のOSはWindows(登録商標)、Linux(登録商標)等任意である。
端末10において、レイヤ2(データリンク層)の機能であるネットワーク管理機能やカプセル化機能等のソフトウェアモジュールをNICドライバに組み込む構成としてもよい。レイヤ3(ネットワーク層)(IP、ARP等)やレイヤ4(トランスポート層)(TCP(Transmission Control Protocol)/UDP(User Datagram Protocol))のソフトウェアモジュールを、仮想マシン(VM)上のOSに組み込む構成としてもよい。
ARPサーバ20は、予め定められた所定時間間隔(例えば1秒間隔)で、マルチキャストパケット(「ARPサーバ告知パケット」という)を出力する。ARPサーバ20において、ARPサーバ告知パケットは、イーサネットフレームにカプセル化されてマルチキャストされる。マルチキャスト送信では、ネットワークで特定の複数のノード(マルチキャストグループ)に対して1つのパケットを送信する。マルチキャスト用のIPアドレス(224.0.0.0 〜239.255.255.255)が用意されており、マルチキャストのフレームヘッダの宛先MACアドレス欄は、先頭の25ビットが"00000001 00000000 01011110 0"、残りの23ビットはマルチキャストIPアドレスの下位23ビットを使用する(0x01-00-5E-00-00-00〜0x01-00-5E-7F-FF-FF)。
ARPサーバ20は、ARPサーバ告知パケットを複数の端末10のマルチキャスト送信することで、本実施形態のARP方式(「新ARP方式」という)が提供可であることを、複数の端末10に通知する。
本実施形態では、マルチキャスト送信されたARPサーバ告知パケットを受信した端末10が、新ARP方式に対応した端末である場合、ARPサーバ告知パケットの告知情報(新ARP方式を提供すること)を受け付け、端末10がARP要求フレームをブロードキャスト送信する代わりに、ARPサーバ20に対して、IPアドレスとMACアドレスの対応を格納したテーブルの転送要求をユニキャストで送信する。
端末10は、ARPサーバ告知パケットの受信により、端末10が接続するレイヤ2ネットワーク1では、新ARP方式が提供されることを認識する。なお、端末10では、図10を参照して説明したIETF RFC826準拠(通常)のARP(「通常ARP」という)を使うか、新ARP方式を使うかを選択自在に構成してもよい。新ARP方式に対応する端末10では、ARPサーバ20からのARPサーバ告知パケットを受理するが、通常ARP方式の端末では、ARPサーバ20からのマルチキャストされるARPサーバ告知パケットを無視してよい(受理しない)。
端末10では、仮想マシン(VM)上のOSからARP要求を受けると、ARPサーバ20に対して、IPアドレス−MACアドレステーブル転送要求を送出する。すなわち、仮想マシン(VM)上のOSは、仮想マシン(VM)上で動作するアプリケーション(例えばHT TP等)からの宛先への通信要求に対して、宛先のIPアドレスに対応する宛先(ターゲット)MACアドレスが不明である場合、ARP要求をNICドライバに出力する。NICドライバは、フレームヘッダの宛先MACアドレス欄を、ARPサーバ20のMACアドレスに設定したIPアドレス−MACアドレステーブル転送要求フレームをユニキャストで送信する。この場合、端末10のNICドライバは、図10(A)のイーサネットフレームのデータ部に「IPアドレス−MACアドレステーブル転送要求」に対応するコマンドやコードを設定するようにしてもよい。IPアドレス−MACアドレステーブル転送要求は、ARP要求とは相違しており、図10(A)のARPパケットのターゲットIPアドレス、ターゲットMACアドレス等の情報項目は不要である。
なお、ARPサーバ20と端末10の間は、レイヤ3のIPsecやSSL(Secure Sockets Layer)/TLS(Transport Layer Security)を用いてセキュアな通信を確立した上で、IPアドレス−MACアドレステーブル転送要求を送信するようにしてもよい。IPsecはレイヤ3を保護し(TCP/UDPヘッダ、ペイロードを暗号化)、TLSはレイヤ4を保護する(TCP/UDPペイロードを暗号化)。IPsecにおいて、送信ホストと受信ホストとの間の全経路上でメッセージが暗号化されるトランスポートモード(IPヘッダは暗号化しない)で通信するようにしてもよい。IPsec通信では、まず、IKE(Internet Key Exchange)でデータ通信を開始する前にIPsec通信を行う機器同士で利用する暗号化アルゴリズムや鍵の交換などの準備を行い、次に、実際のデータ通信を行うための論理コネクションSA(Security Association)を確立し、認証ヘッダAH(Authentication Header)やESP(Encapsulating Security Payload)を用いてメッセージ認証や暗号化を行い、端末10とARPサーバ20との間のデータ通信が行われる。
あるいは、認証サーバで接続を認めた端末以外がネットワークに参加しないように認証によって接続を規制するユーザ認証規格であるIEEE(The Institute of Electrical and Electronics Engineers, Inc.)802.1X等を実装してもよい。例えばIEEE802.1Xでは、該IEEE802.1Xに対応したL2スイッチ(認証スイッチ)に端末が接続された時点で認証動作を行い、端末にネットワーク(LAN)への接続を許可するかどうかを決める。認証プロトコルとして、端末は、EAP(Extensible Authentication Protocol)メッセージを認証スイッチ(L2スイッチ)を経由して認証サーバとの間で交換して認証を受ける。端末(サプリカント)のレイヤ2のフレームは認証スイッチによってRADIUSフレームに変換されて認証サーバへ送られる。認証サーバから返信されるRADIUSフレームは認証スイッチによってレイヤ2のフレームに変換されて端末(サプリカント)へ送られる。認証が完了すると、端末(サプリカント)は、ネットワークに自由に接続でき、例えばARPサーバ20との間の通信が可能となる。あるいは、IPアドレス−MACアドレステーブル転送要求等には、イーサネット等レイヤ2のフレームのデータ部を暗号化するMACsec (Media Access Control Security:IEEE802.1AE)等を用いてもよい。MACsecはレイヤ2(データリンク層)で動作し、LANにおける全てのトラフィックをGCM(Galois/Counter Mode)-AES(Advanced Encryption Standard)-128アルゴリズムで認証し、ARP、ND (Neighbor Discovery)等の保護が適用される。
端末10とARPサーバ20間で安全(secure)な通信を確保することで、例えば正規の端末からのARP要求に対して、攻撃者が不正なARP応答をブロードキャストすることで、LAN上の通信機器になりすますARPスプーフィング攻撃等に対しても耐性を有する。
端末10において、仮想マシン(VM)上のOSからARP要求を受けたNICドライバは、ARPサーバ20との間で安全な通信を確保してIPアドレス−MACアドレステーブル転送要求をARPサーバ20にユニキャストで送信し、ARPサーバ20からIPアドレス−MACアドレス対応テーブルを取得する。そして、取得したIPアドレス−MACアドレス対応テーブルに、当該ARP要求で指定されたIPアドレスに対応するMACアドレスの組が登録されている場合、該MACアドレスを設定したARP応答を、仮想マシン(VM)上のOSに返す。これにより、不要なARPフレームがネットワーク上に流れることはない。
端末10の記憶部(キャッシュ)に保持しているIPアドレス−MACアドレステーブル上にIPアドレスが登録されていない場合、端末10のNICドライバは、ARPサーバに、再度、IPアドレス−MACアドレステーブル転送要求を送信するようにしてもよい。
図3は、本実施形態の端末10とARPサーバ20の機能構成を説明する図である。図3を参照すると、端末10は、ARPサーバ告知パケット受信部101と、IPアドレス−MACアドレステーブル転送要求送信部102と、IPアドレス−MACアドレステーブル受信部103と、ARP応答作成部104と、記憶部105を備えている。
ARPサーバ告知パケット受信部101は、ARPサーバ20からマルチキャストで報知されるARPサーバ告知パケット(フレーム)を受信する。IPアドレス−MACアドレステーブル転送要求送信部102は、IPアドレス−MACアドレステーブル転送要求をARPサーバ20に送信する。IPアドレス−MACアドレステーブル受信部103は、ARPサーバ20から送信されるIPアドレス−MACアドレステーブルを受信し記憶部105に記憶する。ARP応答作成部104は、端末10の仮想マシン(VM)上のOSから発行されたARP要求を受けると、記憶部105のIPアドレス−MACアドレステーブルを検索し、ARP要求のターゲットIPアドレスに対応するターゲットMACアドレスを検索し、ターゲットMACアドレスを設定したARP応答をARP要求発行元の仮想マシン(VM)上のOSに返す。各部101−104をそれぞれソフトウェアモジュールで構成し、図2の端末10のNICドライバに実装するようにしてもよい。なお、IPsec等のレイヤ3やより上位のレイヤのプロトコル処理を、図2の仮想マシン(VM)上のOSやアプリケーションに実装し、NICドライバのレイヤ2の処理と連携させる構成としてもよい。
ARPサーバ20は、ARPサーバ告知パケットをマルチキャストで送信するARPサーバ告知パケット送信部201と、端末10から送信されたIPアドレス−MACアドレステーブル転送要求を受信するIPアドレス−MACアドレステーブル転送要求受信部202と、IPアドレス−MACアドレステーブル転送要求を送信した端末10に、IPアドレス−MACアドレステーブルを送信するIPアドレス−MACアドレステーブル送信部203と、必要に応じて、記憶部205に保持されているIPアドレス−MACアドレステーブルを、今回IPアドレス−MACアドレステーブル転送要求を送信した端末10のIPアドレスとMACアドレスの組で更新するIPアドレス−MACアドレステーブル更新部204を備えている。IPアドレス−MACアドレステーブル更新部204では、記憶部105に保持されているIPアドレス−MACアドレステーブルに、今回IPアドレス−MACアドレステーブル転送要求を送信した端末10のIPアドレスとMACアドレスの組と同一のエントリが登録されている場合、IPアドレス−MACアドレステーブルの更新は行わなくてもよい(該エントリを、回IPアドレス−MACアドレステーブル転送要求を送信した端末10のIPアドレスとMACアドレスで上書きしてもよい)。なお、ARPサーバ20は、新ARP方式に準拠しない通常のARP方式の端末からブロードキャストされたARP要求フレームを受信すると、ターゲットIPアドレスに対応するターゲットMACアドレスを取得してARP応答を作成し、ARP要求送信元の端末に送信するARP要求受信・ARP応答送信部206を備えた構成としてもよい。
図4は、本発明の例示的な実施形態の動作の一例を説明する図である。図4を参照すると、ARPサーバ20は、イーサネットフレームヘッダでカプセル化されたARPサーバ告知パケットを所定時間間隔(例えば1秒間隔)でマルチキャスト送信する(S101)。ARPサーバ20において、マルチキャスト用のIPアドレスは例えばアプリケーションで指定され、フレームヘッダの宛先MACアドレス欄には前述したマルチキャスト用のMACアドレスが設定される。
第1の端末10−1(端末1)は、ARPサーバ告知パケットを受信すると、ARPサーバ20が新ARP方式を提供することを認識する(S102)。第2の端末10−2(端末2)〜第nの端末10−n(端末n)も同様である。図4について、以下の説明では、第1の端末10−1を単に「端末10」で参照する。
端末10は、IPsecやSSL/TSL等でARPサーバ20との間で安全な通信を確立し(例えばIPsecにおけるデータ通信用の論理コネクションSA(Security Association)を確立)、IPアドレス−MACアドレステーブル転送要求をARPサーバ20に送信する(S103)。
ARPサーバ20は、IPアドレス−MACアドレステーブル転送要求を受信すると、ネットワーク(LAN)内のホストである端末やルータ等のIPアドレスとMACアドレスの対応を格納したIPアドレス−MACアドレステーブルを一括で端末10に送信する(S104)。なお、ARPサーバ20は、IPアドレス−MACアドレステーブルの全部を一括(ひとまとまり)で送信する代わりに、該テーブルの一部を端末10に送信するようにしてもよい。
端末10は、IPアドレス−MACアドレステーブルを受信する(S105)。端末10は、受信したIPアドレス−MACアドレステーブルを記憶部105(図3)に記憶する(S106)。
ARPサーバ20は、端末10のIPアドレスとMACアドレスでIPアドレス−MACアドレステーブルを更新する(S107)。なお、ステップS107では、ARPサーバ20は、ステップS104で受信したIPアドレス−MACアドレステーブル転送要求のフレームヘッダの送信元MACアドレス、IPsec等で暗号化されたTCPヘッダを復号して得た送信元IPアドレスから、端末10のIPアドレスとMACアドレスを取得してもよい。ステップS107はステップS104と同一のステップで実行するようにしてもよい。
図5は、本発明の例示的な実施形態を説明する図である。図5において、第1、第2の端末10−1、10−2(端末1、2)は、新ARP方式を使用する端末であり、第nの端末10’(端末n)は、通常のARP方式の端末である。ステップS201−S205は、図4のステップS101−S105と同一であるため、説明は省略する。
ステップS202Aでは、第nの端末10’は、ARPサーバ20からマルチキャストされるARPサーバ告知パケットを受信しても、これを無視する(S202A)。
第nの端末10’は、通信相手のIPアドレスに対応するMACアドレスを取得するため、ARP要求フレームをブロードキャストする(S207)。第nの端末10’が、例えば第1の端末10−1のIPアドレスに対応するMACアドレスを取得する場合、ARP要求のターゲットIPアドレスとターゲットMACアドレスは、第1の端末10−1のIPアドレスとMACアドレスである。
新ARP方式の第1、第2の端末10−1、10−2では、第nの端末10’からブロードキャストされたARP要求フレームを受信しても、これを無視する(S209)。すなわち、第1、第2の端末10−1、10−2は、ARP要求フレームのターゲットIPアドレスが自端末のIPアドレスと一致するかを判別する照合は行わない(したがってARP応答フレームも送信しない)。通常のARP方式にのみ対応した第nの端末10’の接続を許可しない場合、ARPサーバ20は端末nからブロードキャストされたARP要求に対してARP応答を返送しない。このため、通常のARP対応の端末nは、新ARP方式対応の第1、第2の端末10−1、10−2とは通信できない。なお、図5のステップS202Aの変形例として、第nの端末10’をマルチキャストグループから外す構成としてもよい(この場合、ARPサーバ告知パケットは第nの端末10’に送信されない)。
通常のARP方式にのみ対応した第nの端末10’の接続を許可する場合、ARPサーバ20のARP要求受信・ARP応答送信部206(図3参照)では、第nの端末10’からブロードキャストされたARP要求フレームを受信すると、第nの端末10’のIPアドレスとMACアドレスの対応を記録する(S208)。そして、ARPサーバ20のARP要求受信・ARP応答送信部206は、記憶部205のIPアドレス−MACアドレステーブルを検索して、ターゲットIPアドレスに対応するターゲットMACアドレスを取得し、ARP応答を、第nの端末10’にユニキャストで送信する(S210)。
第nの端末10’では、ARP応答を受信し、第1の端末10−1のMACアドレスを取得する(S211)。なお、ARPサーバ20では、第nの端末10’に対してARP応答を送信する/しないを選択自在に構成してもよい。
ARPサーバ20では、新ARP方式の端末のIPアドレスとMACアドレスの対応を、通常のARP方式(新ARP方式に対応していない)の端末のIPアドレスとMACアドレスの対応を保持するARPテーブルと区別して記憶部205に記憶するようにしてもよいし、IPアドレスとMACアドレスの各エントリに、当該エントリは、新ARP方式であるか、通常のARPであるかを示す識別情報を付加するようにしてもよい。
図6(A)は、本実施形態のネットワークシステムの一例を説明する図である。図6(A)の例では、第1、第2の端末10−1、10−2は、新ARP方式対応の端末、第3の端末10−3は、通常のARP対応の端末である。図6(A)の例では、簡単のため、1台のL2スイッチ(L2 SW)30が図示されている。L2スイッチ30は、レイヤ2の情報であるMACアドレスに基づきフレームを宛先に転送するネットワーク機器であり、サーバやルータのようにIPアドレスを振る必要はない(ただし、外部からアクセスして設定確認や設定変更等の管理を行うために、IPアドレスがL2スイッチに割り振られる場合がある)。L2スイッチにおいて、NICはMACアドレスを持ち、またNICのポートごとにMACアドレスを持つ構成のものあるが、図6(A)では省略されている。また、ルータ40は、1台で複数のMACアドレスを有するものもあるが、図6(A)では1つのMACアドレスとされている。図6(A)の例では、ルータ40には、セグメント0(IPアドレス:192:168:0:xxx)のネットワーク(LAN)が接続されている。
図6(B)は、図6(A)のネットワーク構成において、ARPサーバ20で保持するIPアドレス−MACアドレステーブルを例示する図である。IPアドレス−MACアドレステーブルはファイルで一括に格納されるようにしてもよい。この場合、ARPサーバ20は、IPアドレス−MACアドレステーブル転送要求に対して、データサイズがMTUに収まる範囲であれば、該ファイルのデータを一括で転送要求元の端末10に送信するようにしてもよい。なお、各エントリの方式欄には、新ARP方式であるか、通常のARP方式であるかの識別情報が設定される。また、各エントリには、利用されないまま一定時間が経過すると自動で削除されるフラグや、永続的(Permanent)なエントリであることを示すフラグ、あるいは、公開エントリを示すフラグ等を設定するようにしてもよい。
図7は、本発明の例示的な実施形態を説明する図である。図7には、図2の仮想マシン上のOSとNICドライバのARP要求とARP応答のやりとりの一例が例示されている。図7においてステップS301−S305は、図4のS101−S105、図5のS201−S205と同じである。ステップS302Aでは、端末10の仮想マシン(VM)上のOSからARP要求がNICドライバに送信される。NICドライバでは、ARP要求を受けると、ステップS303において、ARPサーバ20との間で安全な通信を確立し、IPアドレス−MACアドレステーブル転送要求をARPサーバ20に送信する。
ARPサーバ20は、IPアドレス−MACアドレステーブル転送要求を受信すると、IPアドレス−MACアドレステーブルを端末10に送信する(S304)。
端末10のNICドライバは、IPアドレス−MACアドレステーブルを受信すると(S305)、IPアドレス−MACアドレステーブルをキャッシュし、ターゲットIPアドレスに対応するターゲットMACアドレスを検索し、ターゲットMACアドレスを取得する。そして、ARP応答を仮想マシン(VM)上のOSに送信する(S306)。仮想マシン(VM)上のOSは、ARP応答を受信する(S307)。端末10の仮想マシン(VM)上のOSは、ARP応答からターゲットMACアドレスを取得し、ターゲットIPアドレスと取得したターゲットMACアドレスの組で、仮想マシン(VM)上のOSで管理するARPテーブルを更新してもよい。端末10の仮想マシン(VM)上のOSからの通信宛先(ターゲットMACアドレス)へのIPパケットは、端末10のNICドライバでイーサネットフレームにカプセル化されて送信される(不図示)。
端末10において、別の通信相手のIPアドレスに対応するターゲットMACアドレスを取得するために、仮想マシン(VM)上のOSからARP要求がNICドライバに送信される(S308)。NICドライバでは、ARP要求を受けると、NICドライバの記憶部(図3の105)にキャッシュされているIPアドレス−MACアドレステーブルからターゲットIPアドレスに対応するターゲットMACアドレスを検索し、ターゲットMACアドレスを取得し、ARP応答を、仮想マシン(VM)上のOSに送信する(S309)。仮想マシン(VM)上のOSは、ARP応答を受信し(S310)、通信相手と通信を行う(不図示)。端末10の記憶部105(図3)において、IPアドレス−MACアドレステーブルは、エージングタイマのタイムアウトまで保持される。エージングタイマは、端末10がARPサーバ20からIPアドレス−MACアドレステーブルを受信し記憶部105に記憶した時点でタイマをスタートさせるようにしてもよい。
端末10において、エージングタイマのタイムアウトが発生すると(S311)、IPアドレス−MACアドレステーブルを消去する。なお、IPアドレス−MACアドレステーブルのエントリ数に応じて、エージングタイマの時間を設定するようにしてもよい(例えば、エントリ数が多いほど、エージングタイマの時間を長く設定してもよい)。なお、IPアドレス−MACアドレステーブルのエントリごとに、一定時間が経過すると自動で削除される削除フラグ、永続的であることを示すフラグ等を設定し、削除フラグが設定されているエントリのみを消去するようにしてもよい。
本実施形態において、ARPサーバ20は、レイヤ2ネットワーク1に接続された全ての端末を認識することができる。例えば、レイヤ2ネットワーク1に接続する端末のIPアドレス、MACアドレスを、ARPサーバ20に予め登録しておき、調査段階で、その時点におけるIPアドレス−MACアドレステーブルと差分を取ることで、予め登録されていないが、調査時点でIPアドレス−MACアドレステーブルに記憶されているIPアドレスとMACアドレスの組(接続が予定にない端末)を検出することが可能である。この場合、ログ監視等(例えばLinux(登録商標)等のsyslog監視等)の手法でアラートを検出し、システム管理者に通報を行うようにしてもよい。
端末10において、仮想マシン(VM)上のOSからの通常のARP要求に対して、NICドライバでは、IPアドレス−MACアドレステーブルを検索することで、ARP応答を返すことができる。このため、新ARP方式の端末10では、通常のARPと比べて、アドレス解決の処理を高速化している。また、ネットワーク上に、ARP要求フレームやARP応答フレームは送信されない。
図8は、本発明の例示的な実施形態を説明する図である。図8は、端末10のOS(端末10のハードウェア上で動作する実OS)に、本発明の実施形態のアドレス解決方式(新ARP方式)をインストールした場合の動作を説明する図である。図8の端末10”は、図6(A)の端末10−3の構成(OSとNICドライバとアプリケーション)において、OSとNICドライバに、新ARP方式を実装した構成とされる。なお、デバイスドライバには、OSの一部としてOSに組み込まれるものもあるが、この例では、OS(カーネル)とは独立してロード/アンロードされるローダブルモジュールとして構成されている。
図8において、ステップS401−S405は、端末10”のNICドライバの処理であり、図4のS101−S105と同じである(ただし、端末10”のNICドライバは、仮想マシン(VM)上のOSではなく、OSとやり取りする)。
ステップS406では、端末10”のOSは、該OSが保持するARPテーブルをARPサーバ20から受信したIPアドレス−MACアドレステーブルで上書きする。
端末10”のOS上でアプリケーションが起動される(S407)。特に制限されないが、図8の例では、端末10”のアプリケーションは通信相手と例えばソケット通信を行う。その際、端末10”のアプリケーションは、システムコールsocket()を使ってソケットを生成する(S408)。その引数には、ソケットの種別(該ソケットがTCP用/UDP用)が指定される。ソケットの生成が成功した場合、socket()の戻り値は生成したソケットの識別子となる。TCP通信では、端末10”のアプリケーションは、システムコールconnect()を使って生成したソケットと通信相手のソケットとの通信接続を行う(S409)。connect()の引数にはソケット識別子の他に、通信相手の端末のIPアドレスとポート番号などの情報を与える。端末10”のOSは、該OSが保持するARPテーブルを参照して、通信相手の端末のIPアドレスに対応するMACアドレスを取得する(S410)。端末10”のOSとNICドライバは、通信相手との間でコネクションを確立する(TCPでは、3ウェイハンドシェイクでTCPコネクションを確立する)。通信接続完了後(connect()の戻り値が0)、端末10”のアプリケーションは通信相手の端末と通信する。端末10”のアプリケーションは、システムコールsend()により通信相手の端末にデータを送信し、システムコールrecive()により通信相手の端末からデータを受信する(S411)。UDPではコネクションの確立手順はない。
通信が完了したら、端末10”のアプリケーションは、システムコールclose()を使ってソケットの接続を切断する(S412)。なお、端末10”のOSは、エージングタイマのタイムアウト発生(S413)でARPテーブルを消去する(S414)。
図9は、端末10のコンピュータ装置による実装を説明する図である。図9を参照すると、コンピュータ装置300は、プロセッサ301と、半導体メモリやHDD等を含むストレージ(メモリ)302と、表示装置303と、NIC304を備えている。図2のハイパーバイザ、NICドライバ、仮想マシン(VM)、仮想マシン上のOS(ゲストOS)アプリケーションの各ソフトウェアは、ストレージ302に記憶されたプログラム(命令群)を読み込んで命令群を実行することで、上記実施形態で説明した処理・機能が実現される。図8の端末10”についても同様である。また、ARPサーバ20も、図9に示したコンピュータ装置300で実現可能である。ARPサーバ20では、図9の表示装置303は、ARPサーバ20と通信接続する端末の表示装置であってもよい。
上記した実施形態によれば、例えば以下のような作用効果を奏する。
(A)ネットワーク帯域利用の高効率化を可能としている。
通常のレイヤ2パケット転送方法に比較して、ARP要求(ブロードキャストパケット)、ARP応答(ユニキャストパケット)を送信する端末の数を削減可能とし、ネットワーク上に流れるARP関連パケットが減り、データ通信に使えるネットワーク帯域を増大可能としている。また、ARPパケット(28バイト)は64バイト長に収まるため、パディングしてLAN上にパケットが流される。特に伝送速度Gbps(ギガビット/秒)のイーサネットの場合は、最小フレームサイズが512バイトであり、448バイトはパディングデータで埋められてネットワークに送信されることになり、ネットワーク伝送効率の向上に寄与しない。上記実施形態によれば、IPアドレス−MACアドレステーブルを、MTUに応じて送信することで、上記ARPパケット(28バイト)のパディングデータを不要としている。IPアドレス−MACアドレステーブルのデータサイズ(バイト数)がイーサネットフレームのMTUを上まわるときは、IPアドレス−MACアドレステーブルは分割されて、該テーブルの転送要求元の端末に送信される。
(B)LAN上において盗聴を目的とした端末の増設を回避可能としている。
端末10とARPサーバ20間の通信を確立する時に認証を行うことで、LANに第3者が盗聴するための装置を接続したとしても、LANに接続されたすべての端末のMACアドレスやIPアドレスを知ることは困難となる。L2スイッチがMACアドレステーブル(物理ポートとその先に存在するネットワーク機器のMACアドレスの対応表)のエージング機能(L2スイッチが持つMACアドレステーブル内のエントリを一定時間で消去する機能)をオンにしている場合は、ユニキャストパケットが未学習としてフラッディング(受信ポートを除く全ポートから受信フレームを送る)されるため、完全に抑えることはできないが、LANに接続された全ての端末のMACアドレスやIPアドレスを知るためには、長時間のパケットのサンプリングが必要とされる。
(C)DDoS攻撃等に強いLANを構築可能としている。
通常、LANは、ARP要求を大量に端末から送りつけられるDDoS攻撃に対して耐性はない。本実施形態によれば、LANに大量のARP要求を送り付けられたとしても、端末では、該ARP要求は無視され、ARP応答を返答する端末は存在しない。このため、DDoS攻撃に対応してARP応答が大量に発生することはない。すなわち、DDoS攻撃で通信が止まるほどの帯域負荷をかけることはできない。
ARPサーバ20に対するARP要求の集中的な送信に対して、例えばARPサーバ20のNICのQoS(Quality Of Service)帯域制限で緩和させることができる。ARPサーバ20でのQoSポリシーの設定においてポリシーを適用するアプリケーション、帯域制御する発信元と宛先IPアドレス、適用プロトコルと適用ポート等を指定するようにしてもよい(なお、ARP要求を大量に送信する攻撃に対しては、L2スイッチのストームコントロール機能(上限となる閾値よりトラフィックが多くなると、フレームを破棄したり、ポートを使えなくしたりすることで、DoS攻撃等により発生するトラフィックストームの影響を制限する機能)の閾値を低い値に設定することで、被疑対象の端末を排除することが可能となる。)
(D)既設LANに対して投資の抑制を可能としている。
ネットワークに機能を追加する場合、LANすべてを新機器で入れ替える必要が出てくる場合があるが、本実施形態によればARPサーバを追加し、端末のソフトウェアの更新で、本実施形態のシステムが実現可能である。また、通常のARP方式の端末との混在も可能であるため、段階的に設備を更新していくことが可能である。
上記実施形態では、IPv4のアドレス解決について説明したが、IPv6(Internet Protocol Version 6)では、ICMPv6(Internet Control Message Protocol for IPv6)を用いたND(Neighbor Discovery:近隣者発見)が用いられる(IETF RFC 4861)。IPv6アドレスを持つノードが、通信先のノードのMACアドレスを知るために、ICMPv6のNeighbor Solicitation(NS:近隣要請)メッセージをマルチキャストアドレス(要請ノードマルチキャストアドレス)宛に送信する。NSメッセージを受信したノードは、自分のIPv6アドレスのリクエストである場合、NA(Neighbor Advertisement:近隣広告)を送信してMACアドレスを通知する。NSメッセージはARP要求に対応し、NAメッセージは問い合わされたMACアドレスを応えるARP応答に対応している。上記実施形態は、IPv6のアドレス解決にも適用可能である。
なお、上記の特許文献1の各開示を、本書に引用をもって繰り込むものとする。本発明の全開示(請求の範囲を含む)の枠内において、さらにその基本的技術思想に基づいて、実施形態ないし実施例の変更・調整が可能である。また、本発明の請求の範囲の枠内において種々の開示要素(各請求項の各要素、各実施例の各要素、各図面の各要素等を含む)の多様な組み合わせ乃至選択が可能である。すなわち、本発明は、請求の範囲を含む全開示、技術的思想にしたがって当業者であればなし得るであろう各種変形、修正を含むことは勿論である。
1 ネットワーク(レイヤ2ネットワーク)
10、10’、10”、10−1、10−2、10−3、10−n 端末
20 ARPサーバ
30、30−1〜30−4 L2スイッチ(L2 SW)
101 ARPサーバ告知パケット受信部
102 IPアドレス−MACアドレステーブル転送要求送信部
103 IPアドレス−MACアドレステーブル受信部
104 ARP応答作成部
105 記憶部
201 ARPサーバ告知パケット送信部
202 IPアドレス−MACアドレステーブル転送要求受信部
203 IPアドレス−MACアドレステーブル送信部
204 IPアドレス−MACアドレステーブル更新部
205 記憶部
206 ARP要求受信・ARP応答送信部
300 コンピュータ装置
301 プロセッサ
302 ストレージ(メモリ)
303 表示装置
304 NIC

Claims (10)

  1. 複数の端末と、
    前記複数の端末が接続するネットワークに接続されるサーバ装置と、
    を備え、
    前記サーバ装置は、
    アドレス解決に関する告知情報を前記複数の端末に通知する手段を備え、
    前記複数の端末の少なくとも一つの端末は、
    前記サーバ装置から前記告知情報を受理した上で、
    前記端末と前記サーバ装置との間のセキュアな通信で、IP(Internet Protocol)アドレスとMAC(Media Access Control)アドレスの対応を格納したテーブルの転送要求を前記サーバ装置に送信する手段を備え、
    前記サーバ装置は、
    前記端末から前記テーブルの転送要求を受信すると、前記サーバ装置で保持する、前記ネットワークに接続するノードのIPアドレスとMACアドレスの対応を含むテーブルを、前記セキュアな通信で、前記端末に送信する手段を備え、
    前記端末は、
    前記サーバ装置から受信した前記テーブルを記憶する記憶部を備え、
    前記記憶部に記憶された前記テーブルを用いて、前記端末の通信の宛先のアドレス解決を行う、ことを特徴とするネットワークシステム。
  2. 前記端末は、
    前記端末のOS(Operating System)からアドレス解決要求を受けると、
    前記記憶部の前記テーブルを参照して、前記アドレス解決要求で指定された通信の宛先のIPアドレスに対応するMACアドレスを取得し、
    前記MACアドレスを設定したアドレス解決応答を、前記OSに返す応答生成手段を備えた、ことを特徴とする請求項1に記載のネットワークシステム。
  3. 前記端末において、
    前記OSは、前記端末上の仮想マシンで動作するOS、又は、前記端末のOSであり、
    前記ネットワークと通信するネットワークインタフェース装置のドライバが、前記応答生成手段を備えた、ことを特徴とする請求項2に記載のネットワークシステム。
  4. ネットワークに接続するノードのIP(Internet Protocol)アドレスとMAC(Media Access Control)アドレスの対応を含むテーブルを記憶する記憶部と、
    アドレス解決に関する告知情報を、前記ネットワークに接続する複数の端末に通知する手段と、
    前記告知情報を受理した前記端末から、IPアドレスとMACアドレスの対応を含むテーブルの転送要求を、前記端末との間のセキュアな通信で、受信する手段と、
    前記記憶部に保持される前記テーブルを、前記セキュアな通信で、前記端末に送信する手段と、
    前記転送要求を送信した前記端末のIPアドレスとMACアドレスの組で前記記憶部に保持される前記テーブルを更新する手段と、
    を備えた、ことを特徴とするサーバ装置。
  5. ネットワークに接続するノードのIP(Internet Protocol)アドレスとMAC(Media Access Control)アドレスの対応を含むテーブルを記憶するサーバ装置から通知されるアドレス解決に関する告知情報を受信する手段と、
    前記サーバ装置との間でセキュアな通信にて、IPアドレスとMACアドレスの対応を格納したテーブルの転送要求を前記サーバ装置に送信する手段と
    前記サーバ装置から、前記セキュアな通信で、前記ネットワークに接続するノードのIPアドレスとMACアドレスの対応を含むテーブルを受信し記憶部に記憶する手段と、
    を備え、前記記憶部に記憶された前記テーブルを用いて、通信の宛先のアドレス解決を行う、ことを特徴とする端末。
  6. サーバ装置が、アドレス解決に関する告知情報を、ネットワークに接続する複数の端末に通知し、
    前記告知情報を受理した前記端末は、前記端末と前記サーバ装置との間のセキュアな通信で、IP(Internet Protocol)アドレスとMAC(Media Access Control)アドレスの対応を格納したテーブルの転送要求を前記サーバ装置に送信し、
    前記サーバ装置は、前記端末から前記テーブルの転送要求を受信すると、前記サーバ装置で保持する、前記ネットワークに接続する複数のノードのIPアドレスとMACアドレスの対応を含むテーブルを、前記セキュアな通信で、前記端末に送信し、
    前記端末は、前記サーバ装置から受信した前記テーブルを記憶部に記憶し、
    前記端末は、前記記憶部に記憶された前記テーブルを用いて、前記端末の通信の宛先のアドレス解決を行う、ことを特徴とするアドレス解決制御方法。
  7. ネットワークに接続するノードのIP(Internet Protocol)アドレスとMAC(Media Access Control)アドレスの対応を含むテーブルを記憶部に記憶しておき、
    アドレス解決に関する告知情報を複数の端末に通知し、
    前記複数の端末のうち前記告知情報を受理した前記端末から、前記端末との間でのセキュアな通信で、IPアドレスとMACアドレスの対応を含むテーブルの転送要求を受信し、
    前記記憶部に記憶される前記テーブルを、セキュアな通信で、前記端末に送信し、
    前記転送要求を送信した前記端末のIPアドレスとMACアドレスの組で、前記記憶部に記憶される前記テーブルを更新する、ことを特徴とする、サーバ装置によるアドレス解決のための制御方法。
  8. ネットワークに接続するノードのIP(Internet Protocol)アドレスとMAC(Media Access Control)アドレスの対応を含むテーブルを記憶するサーバ装置から通知されるアドレス解決に関する告知情報を受信し、
    IPアドレスとMACアドレスの対応を格納したテーブルの転送要求を、前記サーバ装置との間のセキュアな通信で、前記サーバ装置に送信し
    前記サーバ装置から送信された前記テーブルを、前記セキュアな通信で受信して記憶部に記憶し、
    前記記憶部に記憶された前記テーブルを参照して、通信の宛先のアドレス解決を行う、ことを特徴とする、端末によるアドレス解決のための制御方法。
  9. ネットワークに接続するノードのIP(Internet Protocol)アドレスとMAC(Media Access Control)アドレスの対応を含むテーブルを記憶部に記憶する処理と、
    アドレス解決に関する告知情報を複数の端末に通知する処理と、
    前記複数の端末のうち前記告知情報を受理した前記端末から、前記端末との間でのセキュアな通信で、IPアドレスとMACアドレスの対応を含むテーブルの転送要求を受信する処理と、
    前記記憶部に記憶される前記テーブルを、前記セキュアな通信で、前記端末に送信する処理と、
    前記転送要求を送信した前記端末のIPアドレスとMACアドレスの組で、前記記憶部に記憶される前記テーブルを更新する処理と、
    をコンピュータに実行させるプログラム。
  10. ネットワークに接続するノードのIP(Internet Protocol)アドレスとMAC(Media Access Control)アドレスの対応を含むテーブルを記憶するサーバ装置から通知されるアドレス解決に関する告知情報を受信する処理と、
    IPアドレスとMACアドレスの対応を格納したテーブルの転送要求を、前記サーバ装置との間のセキュアな通信で、前記サーバ装置に送信する処理と、
    前記サーバ装置から送信された前記テーブルを、前記セキュアな通信で受信して記憶部に記憶する処理と、
    前記記憶部に記憶された前記テーブルを参照して、通信の宛先のアドレス解決を行う処理と、
    を端末のプロセッサに実行させるプログラム。
JP2019030630A 2019-02-22 2019-02-22 アドレス解決制御方法、ネットワークシステム、サーバ装置、端末及びプログラム Pending JP2020137006A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2019030630A JP2020137006A (ja) 2019-02-22 2019-02-22 アドレス解決制御方法、ネットワークシステム、サーバ装置、端末及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019030630A JP2020137006A (ja) 2019-02-22 2019-02-22 アドレス解決制御方法、ネットワークシステム、サーバ装置、端末及びプログラム

Publications (1)

Publication Number Publication Date
JP2020137006A true JP2020137006A (ja) 2020-08-31

Family

ID=72279225

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019030630A Pending JP2020137006A (ja) 2019-02-22 2019-02-22 アドレス解決制御方法、ネットワークシステム、サーバ装置、端末及びプログラム

Country Status (1)

Country Link
JP (1) JP2020137006A (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112511440A (zh) * 2020-11-30 2021-03-16 东软集团股份有限公司 报文转发方法、系统、存储介质和电子设备
CN113014693A (zh) * 2021-03-31 2021-06-22 贵州航天电子科技有限公司 一种多客户端温控组合服务器
CN114760263A (zh) * 2022-03-29 2022-07-15 浪潮云信息技术股份公司 一种地址解析方法、云平台及介质
WO2024066587A1 (zh) * 2022-09-30 2024-04-04 中兴通讯股份有限公司 报文转发方法、通信设备及存储介质
CN114760263B (zh) * 2022-03-29 2024-05-03 浪潮云信息技术股份公司 一种地址解析方法、云平台及介质

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112511440A (zh) * 2020-11-30 2021-03-16 东软集团股份有限公司 报文转发方法、系统、存储介质和电子设备
CN112511440B (zh) * 2020-11-30 2023-04-18 东软集团股份有限公司 报文转发方法、系统、存储介质和电子设备
CN113014693A (zh) * 2021-03-31 2021-06-22 贵州航天电子科技有限公司 一种多客户端温控组合服务器
CN113014693B (zh) * 2021-03-31 2023-05-26 贵州航天电子科技有限公司 一种多客户端温控组合服务器
CN114760263A (zh) * 2022-03-29 2022-07-15 浪潮云信息技术股份公司 一种地址解析方法、云平台及介质
CN114760263B (zh) * 2022-03-29 2024-05-03 浪潮云信息技术股份公司 一种地址解析方法、云平台及介质
WO2024066587A1 (zh) * 2022-09-30 2024-04-04 中兴通讯股份有限公司 报文转发方法、通信设备及存储介质

Similar Documents

Publication Publication Date Title
US10122574B2 (en) Methods and apparatus for a common control protocol for wired and wireless nodes
US9264397B2 (en) Method and system for implementing a user network identity address provisioning server
Davies et al. IPv6 transition/co-existence security considerations
US20070248085A1 (en) Method and apparatus for managing hardware address resolution
Durdağı et al. IPV4/IPV6 security and threat comparisons
JP2011501622A (ja) リモートデバイスに構成情報を自動配布するための中央管理ステーションのための種々の方法および装置
US11831607B2 (en) Secure private traffic exchange in a unified network service
Dawood IPv6 security vulnerabilities
US9930049B2 (en) Method and apparatus for verifying source addresses in a communication network
JP4468453B2 (ja) 往復経路確認の最適化
JP2020137006A (ja) アドレス解決制御方法、ネットワークシステム、サーバ装置、端末及びプログラム
US20190124055A1 (en) Ethernet security system and method
Ashraf et al. Challenges and Mitigation Strategies for Transition from IPv4 Network to Virtualized Next-Generation IPv6 Network.
JP4253520B2 (ja) ネットワーク認証装置及びネットワーク認証システム
US10805260B2 (en) Method for transmitting at least one IP data packet, related system and computer program product
Abdulla Survey of security issues in IPv4 to IPv6 tunnel transition mechanisms
Shaofeng et al. Design and Implementation of an Enhanced VPN Isolation Gateway
Shah et al. Security Issues in Next Generation IP and Migration Networks
Shanmugaraja et al. Accessible methods to mitigate security attacks on ipv4 to ipv6 transitions
Chang et al. Using resource public key infrastructure for secure border gateway protocol
WO2004080024A1 (en) A packet forwarding apparatus
Hadi An analytical study for Security in IPv6
Tarreau IntArea B. Carpenter Internet-Draft Univ. of Auckland Intended status: Informational S. Jiang Expires: April 10, 2014 Huawei Technologies Co., Ltd
Caicedo et al. Security issues in ipv6 networks
KIPRUTO TERM PAPER: VPLS SECURITY