特許第6553805号(P6553805)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ アリババ・グループ・ホールディング・リミテッドの特許一覧

特許6553805端末に関連付けられているソースアドレスの検証
<>
  • 特許6553805-端末に関連付けられているソースアドレスの検証 図000002
  • 特許6553805-端末に関連付けられているソースアドレスの検証 図000003
  • 特許6553805-端末に関連付けられているソースアドレスの検証 図000004
  • 特許6553805-端末に関連付けられているソースアドレスの検証 図000005
  • 特許6553805-端末に関連付けられているソースアドレスの検証 図000006
  • 特許6553805-端末に関連付けられているソースアドレスの検証 図000007
  • 特許6553805-端末に関連付けられているソースアドレスの検証 図000008
  • 特許6553805-端末に関連付けられているソースアドレスの検証 図000009
  • 特許6553805-端末に関連付けられているソースアドレスの検証 図000010
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6553805
(24)【登録日】2019年7月12日
(45)【発行日】2019年7月31日
(54)【発明の名称】端末に関連付けられているソースアドレスの検証
(51)【国際特許分類】
   H04L 12/70 20130101AFI20190722BHJP
【FI】
   H04L12/70 B
【請求項の数】20
【全頁数】31
(21)【出願番号】特願2018-503630(P2018-503630)
(86)(22)【出願日】2016年8月23日
(65)【公表番号】特表2018-525907(P2018-525907A)
(43)【公表日】2018年9月6日
(86)【国際出願番号】US2016048213
(87)【国際公開番号】WO2017035151
(87)【国際公開日】20170302
【審査請求日】2018年3月13日
(31)【優先権主張番号】201510524597.4
(32)【優先日】2015年8月24日
(33)【優先権主張国】CN
(31)【優先権主張番号】15/243,507
(32)【優先日】2016年8月22日
(33)【優先権主張国】US
(73)【特許権者】
【識別番号】510330264
【氏名又は名称】アリババ・グループ・ホールディング・リミテッド
【氏名又は名称原語表記】ALIBABA GROUP HOLDING LIMITED
(74)【代理人】
【識別番号】110000028
【氏名又は名称】特許業務法人明成国際特許事務所
(72)【発明者】
【氏名】デン・ガオリアン
【審査官】 松崎 孝大
(56)【参考文献】
【文献】 米国特許出願公開第2014/0244733(US,A1)
【文献】 特開2017−017631(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04L 12/70
(57)【特許請求の範囲】
【請求項1】
方法であって、
パケットを端末から受信し、前記パケットは、前記端末に関連付けられているソースインターネットプロトコル(IP)アドレス及びソースメディアアクセス制御(MAC)アドレスを含み、
前記端末に関連付けられている一致するエントリが、有効なソースIPアドレス及び有効なソースMACアドレスを格納しているローカル検証テーブルの中で見つかるか否かを決定し、
前記端末に関連付けられている前記一致するエントリが、前記ローカル検証テーブルの中で見つからないと決定に応じて、前記ソースIPアドレス及び前記ソースMACアドレスに基づいて、リクエストを生成し、
前記リクエストに関連付けられている識別子を含む模倣記録を生成し、
前記リクエストを動的ホスト構成プロトコル(DHCP)サーバに伝送し、
前記端末に関連付けられている前記ソースIPアドレス及び前記ソースMACアドレスが有効であるか否かを、前記DHCPサーバからの応答に少なくとも部分的に基づいて決定することであって、
前記DHCPサーバからの前記応答が、前記リクエストに関連付けられている前記識別子に一致するかどうかを決定し、
前記DHCPサーバからの前記応答が、前記リクエストに関連付けられている前記識別子に一致するとの決定に応じて、
前記模倣記録を削除し、
前記応答が前記端末に伝送されることを阻止することを含む、前記端末に関連付けられている前記ソースIPアドレス及び前記ソースMACアドレスが有効であるか否かを決定する
ことを備える方法。
【請求項2】
請求項1に記載の方法であって、
前記ローカル検証テーブルは、ローカルソースアドレス有効性(SAVI)バインドテーブルを含む、方法。
【請求項3】
請求項1に記載の方法であって、更に、
前記端末に関連付けられている前記ソースIPアドレス及び前記ソースMACアドレスが有効であると決定される場合に、前記パケットを、前記パケットに関連付けられている宛先に伝送し、
前記端末に関連付けられている前記ソースIPアドレス及び前記ソースMACアドレスが無効であると決定される場合に、前記パケットを破棄する、
ことを備える方法。
【請求項4】
請求項1に記載の方法であって、更に、
前記リクエストを前記DHCPサーバに伝送する前に、前記パケットをバッファに格納し、
前記端末に関連付けられている前記ソースIPアドレス及び前記ソースMACアドレスが有効であると決定される場合に、前記パケットを前記バッファから取り出して、前記パケットに関連付けられている宛先に伝送し、
前記端末に関連付けられている前記ソースIPアドレス及び前記ソースMACアドレスが無効であると決定される場合に、前記パケットを破棄する、
ことを備える方法。
【請求項5】
請求項1に記載の方法であって、更に
記DHCPサーバからの前記応答が、前記リクエストに関連付けられ、前記格納されている識別子に一致しないとの決定に応じて、前記応答を前記端末に伝送する、
ことを備える方法。
【請求項6】
請求項1に記載の方法であって、更に
記DHCPサーバからの前記応答が、前記リクエストに関連付けられている前記識別子に一致しないとの決定に応じて、前記応答を前記端末に伝送する、
ことを備える方法。
【請求項7】
請求項1に記載の方法であって、
前記端末に関連付けられている前記ソースIPアドレス及び前記ソースMACアドレスが有効であるか否かを決定することは、
前記DHCPサーバからの前記応答が、前記リクエストを前記DHCPサーバに伝送してから既定の長さの時間内に受信されるか否かを決定し、
前記DHCPサーバからの前記応答が、前記リクエストを前記DHCPサーバに伝送してから前記既定の長さの時間内に受信されない場合に、前記端末に関連付けられている前記ソースIPアドレス及び前記ソースMACアドレスが無効であると決定し、
前記DHCPサーバからの前記応答が、前記リクエストを前記DHCPサーバに伝送してから前記既定の長さの時間内に受信され、前記応答が肯定を含む場合に、前記端末に関連付けられている前記ソースIPアドレス及び前記ソースMACアドレスが有効であると決定する、
ことを含む、方法。
【請求項8】
請求項1に記載の方法であって、更に、
前記端末に関連付けられている前記ソースIPアドレス及び前記ソースMACアドレスが有効であるか否かを決定することは、
前記DHCPサーバからの前記応答が、前記リクエストを前記DHCPサーバに伝送してから既定の長さの時間内に受信されるか否かを決定し、
前記DHCPサーバからの前記応答が、前記リクエストを前記DHCPサーバに伝送してから前記既定の長さの時間内に受信されない場合に、
前記端末に関連付けられている前記ソースIPアドレス及び前記ソースMACアドレスが無効であると決定し、
前記パケットが前記パケットに関連付けられている宛先に送信されることを阻止し、
前記DHCPサーバからの前記応答が、前記リクエストを前記DHCPサーバに伝送してから前記既定の長さの時間内に受信され、前記応答が肯定を含む場合に、前記端末に関連付けられている前記ソースIPアドレス及び前記ソースMACアドレスが有効であると決定する、
ことを含む、方法。
【請求項9】
請求項1に記載の方法であって、更に、
前記DHCPサーバからの前記応答が、前記リクエストを前記DHCPサーバに伝送してから既定の長さの時間内に受信されるか否かを決定し、
前記DHCPサーバからの前記応答が、前記リクエストを前記DHCPサーバに伝送してから前記既定の長さの時間内に受信されない場合に、前記端末に関連付けられている前記ソースIPアドレス及び前記ソースMACアドレスが無効であると決定し、
前記DHCPサーバからの前記応答が、前記リクエストを前記DHCPサーバに伝送してから前記既定の長さの時間内に受信され、前記応答が肯定を含む場合に、
前記端末に関連付けられている前記ソースIPアドレス及び前記ソースMACアドレスが有効であると決定し、
前記端末に関連付けられている前記ソースIPアドレス及び前記ソースMACアドレスを含む新しいエントリを、前記ローカル検証テーブルの中に生成し、
前記パケットを前記パケットに関連付けられている宛先に伝送する、
ことを備える方法。
【請求項10】
請求項1に記載の方法であって、更に、
前記DHCPサーバからの前記応答が非肯定を含む場合に、前記端末に関連付けられている前記ソースIPアドレス及び前記ソースMACアドレスが無効であると決定し、
前記DHCPサーバからの前記応答が肯定を含む場合に、前記端末に関連付けられている前記ソースIPアドレス及び前記ソースMACアドレスが有効であると決定する、
ことを備える方法。
【請求項11】
請求項1に記載の方法であって、更に、
前記DHCPサーバからの前記応答が非肯定を含む場合に、
前記端末に関連付けられている前記ソースIPアドレス及び前記ソースMACアドレスが無効であると決定し、
前記パケットが前記パケットに関連付けられている宛先に送信されることを阻止し、
前記DHCPサーバからの前記応答が肯定を含む場合に、前記端末に関連付けられている前記ソースIPアドレス及び前記ソースMACアドレスが有効であると決定する、
ことを備える方法。
【請求項12】
請求項1に記載の方法であって、更に、
前記DHCPサーバからの前記応答が非肯定を含む場合に、前記端末に関連付けられている前記ソースIPアドレス及び前記ソースMACアドレスが無効であると決定し、
前記DHCPサーバからの前記応答が肯定を含む場合に、
前記端末に関連付けられている前記ソースIPアドレス及び前記ソースMACアドレスが有効であると決定し、
前記端末に関連付けられている前記ソースIPアドレス及び前記ソースMACアドレスを含む新しいエントリを、前記ローカル検証テーブルの中に生成し、
前記パケットを前記パケットに関連付けられている宛先に伝送する、
ことを備える方法。
【請求項13】
請求項1に記載の方法であって、
前記リクエストは、サーバ識別子(DHCPサーバID)オプション又はリクエストIPアドレスオプションを伴わずに生成される、方法。
【請求項14】
コンピュータプログラムであって、
パケットを端末から受信するための機能と、前記パケットは、前記端末に関連付けられているソースインターネットプロトコル(IP)アドレス及びソースメディアアクセス制御(MAC)アドレスを含み、
前記端末に関連付けられている一致するエントリが、有効なソースIPアドレス及び有効なソースMACアドレスを格納しているローカル検証テーブルの中で見つかるか否かを決定するための機能と、
前記端末に関連付けられている前記一致するエントリが、前記ローカル検証テーブルの中で見つからないと決定に応じて前記ソースIPアドレス及び前記ソースMACアドレスに基づいて、リクエストを生成するための機能と、
前記リクエストに関連付けられている識別子を含む模倣記録を生成するための機能と、
前記リクエストを動的ホスト構成プロトコル(DHCP)サーバに伝送するための機能と、
前記端末に関連付けられている前記ソースIPアドレス及び前記ソースMACアドレスが有効であるかどうかを、前記DHCPサーバからの応答に少なくとも部分的に基づいて決定するための機能であって、
前記DHCPサーバからの前記応答が、前記リクエストに関連付けられている前記識別子に一致するかどうかを決定し、
前記DHCPサーバからの前記応答が、前記リクエストに関連付けられている前記識別子に一致するとの決定に応じて、
前記模倣記録を削除し、
前記応答が前記端末に伝送されることを阻止することを含む、前記端末に関連付けられている前記ソースIPアドレス及び前記ソースMACアドレスが有効であるか否かを決定するための機能と、
をコンピュータによって実現させるコンピュータプログラム。
【請求項15】
請求項14に記載のコンピュータプログラムであって、更に、
前記端末に関連付けられている前記ソースIPアドレス及び前記ソースMACアドレスが有効であると決定される場合に、前記パケットを前記パケットに関連付けられている宛先に伝送するための機能と、
前記端末に関連付けられている前記ソースIPアドレス及び前記ソースMACアドレスが無効であると決定される場合に、前記パケットを破棄するための機能と、
をコンピュータによって実現させるコンピュータプログラム。
【請求項16】
請求項14に記載のコンピュータプログラムであって、更に、
前記リクエストを前記DHCPサーバに伝送する前に、前記パケットをバッファに格納するための機能と、
前記端末に関連付けられている前記ソースIPアドレス及び前記ソースMACアドレスが有効であると決定される場合に、前記パケットを前記バッファから取り出して、前記パケットに関連付けられている宛先に伝送するための機能と、
前記端末に関連付けられている前記ソースIPアドレス及び前記ソースMACアドレスが無効であると決定される場合に、前記パケットを破棄するための機能と、
をコンピュータによって実現させるコンピュータプログラム。
【請求項17】
請求項14に記載のコンピュータプログラムであって、更に、
前記DHCPサーバからの前記応答が、前記リクエストを前記DHCPサーバに伝送してから既定の長さの時間内に受信されるか否かを決定するための機能と、
前記DHCPサーバからの前記応答が、前記リクエストを前記DHCPサーバに伝送してから前記既定の長さの時間内に受信されない場合に、前記端末に関連付けられている前記ソースIPアドレス及び前記ソースMACアドレスが無効であると決定するための機能と、
前記DHCPサーバからの前記応答が、前記リクエストを前記DHCPサーバに伝送してから前記既定の長さの時間内に受信され、前記応答が肯定を含む場合に、
前記端末に関連付けられている前記ソースIPアドレス及び前記ソースMACアドレスが有効であると決定し、
前記端末に関連付けられている前記ソースIPアドレス及び前記ソースMACアドレスを含む新しいエントリを、前記ローカル検証テーブルの中に生成し、
前記パケットを前記パケットに関連付けられている宛先に伝送する、
ための機能と、
をコンピュータによって実現させるコンピュータプログラム。
【請求項18】
請求項14に記載のコンピュータプログラムであって、更に、
前記DHCPサーバからの前記応答が非肯定を含む場合に、
前記端末に関連付けられている前記ソースIPアドレス及び前記ソースMACアドレスが無効であると決定し、
前記パケットが前記パケットに関連付けられている宛先に送信されること阻止する、
ための機能と、
前記DHCPサーバからの前記応答が肯定を含む場合に、前記端末に関連付けられている前記ソースIPアドレス及び前記ソースMACアドレスが有効であると決定するための機能と、
をコンピュータによって実現させるコンピュータプログラム。
【請求項19】
請求項14に記載のコンピュータプログラムであって、更に、
前記DHCPサーバからの前記応答が非肯定を含む場合に、前記端末に関連付けられている前記ソースIPアドレス及び前記ソースMACアドレスが無効であると決定するための機能と、
前記DHCPサーバからの前記応答が肯定を含む場合に、
前記端末に関連付けられている前記ソースIPアドレス及び前記ソースMACアドレスが有効であると決定し、
前記端末に関連付けられている前記ソースIPアドレス及び前記ソースMACアドレスを含む新しいエントリを、前記ローカル検証テーブルの中に生成し、
前記パケットを前記パケットに関連付けられている宛先に伝送する、
ための機能と、
をコンピュータによって実現させるコンピュータプログラム。
【請求項20】
システムであって、
プロセッサであって、
前記プロセッサに結合され、前記プロセッサに命令を提供するように構成されたメモリと、
を備え、
前記命令は、実行時に、前記プロセッサに、
パケットを端末から受信させ、前記パケットは、前記端末に関連付けられているソースインターネットプロトコル(IP)アドレス及びソースメディアアクセス制御(MAC)アドレスを含み、
前記端末に関連付けられている一致するエントリが、有効なソースIPアドレス及び有効なソースMACアドレスを格納しているローカル検証テーブルの中で見つかるか否かを決定させ、
前記端末に関連付けられている前記一致するエントリが、前記ローカル検証テーブルの中で見つからないと決定に応じて、前記ソースIPアドレス及び前記ソースMACアドレスに基づいて、リクエストを生成させ、
前記リクエストに関連付けられている識別子を含む模倣記録を生成させ、
前記リクエストを動的ホスト構成プロトコル(DHCP)サーバに伝送させ、
前記端末に関連付けられている前記ソースIPアドレス及び前記ソースMACアドレスが有効であるか否かを、前記DHCPサーバからの応答に少なくとも部分的に基づいて決定させることであって、
前記DHCPサーバからの前記応答が、前記リクエストに関連付けられている前記識別子に一致するかどうかを決定し、
前記DHCPサーバからの前記応答が、前記リクエストに関連付けられている前記識別子に一致するとの決定に応じて、
前記模倣記録を削除し、
前記応答が前記端末に伝送されることを阻止することを含む、前記端末に関連付けられている前記ソースIPアドレス及び前記ソースMACアドレスが有効であるか否かを決定させる、システム。
【発明の詳細な説明】
【技術分野】
【0001】
[関連技術の相互参照]
本出願は、2015年8月24日に出願され名称を「METHOD AND DEVICE USED TO VERIFY THE VALIDITY OF SOURCE ADDRESSES(ソースアドレスの有効性を検証するために用いられる方法およびデバイス)」とする中国特許出願第201510524597.4号に基づく優先権を主張する。この出願は、あらゆる目的のために、参照によって本明細書に組み込まれる。
【0002】
本出願は、インターネット技術の分野に関わる。特に、本出願は、ソースアドレスの有効性を検証するための技術に関わる。
【背景技術】
【0003】
旧来のネットワークアーキテクチャでは、端末から受信されたメッセージに含まれる端末ソースアドレスの有効性の検証によって、IPの偽造及びなりすましを効果的に阻止できる。例えば、偽造及びなりすましは、端末によって送信されたメッセージに含まれるIPアドレスが手動で構成されているときに起きることがある。従来の検証プロセスでは、次のような原理が適用される。すなわち、ソースメディアアクセス制御(MAC)アドレスのキュリティチェックがワイヤレスセキュリティ標準802.11iを使用して実現され、それによって、MACアドレスのセキュリティ及び有効性が保証される。(例えばアクセスポイント(AP)又はアクセスコントローラ(AC)などの)検証エンティティが、端末のソースアドレス(例えば、ソースインターネットプロトコル(IP)アドレス及びソースMACアドレス)を受信し、ソースIPアドレスとソースMACアドレスとの間のバインド関係を保存することによって、ソースアドレス有効性向上(SAVI)バインドテーブルエントリを確立する。例えば、SAVIバインドテーブルエントリは、各端末のソースIPアドレスとMACアドレスとの間のバインド関係を格納する。したがって、SAVIバインドテーブルエントリに格納されたバインド関係は、検証エンティティで受信されるメッセージのソースアドレスに含まれるソースIPアドレスが有効であるかどうかを検証するために使用できる。
【0004】
しかしながら、検証エンティティが端末のための一致するSAVIバインドテーブルエントリを有さない場合は、その端末のソースアドレスの有効性を検証することができない。この状況では、従来は、複数の検証エンティティにわたって格納された複数のSAVIバインドテーブルエントリを同期化するために、この検証エンティティとその他の検証エンティティとの間に伝送制御プロトコル(TCP)チャネルが確立されてきた。
【0005】
例えば、APが検証エンティティとしての役割を果たす集中型ワイヤレスローカルエリアネットワーク(WLAN)アーキテクチャ(例えばAC及び適合APを含む)では、端末が最初にオンラインになるときに、その端末は、動的ホスト構成プロトコル(DHCP)サーバに対してIPアドレスをリクエストすることによってDHCPを起動する。APIは、DHCPメッセージをインターセプトし、その端末のための対応するSAVIバインドテーブルエントリを生成し、それと同時に、インターセプトされたDHCPメッセージをACにサブミットする。端末が、複数のACに跨ってAP2へのローミングを行うときは、AP2は、ローカルで検索を実施するので、端末に一致するSAVIバインドテーブルエントリを見つけられない。AP2は、端末に一致するSAVIバインドテーブルエントリを見つけられないと決定した後、複数の検証エンティティ間でのSAVIバインドテーブルエントリの同期化を促すために、ACとの間にチャネルを確立させられる。
【0006】
別の例では、ACが検証エンティティである集中型WLANアーキテクチャにおいて、DHCPメッセージはAC上でインターセプトされ、SAVIバインドテーブルエントリが生成される。端末が複数のAC間でローミングを行う場合、複数の検証エンティティ間でSAVIバインドテーブルエントリを同期化するために、複数のAC間でチャネルが確立されなければならない。
【0007】
しかしながら、複数の検証エンティティ間でSAVIバインドテーブルエントリを同期化するために使用されている従来の技術は、同期化を実施するために(1本以上の)チャネルを確立する必要に見舞われる。チャネルの確立は、ネットワークの複雑性を増大させる。また、チャネルが割り込まれる場合、複数の検証エンティティ間でSAVIバインドテーブルエントリを同期化することが不可能になり、したがって、ローミングを行う検証エンティティが端末のソースアドレスの有効性を検証できなくなる。端末が検証できない場合、端末のメッセージは破棄され、これは、端末が正常に通信する能力を妨げる。
【図面の簡単な説明】
【0008】
本発明の様々な実施形態が、以下の詳細な説明及び添付の図面で開示される。
【0009】
以下の図面を参照にした非制限的な実施形態の詳細な説明を読むことを通じて、本発明のその他の特徴、目的、及び利点が更に明らかになる。
【0010】
図1】端末のソースアドレスの有効性を検証するためのシステムの一実施形態を示す図である。
【0011】
図2】端末のソースアドレスの有効性を検証するためのプロセスの一実施形態を示すフローチャートである。
【0012】
図3】端末のソースアドレスの有効性を検証するためのプロセスの一例を示すフローチャートである。
【0013】
図4】検証デバイスの第1の実施形態を示す図である。
【0014】
図5】検証デバイスの第2の実施形態を示す図である。
【0015】
図6】検証デバイスの第3の実施形態を示す図である。
【0016】
図7】検証デバイスの第4の実施形態を示す図である。
【0017】
図8】検証デバイスの第5の実施形態を示す図である。
【0018】
図9】端末のソースアドレスの有効性を検証するためのプログラムドコンピュータシステムの一実施形態を示す機能図である。
【発明を実施するための形態】
【0019】
本発明は、プロセス、装置、システム、合成物、コンピュータ読み取り可能ストレージ媒体に実装されたコンピュータプログラム製品、並びに/又は接続先のメモリに格納された命令及び/若しくは接続先のメモリによって提供される命令を実行するように構成されたプロセッサなどのプロセッサを含む、数々の形態で実現できる。本明細書では、これらの実現形態、又は本発明がとりえるその他のあらゆる形態が、技術と称されてよい。総じて、開示されるプロセスのステップの順番は、発明の範囲内で変更されてよい。別途明記されない限り、タスクを実施するように構成されているものとして説明されるプロセッサ又はメモリなどのコンポーネントは、所定時にタスクを実施するように一時的に構成されている汎用コンポーネントとして、又はタスクを実施するように製造された特殊コンポーネントとして実現されてよい。本書で使用される「プロセッサ」という用語は、コンピュータプログラム命令などのデータを処理するように構成された1つ以上のデバイス、回路、及び/又は処理コアを言う。
【0020】
本発明の原理を例示す添付の図面とともに、以下で、本発明の1つ以上の実施形態の詳細な説明が提供される。本発明は、このような実施形態との関連で説明されるが、いずれの実施形態にも限定されない。本発明の範囲は、特許請求の範囲によってのみ限定され、本発明は、数々の代替形態、変更形態、及び等価物を包含している。以下の説明では、本発明の完全な理解を与えるために、数々の具体的詳細が明記されている。これらの詳細は、例示を目的として提供されるものであり、本発明は、これらの詳細の一部又は全部を伴わずとも特許請求の範囲にしたがって実施されてよい。明瞭を期するために、本発明に関連する技術分野で知られる技術要素は、本発明が不必要に不明瞭にならないように、詳細な説明を省略されている。
【0021】
本書で使用されるコンピュータ機器は、ユーザ機器及びネットワーク機器を含む。ユーザ機器は、コンピュータ、スマートフォン、及びタブレットデバイスを含み、ただし、これらに限定はされない。ネットワーク機器は、個々のネットワークサーバ、複数のネットワークサーバによって形成されたサーバ群、又は例えば多数のコンピュータ若しくはネットワークサーバでなるクラウドコンピューティングベースのクラウドを含み、ただし、これらに限定はされない。クラウドコンピューティングは、仮想化を通じてコンピューティングリソースが共有される分散コンピューティングの一種である。コンピュータ機器は、本出願を実現するために独立に走らされてよい、又はネットワークにアクセスし、ネットワーク内のその他のコンピュータ機器との対話動作を通じて本出願を実現してよい。コンピュータ機器が中に存在しているネットワークは、例えば、インターネット、メトロポリタンエリアネットワーク、ローカルエリアネットワーク、及びVPNネットワークを含み、ただし、これらに限定はされない。留意すべきは、本書で説明されるユーザ機器、ネットワーク機器、及びネットワークが例に過ぎないことである。
【0022】
コンピュータ機器は、ユーザ機器及びネットワーク機器を含む。ユーザ機器は、コンピュータ、スマートフォン、及びタブレットデバイスを含み、ただし、これらに限定はされない。ネットワーク機器は、個々のネットワークサーバ、複数のネットワークサーバによって形成されたサーバ群、又は例えば多数のコンピュータ若しくはネットワークサーバでなるクラウドコンピューティングベースのクラウドを含み、ただし、これらに限定はされない。クラウドコンピューティングは、分散コンピューティングの一種であり、ゆるく結合された一群のコンピュータで形成された超仮想コンピュータを含む。コンピュータ機器は、本出願を実現するために独立に走らされてよい、又はネットワークにアクセスし、ネットワーク内のその他のコンピュータ機器との対話動作を通じて本出願を実現してよい。コンピュータ機器が中に存在しているネットワークは、例えば、インターネット、メトロポリタンエリアネットワーク、ローカルエリアネットワーク、及びVPNネットワークを含み、ただし、これらに限定はされない。留意すべきは、本書で説明されるユーザ機器、ネットワーク機器、及びネットワークが例に過ぎないことである。
【0023】
以下で論じられる方法(その一部がフローチャートによって示されている)は、ハードウェア、ソフトウェア、ファームウェア、ミドルウェア、マイクロコード、ハードウェア記述言語、又はこれらの任意の組み合わせを通じて実現されてよい。方法が、ソフトウェア、ファームウェア、ミドルウェア、又はマイクロコードを通じて実現されるときは、必要なタスクを実行するために使用されるプログラムコード又はコードセグメントは、機械又はコンピュータによって読み取り可能な媒体(例えば、ストレージ媒体)に格納できる。1つ以上のプロセッサが、必要なタスクを実行してよい。
【0024】
本書で開示される特定の構造及び機能詳細は、代表的なものに過ぎず、本出願の例示的実施形態を説明する目的で使用される。しかしながら、本出願は、多くの代替的形態を通じて具体的に実現されてよい。更に、本出願は、本書で明記される実施形態に単に限定されると解釈されるべきでない。
【0025】
「第1の(first)」や「第2の(second)」などの用語が、様々なユニットを説明するために使用されるが、これらのユニットは、これらの用語によって限定されるべきではないことが理解されるべきである。これらの用語は、1つのユニットを別のユニットと区別するために使用されるに過ぎない。一例を挙げると、例示的実施形態の範囲から逸脱しない限り、第1のユニットが第2のユニットと呼ばれてよく、同様に、第2のユニットが第1のユニットと呼ばれてよい。本書で使用される「及び/又は」(and/or)」という用語は、挙げられた1つ以上の関連項目の任意の又は全ての組み合わせを含む。
【0026】
本書で使用される用語は、特定の実施形態の説明を意図しているに過ぎず、例示的実施形態を制限することを意図していない。文脈によって別途明示されない限り、本書で使用される単数形「a」又は「an」は、複数形も含むことを意図している。また、本書で使用される「を含む(comprise)」及び/又は「を含有する(contain)」は、記載されている特徴、整数、ステップ、動作、ユニット、及び/又はコンポーネントの存在を指定しており、1つ以上のその他の特徴、整数、ステップ、動作、ユニット、コンポーネント、又はそれらの組み合わせの存在又は追加を排除しない。
【0027】
一部の代替的実装形態では、言及された機能/行為が、図に示されたのとは異なる順序で起きてよいことが留意されるべきである。例えば、関わる機能/行為に応じて、順番に提示された2つの図が、基本的に同時に実行されてよい、又は逆の順序で実行されることがあってよい。
【0028】
以下は、図面を参照した本出願の技術スキームの更に詳細な説明である。
【0029】
端末に関連付けられているソースアドレスを検証する実施形態が、本明細書で説明される。パケットが、端末から受信される。パケットは、端末に関連付けられているソースインターネットプロトコル(IP)アドレス及びソースメディアアクセス制御(MAC)アドレスを含む。端末に関連付けられている一致するエントリが、有効なソースIPアドレス及び有効なソースMACアドレスを格納しているローカル検証テーブルの中で見つけられるか否かが決定される。例えば、検証テーブルは、ソースアドレス有効性向上(SAVI)バインドテーブルを含む。端末に関連付けられている一致するエントリがローカル検証テーブルの中で見つからない場合は、ソースIPアドレス及びソースMACアドレスに基づいて、リクエストが生成される。例えば、リクエストは、DHCPリクエストを含む。リクエストは、動的ホスト構成プロトコル(DHCP)サーバに伝送される。DHCPサーバからの応答に少なくとも部分的に基づいて、端末に関連付けられているソースIPアドレス及びソースMACアドレスが有効であるかどうかが決定される。
【0030】
図1は、端末のソースアドレスの有効性を検証するためのシステムの一実施形態を示す図である。この例では、システム100は、端末102と、ネットワーク104と、検証デバイス106と、ストレージ110と、動的ホスト構成プロトコル(DHCP)サーバ108とを含む。ネットワーク104は、1つ以上の高速データネットワーク及び/又は電気通信ネットワークを含んでいてよい。
【0031】
端末102は、(例えば、少なくとも宛先インターネットプロトコル(IP)アドレス及び/又は宛先メディアアクセス制御(MAC)アドレスによって特定された)宛先端末に向けたパケットを生成するように構成されている。例えば、パケットは、TCPパケットの送信者IPアドレスフィールドの中のソースIPアドレスと、TCPパケットの送信者MACアドレスフィールドの中のソースMACアドレスとを含むTCPパケットを含んでいてよい。例えば、端末102は、ラップトップコンピュータ、デスクトップコンピュータ、タブレットデバイス、スマートフォン、又は任意のコンピューティングデバイスを含む。例えば、パケットは、データパケットを含む。パケットは、端末に関連付けられているソースIPアドレス及びソースMACアドレスを含む。端末102は、パケットを検証デバイス106に送信するように構成されている。
【0032】
検証デバイス106は、端末102から送信される通信を制限するように及び/又は端末102などの端末からの通信を受信しえるその他の様々な端末で受信される通信を保護するように構成されている。検証デバイス106は、受信されたパケットに含まれるソースIPアドレス及びソースMACアドレスが有効であるか否か、結果として端末102が検証され得るか否かを決定する。例えば、検証デバイス106は、アクセスポイントデバイス又はアクセスコントローラデバイスを含む。例えば、アクセスポイントデバイスは、ワイヤレスルータであることができる。アクセスポイントデバイスは、ファットアクセスポイント(FAT AP)デバイスとも呼ぶことができる。管理されたAPが、ワイヤレス通信を管理する役割を担う一方で、例えば、アクセスコントローラデバイスは、APの管理及びワイヤード通信の転送の役割を担うワイヤレスコントローラ(例えば、Cisco(商標)5500シリーズワイヤレスコントローラ)であることができる。各種の実施形態において、検証デバイス106は、検証テーブルをストレージ110にローカルに格納するように構成されている。検証テーブルは、検証済みの端末に関連付けられている有効なソースIPアドレス及び/又はソースMACアドレスを特定している。様々な実施形態において、検証テーブルは、ソースアドレス有効化向上(SAVI)バインドテーブルを含む。SAVIバインドテーブルは、様々なエントリを含み、各エントリは、検証済みの端末の有効なソースIPアドレス及び/又は有効なソースMACアドレスを少なくとも含み、随意として、ソースIPアドレスに関連付けられているリース期間を含む。受信されたパケットに含まれるソースアドレス(ソースIPアドレス及びソースMACアドレス)が有効であるかどうかを決定するために、受信されたパケットのソースアドレス(例えば、ソースIPアドレス及びソースMACアドレス)の少なくとも1つが、ローカル検証テーブルに格納されたエントリのソースアドレスと比較される。一致するエントリがローカル検証テーブルの中で見つけられる場合は、ソースアドレスは、有効であると決定され、パケットは、その宛先端末に転送される。そうではなく、一致するエントリがローカル検証テーブルの中で見つけられない場合は、検証デバイス106は、端末102からDHCPサーバ108へのDHCPリクエストの伝送を模倣するように構成されている。様々な実施形態において、端末102からDHCPサーバ108へのDHCPリクエストの伝送の模倣は、検証デバイス106が、端末102に対応する(とともに、端末102から受信されたパケットの中に含まれていた)ソースIPアドレス及びソースMACアドレスを含むDHCPリクエストを生成し、当該DHCPリクエストをDHCPサーバ108に送信することを含む。様々な実施形態において、検証デバイス106によって生成されるDHCPリクエストは、サーバ識別子(DHCPサーバID)オプション及びリクエストIPアドレスオプションを含まない。DHCPサーバ108が、DHCPリクエストに含まれるソースIPアドレスを少なくとも含む記録を自身が格納していると決定する場合、DHCPサーバ108は、肯定応答(例えばACK)を検証デバイス106に送り返す。そうではなく、もし、DHCPサーバ108が、DHCPリクエストに含まれるソースIPアドレスを少なくとも含む記録を自身が格納していないと決定するならば、DHCPサーバ108は、検証デバイス106に非肯定応答(例えばNAK)を送り返す又は何の応答も返さない。検証デバイス106が、DHCPサーバ108から肯定応答を受信する場合は、検証デバイス106は、端末102に対応するソースIPアドレス及びソースMACアドレスが有効であると決定し、パケットをその宛先端末に(又は端末102と宛先端末との間の次の中間エンティティに少なくとも)転送するように構成されている。更に、検証デバイス106は、随意として、承認された端末102に対応するソースIPアドレス及びソースMACアドレスを含む新しいエントリをローカル検証テーブルの中に生成し、このエントリに基づいて直接的に、端末102から受信される後続のパケットの有効性を検証可能にすることができる。そうではなく、検証デバイス106が、DHCPサーバ108から非肯定応答を受信する又は何の応答も受信しない場合は、検証デバイス106は、端末102に対応するソースMACアドレスとソースMACアドレスとが無効であると決定し、パケットがその宛先端末に転送されるのを阻止するように構成されている。
【0033】
以下で更に詳細に説明されるように、端末及びその対応するソースアドレスは、検証デバイスを使用して、端末からDHCPサーバへのDHCPリクエストの伝送を模倣することによって検証できる。DHCPサーバから検証デバイスへの応答又はその欠如は、端末及びそのソースアドレスが検証され得るか否か、その結果端末からのパケットがそれらの宛先端末に転送できるかどうかを検証デバイスに示す。複数の検証デバイス間で(例えばTCP)チャネルを確立しそれらのデバイスに対応するSAVIバインドテーブルを同期化することが、もはや必要でなくなる。複数の検証デバイス間でのTCPチャネルの確立を回避することの利点は、1つには、ある検証デバイスによってSAVIバインドテーブルエントリが追加されるときに、その新しいエントリがその他の検証デバイス間で同期化される必要がないことである。TCPチャネルの確立を回避することの第2の利点は、新しい検証デバイスが使用されるときに、その新しい検証デバイスが、既存の検証デバイスからそれらのデバイスのSAVIバインドテーブルエントリを受信する/既存の検証デバイスとの間でそれらのデバイスのSAVIバインドテーブルエントリのための同期化を行う必要がないことである。更に、端末に代わるDHCPリクエストの伝送の模倣は、端末に対して透過的であり、したがって、端末から送信される又は端末によって受信される通常の通信が邪魔されることはない。
【0034】
図2は、端末のソースアドレスの有効性を検証するためのプロセスの一実施形態を示すフローチャートである。一部の実施形態では、プロセス200は、図1のシステム100で実施される。具体的には、一部の実施形態では、プロセス200は、図1のシステム100の検証デバイス106で実施される。
【0035】
ステップ202では、端末からパケットが受信される。パケットは、端末に関連付けられているソースIPアドレス及びソースMACアドレスを含む。
【0036】
様々な実施形態において、端末から送信されたパケットは、(例えば、パケットに含まれる宛先IPアドレス及び/又は宛先MACアドレスによって特定された)宛先デバイス/端末に送信されるべき通信の一部である。
【0037】
ステップ204では、端末に関連付けられている一致するエントリがローカル検証テーブルの中で見つかるか否かが決定される。
【0038】
様々な実施形態において、「ローカル」検証テーブルは、プロセス200を実施している検証デバイスによって格納されているSAVIバインドテーブルを含む。様々な実施形態において、端末に関連付けられている一致するエントリがローカルSAVIバインドテーブルの中で見つかるか否かを決定することは、端末が検証され得るか否か、その結果としてそのパケットがその宛先に転送されるべきであるか否かを決定するために使用される。様々な実施形態において、端末に関連付けられ、一致するエントリがローカルSAVIバインドテーブルの中で見つかるか否かを決定することは、パケットの中に含まれるソースIPアドレスを、SAVIバインドテーブルの中で検索を行うためのインデックスとして使用することを含む。例えば、パケットの中に含まれるソースIPアドレスを、SAVIバインドテーブルの中で検索を行うためのインデックスとして使用することは、パケットの中に含まれるソースIPアドレスを、SAVIバインドテーブルの中のエントリに格納されている各ソースIPアドレスに照らして比較することを含む。
【0039】
パケットの中に含まれるソースIPアドレスがSAVIバインドテーブルの中で見つけられる場合は、端末に関連付けられているソースIPアドレス及びソースMACアドレスは、有効である(すなわち検証された)と決定され、パケットは、(例えば、パケットの中に含まれる宛先IPアドレス及び/又は宛先MACアドレスによって特定された)その宛先場所に転送される。
【0040】
そうではなく、パケットの中に含まれるソースIPアドレスがSAVIバインドテーブルの中で見つけられない場合は、端末に関連付けられているソースIPアドレス及びソースMACアドレスは、有効であるとまだ決定されず、後述されるように、パケットに対して更なる検証が実施されることになる。
【0041】
一部の実施形態では、パケットのソースIPアドレス及びソースMACアドレスの有効性を決定する前に、受信されたパケットがバッファに格納される。例えば、バッファは、パケットがそのソースアドレスが有効又は無効であるとわかる前に格納される一時的な格納場所を含んでいてよい。
【0042】
ステップ206では、端末に関連付けられている一致するエントリがローカル検証テーブルの中で見つからないと決定される。
【0043】
ステップ207では、ソースIPアドレス及びソースMACアドレスに基づいて、端末に関連付けられているリクエストが生成される。端末に関連付けられている一致するエントリがローカル検証テーブルの中で見つからないとの決定を受けて、以下で更に詳しく説明されるように、DHCPリクエストが生成される。
【0044】
ステップ208では、リクエストがDHCPサーバに伝送される。
【0045】
以下は、端末用の一致するエントリがローカルSAVIバインディングテーブルの中で見つけられないかもしれない2つの筋書き例である。
【0046】
1.端末は、同じワイヤレスローカルエリアネットワークの中で(例えば、同じDHCPサーバ環境の中で又はプライマリ−スタンバイ関係を有する二重のライブDHCPサーバの中で)、古い検証デバイスに関連付けられているエリアから、新しい検証デバイスに関連付けられている別のエリアへローミングを行っており、IPアドレスを再取り出しするためにDHCPリクエストを実行していない。
【0047】
2.検証デバイスは、再起動されており、その結果、再起動前に保存されたSAVIバインドテーブルエントリが喪失されたかもしれない。
【0048】
端末に関連付けられている一致するエントリが、ローカルSAVIバインディングテーブルの中で見つけられない場合には(すなわち、ローカルに保存されたSAVIバインドテーブルが、パケットに含まれるソースIPアドレスを含むエントリを格納していない場合)、検証デバイスは、端末に代わってDHCPリクエストを生成し、当該DHCPリクエストをDHCPサーバに送信する。様々な実施形態において、DHCPリクエストは、DHCPリクエストが実際は検証デバイスによって生成されて伝送されるときに、パケットの中に含まれるソースIPアドレス及びソースMACアドレスをDHCPリクエストに含めてあたかも該リクエストが端末から送信されているかのように「模倣」することによって、端末に代わって検証サーバによって生成される。
【0049】
例えば、パケットに含まれるソースIPアドレス値及びソースMACアドレス値は、DHCPリクエストの中の様々なフィールド内の値として使用される。以下は、DHCPリクエストの中の主要フィールドの例を挙げたものであり、パケットに含まれるソースIPアドレス又はソースMACアドレスのいずれかを含有するフィールドについては、その旨が注記されている。
【0050】
Dst MAC FF:FF:FF:FF:FF:FF
【0051】
Src MAC パケットに含まれるソースMACアドレス
【0052】
Type 0x0800
【0053】
Src IP パケットに含まれるソースIPアドレス
【0054】
Dst IP 255.255.255.255
【0055】
Protocol 17
【0056】
Src Port 68
【0057】
Dst Port 67
【0058】
Message Type 0x01
【0059】
Hardware Type 0x01
【0060】
HLEN 0x06
【0061】
HOPS 0x00
【0062】
XID 乱数値
【0063】
SECS 0x00
【0064】
FLAGS 0x00
【0065】
CIADDR パケットに含まれるソースIPアドレス
【0066】
YIADDR 0x00000000
【0067】
SIADDR 0x00000000
【0068】
GIADDR 0x00000000
【0069】
CHADDR パケットに含まれるソースMACアドレス
【0070】
Option53 0x35 01 03
【0071】
Option61 0x37 0d 01+パケットに含まれるソースMACアドレス
【0072】
Option51 0x33 04 00 76 a7 00
【0073】
Option255 0xff
【0074】
ゲートウェイプログラムがDHCPリレーモードに構成され、「Dst IP」フィールドの値として「255.255.255.255」を含む場合、DHCPリクエストは、ゲートウェイに、リクエストパケットをDHCPサーバに転送させる。たとえゲートウェイプログラムがDHCPリレーモードに構成されず、DHCPサーバが同じサブネット内にあることを意味していても、DHCPリクエストは、「Dst IP」フィールドの値として「255.255.255.255」を伴うように構成されているので、DHCPリクエストはやはり、DHCPサーバに転送される。上記の例に示されるように、端末から受信されたパケットに含まれているソースIPアドレス及びソースMACアドレスは、検証デバイスによって生成されるDHCPリクエストの中の幾つかのフィールドの値として含まれる。上記例のDHCPリクエストの中の、パケットからのソースIPアドレス値を含むフィールドは、「Src IP」及び「CIADDR」である。上記例のDHCPリクエストの中の、パケットからのソースMACアドレス値を含むフィールドは、「Src MAC」、「CHADDR」及び「Option61」である。また、生成されたDHCPリクエストが、サーバ識別子(DHCPサーバID)オプション又はリクエストIPアドレスオプションを含有しないことが留意されるべきである。なぜならば、DHCPリクエストがサーバIDオプション又はリクエストIPアドレスオプションを有するときは、DHCPサーバが新しいIPアドレスを端末に割り振って、それを記録するからである。DHCPサーバは、割り振られたIPアドレスと、対応するMACアドレスと、割り振られたIPアドレスの有効期限との間の対応関係などの情報を格納する。DHCPリクエストが、サーバ識別子(DHCPサーバID)オプション及びリクエストIPアドレスオプションを含有しない場合、DHCPサーバは、新しいIPアドレスを端末に割り振ることをしない。その代わりに、DHCPサーバは、DHCPリクエストに含有されているCIADDRフィールドの値(パケットに含まれるソースIPアドレス)及びCHADDRフィールドの値(パケットに含まれるソースMACアドレス)に対応する記録がDHCPサーバによって格納されているかどうかを決定する。DHCPサーバに記録されている既存のエントリが、CIADDRフィールドのIPアドレスに一致するIPアドレスを含み、このIPアドレスが、そのエントリの有効期限(例えばリース期間)内である場合、このことは、CIADDRフィールドのIPアドレスが有効であることを示し、DHCPサーバは、ACK(又は他の何らかの肯定応答)を検証デバイスに返す。そうではなく、DHCPサーバに記録されているエントリに、CIADDRフィールドのIPアドレスに一致するIPアドレスを含むエントリがない場合には、このことは、CIADDRフィールドのIPアドレスが有効ではないことを示し、DHCPサーバは、検証デバイスにNAK(又は何らかのその他の非肯定応答)を返す又は何の応答も伝送しない。例えば、DHCPサーバが、DHCPリクエストのCIADDRフィールドのIPアドレスに関係した記録を有さない、又はDHCPリクエストのCIADDRフィールドのIPアドレスと、DHCPリクエストのCHADDRフィールドのMACアドレスとの間の対応関係が、DHCPサーバに記録されている既存のエントリにおけるIPアドレスとMACアドレスとの間の対応関係に一致しない、又はDHCPリクエストのCIADDRフィールドのIPアドレスが、その有効期限を過ぎているなどの場合も、DHCPサーバは、DHCPリクエストに対してNAKを送信する又は何の応答も送信しないことができる。
【0075】
したがって、端末によるDHCPサーバへのDHCPリクエストの伝送を模倣することによって、DHCPサーバの応答に基づいて、パケットに含まれるIPソースアドレス及びMACソースアドレスの有効性が決定できる。
【0076】
また、それぞれの検証テーブルを同期化するために複数の検証デバイス間でTCP接続が必要とされる従来のシステムとは対照的に、様々な実施形態で説明されるようなDHCPに関係した通信は、例えばユーザデータグラムプロトコル(UDP)などのコネクションレスプロトコルに基づく。このように、コネクションレスプロトコルを使用することによって、本書で説明されるような様々な実施形態は、そうでなければ(例えばTCP)接続を維持するために使用されていただろうリソースを節約することができる。
【0077】
ステップ210では、端末に関連付けられているソースIPアドレス及びソースMACアドレスが有効であるか否かが、DHCPサーバからの応答に少なくとも部分的に基づいて決定される。
【0078】
上述のように、DHCPリクエストに応えてDHCPサーバから肯定応答が受信される場合は、DHCPリクエストに含まれていた、パケットからのソースIPアドレス及びソースMACアドレスは、有効であると決定される。しかしながら、DHCPサーバから非肯定応答が受信される又は何の応答も受信されない場合は、DHCPリクエストに含まれていた、パケットからのソースIPアドレス及びソースMACアドレスは、無効であると決定される。
【0079】
一部の実施形態では、DHCPリクエストがDHCPサーバに伝送された時点から計時を開始でき、DHCPサーバから返される肯定応答が既定の長さの時間内に受信される場合、端末のソースIPアドレス及びソースMACアドレスは、有効であると決定される。しかしながら、既定の長さの時間内に応答が受信されない又は既定の長さの時間内に非肯定応答が受信されるならば、端末のソースIPアドレス及びソースMACアドレスは、無効であると見なされる。
【0080】
一部の実施形態では、端末によるDHCPサーバへのDHCPリクエストの伝送が検証デバイスによって模倣されているので(例えば、実際は、模倣されたDHCPリクエストが検証デバイスからDHCPサーバに送信されているので)、この模倣リクエストを端末によって実際に伝送されるDHCPリクエストから区別するために、伝送された模倣リクエストのために模倣記録が確立できる。模倣記録は、DHCPリクエストに含まれていた(、パケットからの)ソースIPアドレス及びソースMACアドレス、並びに模倣DHCPリクエストの識別子を記録するために使用できる。続いて、DHCPサーバによって返された応答(例えば肯定応答)の受信を受けて、応答に含まれる識別子が、模倣記録に含まれる識別子に一致するか否か、その結果、応答が、伝送された模倣DHCPリクエストに関するものであるか否かが決定される。例えば、DHCPリクエストの識別子は、DHCPトランザクションIDであることができる。応答の識別子(例えばDHCPトランザクションID)が、模倣記録に含まれる識別子(例えばDHCPトランザクションID)に一致すると決定される場合、受信された応答は、伝送された模倣DHCPリクエストへの応答であると決定される。伝送された模倣DHCPリクエストへの応答が受信されたと決定されると、応答は端末に伝送されず、一致する模倣記録は削除される。応答の識別子が、模倣記録に含まれるいずれの識別子にも一致しないと決定される場合、受信された応答は、伝送された模倣DHCPリクエストへの応答ではないと決定され、この結果、応答は、(実際に端末によってDHCPサーバに伝送されたと想定されるので、)端末に伝送される。この模倣記録を使用することによって、応答がまだ受信されていない模倣DHCPリクエストを追跡することが可能であり、また、伝送された模倣DHCPリクエストを実際に端末によって伝送されたDHCPリクエストから区別することも可能である。模倣記録の使用は、また、端末からのDHCPリクエストの伝送を検証デバイスが模倣するプロセスを、端末に対して透過的にもできる。
【0081】
様々な実施形態において、DHCPサーバによって返された肯定応答が受信されると、パケットのソースIPアドレス及びソースMACアドレスが有効であると決定することに加えて、パケットを伝送した端末のために、パケットのソースIPアドレス及びソースMACアドレスを含む新しいSAVIバインドテーブルエントリが確立及び保存できる。端末に対応するソースIPアドレス及びソースMACアドレスを含むSAVIバインドテーブルエントリを生成することによって、このバインドテーブルエントリに基づいて直接的に、端末から受信される(ソースIPアドレス及びソースMACアドレスを含む)後続のパケットが検証できる。
【0082】
一部の実施形態では、パケットのソースIPアドレス及びソースMACアドレスの有効性を決定する前に、パケットがバッファに格納される。パケットのソースIPアドレス及びソースMACアドレスを含む模倣DHCPリクエストに応えてDHCPサーバから肯定応答が受信される場合は、バッファに格納されたパケットは、その宛先に伝送できる。しかしながら、代わりに、DHCPサーバから非肯定応答が受信される又は何の応答も受信されない場合、バッファに格納されたパケットは破棄できる、又は認証要求メッセージが端末に送信できる、及び/又は検証デバイスが関係付けられている現ネットワーク接続から端末が切断できる。
【0083】
図3は、端末のソースアドレスの有効性を検証するためのプロセスの一例を示すフローチャートである。一部の実施形態では、プロセス300は、図1のシステム100で実施される。具体的には、一部の実施形態では、プロセス300は、図1のシステム100の検証デバイス106で実施される。一部の実施形態では、図2のプロセス200のステップ202〜210が、プロセス300によって実現できる。
【0084】
ステップ302では、端末からパケットが受信され、当該パケットは、端末に関連付けられているソースIPアドレス及びソースMACアドレスを含む。
【0085】
ステップ304では、パケットがバッファに格納される。一部の実施形態では、バッファへのパケットの格納は、パケットをローカルな一時的な格納場所に格納することを言う。パケットがその宛先に転送されるか否かは、後述のように、端末に関連付けられているソースIPアドレス及びソースMACアドレスが有効であると決定されるか否かに依存する。
【0086】
ステップ306では、端末に関連付けられている一致するエントリがローカルSAVIバインディングテーブルの中で見つかるか否かが決定される。ローカルSAVIバインドテーブルは、プロセス300を実施している検証デバイスによって格納されている。端末に関連付けられている一致するエントリがローカルSAVIバインドテーブルの中で見つからない場合は、制御はステップ308に移行される。そうではなく、端末に関連付けられている一致するエントリがローカルSAVIバインドテーブルの中で見つかる場合は、制御はステップ322に移行され、そこでは、端末に関連付けられているソースIPアドレス及びソースMACアドレスが有効であることが決定され、パケットはバッファから取り出され、パケットに関連付けられている宛先に送信される。
【0087】
ステップ308では、DHCPリクエストが生成され、DHCPサーバに伝送される。DHCPリクエストは、ソースIPアドレス及びソースMACアドレスを含む。端末によるDHCPサーバへのDHCPリクエストの伝送は、検証デバイスによって模倣され、検証デバイスは、パケットからのソースIPアドレス及びソースMACアドレスを伴うDHCPリクエストを生成し、当該DHCPリクエストをDHCPサーバに送信する。
【0088】
ステップ310では、DHCPリクエストに対応する模倣記録が生成されて格納される。模倣記録は、DHCPリクエストに関連付けられている識別子(例えばDHCPトランザクションID)を含む。様々な実施形態において、模倣記録は、検証デバイスに格納される。
【0089】
ステップ312では、DHCPリクエストの伝送から既定の長さの時間が経過したか否かが決定される。一部の実施形態では、既定の長さの時間は、管理ユーザによって決定される。既定の長さの時間が経過していない場合は、制御はステップ312に戻される。そうではなく、既定の長さの時間が経過した場合は、制御はステップ314に移行される。
【0090】
ステップ314では、DHCPサーバから肯定応答が受信されたか否かが決定される。例えば、肯定応答は、ACKである。一部の実施形態では、DHCPサーバからの肯定応答は、DHCPリクエストからのソースIPアドレス及びソースMACアドレスの少なくともいずれかを含む記録をDHCPサーバが格納していることを示す。したがって、DHCPリクエストからのソースIPアドレス及びソースMACアドレスは、有効であると決定される。DHCPサーバから肯定応答が受信された場合は、制御はステップ318に戻される。そうではなく、DHCPサーバから肯定応答が受信されていない(例えば、既定の長さの時間内に非肯定応答(例えばNAK)が受信された、既定の長さの時間後に非肯定応答(例えばNAK)が受信された、又は既定の長さの時間内に何の応答も受信されなかった)場合は、制御はステップ326に移行される。したがって、DHCPリクエストからのソースIPアドレス及びソースMACは、無効であると決定される。
【0091】
ステップ318では、DHCPリクエストに対応する模倣記録が削除される。肯定応答に関連付けられている識別子(例えばDHCPトランザクションID)が、模倣記録に格納されているDHCPリクエストの識別子(例えばDHCPトランザクションID)と比較される。一致する場合、模倣DHCPリクエストへの応答が受信されたことが確認されたので、模倣記録は削除できる。更に、応答が、(端末によって伝送された実際のDHCPリクエストではなく)模倣DHCPリクエストへのものであると確認された場合は、DHCPサーバからの応答は、端末に伝送されない。
【0092】
ステップ320では、端末に関連付けられているソースIPアドレス及びソースMACアドレスを含む新しいエントリが、ローカルSAVIバインドテーブルの中に生成される。
【0093】
ステップ322では、パケットがバッファから取り出され、パケットに関連付けられている宛先に送信される。端末に関連付けられているソースIPアドレス及びソースMACアドレスが有効であると決定されると、パケットを送信した端末は、検証されたと想定され、パケットは、バッファから取り出され、(例えばパケットによって特定された)宛先に送信される。
【0094】
ステップ326では、パケットがバッファから取り除かれる。端末に関連付けられているソースIPアドレス及びソースMACアドレスは、無効であると決定されるので、パケットを送信した端末は検証されず、したがって、バッファは最終的に空にされ、パケットは結果として破棄される。
【0095】
一部の実施形態では、パケットが転送されるか又は破棄されるかが、ログに記録される。
【0096】
図4は、検証デバイスの第1の実施形態を示す図である。図4の例に示されるように、検証デバイス400は、決定ユニット410と、模倣伝送ユニット420と、有効性検証ユニット430とを含む。
【0097】
ユニットは、1つ以上のプロセッサ上で実行されるソフトウェアコンポーネントとして、プログラマブルロジックデバイスなどのハードウェアとして、及び/又は特殊用途向け集積回路として実装できる。設計された要素は、本発明の実施形態で説明される方法を(パソコン、サーバ、ネットワーク機器などの)コンピュータデバイスに実行させるための幾つかの命令を含み尚且つ(光ディスク、フラッシュストレージデバイス、モバイルハードディスクなどの)不揮発性のストレージ媒体に格納できるソフトウェア製品の形で具現化できる。ユニットは、1つのデバイス上に実装されてよい、又は複数のデバイスに分散されてよい。
【0098】
決定ユニット410は、端末によって伝送されたパケットを受信するように構成されている。パケットは、端末のソースIPアドレス及びソースMACアドレスを含む。決定ユニット410は、ローカル検証(例えばSAVIバインド)テーブルが、パケットのソースIPアドレスに一致するIPアドレスを格納するエントリを含むかどうかを決定するように構成されている。
【0099】
ローカルSAVIバインドテーブルが、パケットのソースIPアドレスに一致するIPアドレスを格納するエントリを含まない場合は、模倣伝送ユニット420は、端末からDHCPサーバへのDHCPリクエストの伝送を模倣するように構成されている。様々な実施形態において、模倣伝送ユニット420は、リクエストの中の1つ以上のフィールド内にパケットからのソースIPアドレス及びソースMACアドレスを伴うDHCPリクエストを生成し、該リクエストをDHCPサーバに送信することによって、端末からDHCPサーバへのDHCPリクエストの伝送を模倣するように構成されている。
【0100】
有効性検証ユニット430は、端末に関連付けられているソースIPアドレス及びソースMACアドレスが有効であるかどうかを、DHCPサーバからの応答に基づいて決定するように構成されている。
【0101】
図5は、検証デバイスの第2の実施形態を示す図である。図5の例に示されるように、検証デバイス500は、決定ユニット510と、模倣伝送ユニット520と、有効性検証ユニット530と、タイマーユニット540とを含む。
【0102】
決定ユニット510は、図4のシステム400の決定ユニット410と同様に実装できる。模倣伝送ユニット520は、図4のシステム400の模倣伝送ユニット420と同様に実装できる。
【0103】
タイマーユニット540は、DHCPリクエストがDHCPサーバに伝送されてから経過した時間の長さを追跡するように構成されている。
【0104】
有効性検証ユニット530は、図4のシステム400の有効性検証ユニット430と同様に実装できる。また、有効性検証ユニット530は、既定の長さの時間内にDHCPサーバから肯定応答が受信される場合、パケットに含まれるソースIPアドレス及びソースMACアドレスが有効であると決定するように構成されている。そうではなく、既定の長さの時間内にDHCPサーバから非肯定応答が受信される又は何の応答も受信されない場合、有効性検証ユニット530は、パケットに含まれるソースIPアドレス及びソースMACアドレスが無効であると決定するように構成されている。
【0105】
図6は、検証デバイスの第3の実施形態を示す図である。図6の例に示されるように、検証デバイス600は、決定ユニット610と、模倣伝送ユニット620と、有効性検証ユニット630と、模倣記録ユニット650と、照合ユニット660と、削除ユニット670とを含む。
【0106】
決定ユニット610は、図4のシステム400の決定ユニット410と同様に実装できる。模倣伝送ユニット620は、図4のシステム400の模倣伝送ユニット420と同様に実装できる。有効性検証ユニット630は、図4のシステム400の有効性検証ユニット430と同様に実装できる。
【0107】
模倣記録ユニット650は、模倣伝送ユニット620によって生成されたDHCPリクエスト用に模倣記録を確立するように構成されている。
【0108】
照合ユニット660は、DHCPサーバからの肯定応答がDHCPリクエストに対応する応答であるか否かを、確立された模倣記録の照合によって決定するように構成されている。
【0109】
削除ユニット670は、DHCPサーバからの応答が模倣記録に一致する場合、模倣記録を削除するように構成されている。
【0110】
図7は、検証デバイスの第4の実施形態を示す図である。図7の例に示されるように、検証デバイス700は、決定ユニット710と、模倣伝送ユニット720と、有効性検証ユニット730と、バインドテーブルエントリ確立・保存ユニット780とを含む。
【0111】
決定ユニット710は、図4のシステム400の決定ユニット410と同様に実装できる。模倣伝送ユニット720は、図4のシステム400の模倣伝送ユニット420と同様に実装できる。有効性検証ユニット730は、図4のシステム400の有効性検証ユニット430と同様に実装できる。
【0112】
DHCPサーバによって返された、模倣DHCPリクエストに対応する肯定応答の受信に応えて、バインドテーブルエントリ確立・保存ユニット780は、端末に関連付けられているソースIPアドレス及びソースMACアドレスを含む新しいエントリを端末のためにローカルSAVIバインドテーブルの中に確立及び保存するように構成されている。
【0113】
図8は、検証デバイスの第5の実施形態を示す図である。図8の例に示されるように、検証デバイス800は、決定ユニット810と、模倣伝送ユニット820と、有効性検証ユニット830と、バッファユニット890と、伝送ユニット895とを含む。
【0114】
決定ユニット810は、図4のシステム400の決定ユニット410と同様に実装できる。模倣伝送ユニット820は、図4のシステム400の模倣伝送ユニット420と同様に実装できる。
【0115】
バッファユニット890は、パケットをバッファに格納するように構成されている。
【0116】
DHCPリクエストに応えてDHCPサーバから肯定応答が受信される場合は、伝送ユニット895は、バッファからパケット(そのソースIPアドレス及びソースMACアドレスは上記DHCPリクエストに含まれている)を取り出し、その宛先(例えば、パケットに含まれている宛先IPアドレス及び/又は宛先MACアドレス)に伝送するように構成されている。
【0117】
有効性検証ユニット830は、図4のシステム400の有効性検証ユニット430と同様に実装できる。また、有効性検証ユニット830は、既定の長さの時間内にDHCPサーバから肯定応答が受信される場合、パケットに含まれるソースIPアドレス及びソースMACアドレスが有効であると決定するように構成されている。そうではなく、既定の長さの時間内にDHCPサーバから非肯定応答が受信される又は何の応答も受信されない場合、有効性検証ユニット830は、パケットに含まれるソースIPアドレス及びソースMACアドレスが無効であると決定するように構成され、それに対応して、バッファユニット890は、端末のパケットを破棄し、認証要求メッセージを端末に伝送するように構成されている。
【0118】
上述のように、端末に関連付けられているソースIPアドレス及びソースMACアドレスは、検証デバイスを使用した、端末からDHCPサーバへのDHCPリクエストの伝送の模倣に基づいて、有効性を検証される。端末に関連付けられているソースアドレスに対して検証を実施する様々な実施形態は、(例えば複数の検証デバイスによって管理されている)SAVIバインドテーブルエントリを同期化するための追加チャネルの確立を必要としない。このようなチャネルの使用を回避することによって、ネットワーク構成が簡略化される。端末に代わってDHCPリクエストの伝送を模倣するプロセスは、端末に対して透過的でもあり、したがって、端末から送信される又は端末によって受信される通常の通信が邪魔されることはない。
【0119】
図9は、端末のソースアドレスの有効性を検証するためのプログラムドコンピュータシステムの一実施形態を示す機能図である。端末のソースアドレスの有効性を検証するために、その他のコンピュータシステムアーキテクチャ及びコンピュータシステム構成が使用できることが明らかである。後述のような様々なサブシステムを含むコンピュータシステム900は、少なくとも1つのマイクロプロセッササブシステム(プロセッサ又は中央演算処理装置(CPU)とも呼ばれる)902を含む。例えば、プロセッサ902は、シングルチッププロセッサによって又は複数のプロセッサによって実現できる。一部の実施形態では、プロセッサ902は、コンピュータシステム900の動作を制御する汎用デジタルプロセッサである。メモリ910から取り出された命令を使用して、プロセッサ902は、入力データの受信及び操作、並びに出力デバイス(例えばディスプレイ918)へのデータの出力及び表示を制御する。
【0120】
プロセッサ902は、メモリ910に双方向に接続され、メモリ910は、通常はランダムアクセスメモリ(RAM)である第1の一次ストレージエリアと、通常は読み出し専用メモリ(ROM)である第2の一次ストレージエリアとを含むことができる。当該分野で周知のように、一次ストレージは、一般的ストレージエリアとして及びスクラッチパッドメモリとして使用でき、入力データ及び処理済みデータを格納するためにも使用できる。一次ストレージは、プログラミング命令及びデータも、プロセッサ902上で起きるプロセスのためのその他のデータ及び命令に加えてデータオブジェクト及びテキストオブジェクトの形態で格納することができる。やはり当該分野で周知のように、一次ストレージは、通常は、プロセッサ902がその機能(例えば、プログラムされた命令)を実施するために使用する基本的な動作命令、プログラムコード、データ、及びオブジェクトを含む。例えば、メモリ910は、例えば、データアクセスが双方向又は単方向のいずれである必要があるかに応じて、後述される任意の適切なコンピュータ読み取り可能ストレージ媒体を含むことができる。例えば、プロセッサ902は、頻繁に必要とされるデータを直接的に且つ非常に迅速に取り出してキャッシュメモリ(不図示)に格納することもできる。
【0121】
着脱式大容量ストレージデバイス912が、コンピュータシステム900のための追加のデータストレージ容量を提供し、双方向(読み出し/書き込み)又は単方向(読み出しのみ)のいずれかでプロセッサ902に接続される。例えば、ストレージ912は、磁気テープ、フラッシュメモリ、PCカード、携帯型大容量ストレージデバイス、ホログラフィックストレージデバイス、及びその他のストレージデバイスなどの、コンピュータ読み取り可能媒体を含むこともできる。例えば、固定大容量ストレージ920も、追加のデータストレージ容量を提供することができる。固定大容量ストレージ920として最も一般的な例は、ハードディスクドライブである。大容量ストレージ912及び920は、一般に、プロセッサ902によって通常は能動的に使用されていない追加のプログラミング命令やデータなどを格納する。大容量ストレージ912及び920に保持される情報は、必要に応じて、仮想メモリとしてメモリ910(例えばRAM)の一部として標準的に組み込めることがわかる。
【0122】
バス914は、プロセッサ902に、ストレージサブシステムへのアクセスを提供することに加えて、その他のサブシステム及びデバイスへのアクセスを提供するためにも使用できる。図に示されるように、これらは、ディスプレイ918、ネットワークインターフェース916、キーボード904、及びポインティングデバイス908はもちろん、必要に応じて、補助入出力デバイスインターフェース、サウンドカード、スピーカ、及びその他のサブシステムを含むことができる。例えば、ポインティングデバイス908は、マウス、スタイラス、トラックボール、又はタブレットであることができ、グラフィカルユーザインターフェースとのやり取りに有用である。
【0123】
ネットワークインターフェース916は、図に示されるようにネットワーク接続を使用してプロセッサ902が別のコンピュータ、コンピュータネットワーク、又は電気通信ネットワークに接続されることを可能にする。例えば、ネットワークインターフェース916を通じて、プロセッサ902は、方法/プロセスのステップを実施する過程で別のネットワークから情報(例えばデータオブジェクト若しくはプログラム命令)を受信する又は別のネットワークに情報を出力することができる。情報は、プロセッサ上で実行される一連の命令として表されることが多く、別のネットワークから受信できる又は別のネットワークに出力できる。コンピュータシステム900を外部ネットワークに接続するために及びデータを標準プロトコルにしたがって転送するために、インターフェースカード又は類似のデバイス、及びプロセッサ902によって実装される(例えば、プロセッサ902上で実行される/実施される)適切なソフトウェアが使用できる。例えば、本書で開示される様々なプロセス実施形態は、プロセッサ902上で実行できる、又は処理の一部を共有するリモートプロセッサと協働してインターネット、イントラネットネットワーク、若しくはローカルエリアネットワークなどのネットワークで実施できる。プロセッサ902には、ネットワークインターフェース916を通じて追加の大容量ストレージデバイス(不図示)も接続できる。
【0124】
コンピュータシステム900と協働して、補助入出力デバイスインターフェース(不図示)が使用できる。補助入出力デバイスインターフェースは、プロセッサ902が、マイク、タッチセンサ式ディスプレイ、トランスデューサカードリーダ、テープリーダ、音声又は手書き認識装置、生体認証リーダ、カメラ、携帯型大容量ストレージデバイス、及びその他のコンピュータなどの他のデバイスにデータを送信することを、及び更に一般的にはこれらの他のデバイスからデータを受信することを可能にする、汎用並びに専用のインターフェースを含むことができる。
【0125】
留意すべきは、本出願が、ソフトウェア及び/又はソフトウェアとハードウェアとの組み合わせの形で実現できることである。例えば、本出願は、特殊用途向け集積回路(ASIC)、汎用コンピュータ、又はその他の類似のハードウェア機器を使用して実現できる。一部の実施形態では、本出願のソフトウェアプログラムは、上述されたステップ又は機能を実現するために、プロセッサによる実行を使用してよい。同様に、本出願のソフトウェアプログラム(関連のデータ構造を含む)は、RAMストレージデバイス、磁気又は光ドライブ、フロッピィディスク、又は類似の機器などの、コンピュータ読み取り可能な記録媒体に格納されてよい。また、本出願のステップ又は機能の一部は、例えばプロセッサと協働して様々な機能又は関数を実行する回路などのハードウェアを通じて実現されてよい。
【0126】
また、本出願の一部は、例えば、コンピュータの動作を通じてコンピュータによって実行されるときに、本出願に基づく方法及び/又は技術方式を呼び出す又は提供することができるコンピュータプログラムコマンドなどの、コンピュータプログラム製品として適用されてよい。そして、本出願の方法を呼び出すプログラムコマンドは、固定式の若しくは移動式の記録媒体に格納されてよい、及び/又はブロードキャスト媒体若しくはその他の信号キャリア媒体のデータストリームを通じて伝送されてよい、及び/又はプログラムコマンドに基づいて作動するコンピュータ機器の作業メモリに格納されてよい。ここでは、本出願に基づく一部の実施形態は、デバイスを含む。このデバイスは、コンピュータプログラムコマンドを格納するために使用されるメモリと、プログラムコマンドを実行するために使用されるプロセッサとを含み、コンピュータプログラムコマンドがプロセッサによって実行されるときに、デバイスは、本出願に基づく複数の実施形態の方法及び/又は技術方式を実行するようにトリガされる。
【0127】
当業者にならば、上述の例示的実施形態の詳細に本出願が限定されないこが明らかである。更に、本出願は、本出願の趣旨又は基本的特徴から逸脱することなくその他の具体的形態で実現できる。したがって、どのように見られるかに関わらず、全ての実施形態は、例示的であって非制限的であると見なされるべきである。本出願の範囲は、特許請求の範囲によって限定され、上記の説明によっては限定されない。したがって、特許請求の範囲の意味及び均等物範囲内に入るあらゆるヴァリエーションが、本出願に含まれるものとする。また、明らかに「を含む(comprise)」又は「を含む(include)」という用語は、その他のユニット又はステップを排除するものではなく、単数形は、複数形を排除するものではない。システムの特許請求の範囲に記載された複数のユニット又はデバイスは、1つのユニット又はデバイスによってソフトウェア又はハードウェアを通じて実現されてもよい。「第1の」、「第2の」などの用語は、呼称を目的としており、いかなる具体的順序も示していない。
【0128】
以上の実施形態は、理解を明瞭にする目的で幾らか詳細に説明されてきたが、本発明は、提供された詳細に限定されない。本発明を実現するためには、多くの代替的手法がある。開示された実施形態は、例示的なものであり、制限的なものではない。
適用例1:方法であって、
パケットを端末から受信し、前記パケットは、前記端末に関連付けられているソースインターネットプロトコル(IP)アドレス及びソースメディアアクセス制御(MAC)アドレスを含み、
前記端末に関連付けられている一致するエントリが、有効なソースIPアドレス及び有効なソースMACアドレスを格納しているローカル検証テーブルの中で見つかるか否かを決定し、
前記端末に関連付けられている前記一致するエントリが、前記ローカル検証テーブルの中で見つからないと決定し、
前記ソースIPアドレス及び前記ソースMACアドレスに基づいて、リクエストを生成し、
前記リクエストを動的ホスト構成プロトコル(DHCP)サーバに伝送し、
前記端末に関連付けられている前記ソースIPアドレス及び前記ソースMACアドレスが有効であるか否かを、前記DHCPサーバからの応答に少なくとも部分的に基づいて決定する、
ことを備える方法。
適用例2:適用例1に記載の方法であって、
前記ローカル検証テーブルは、ローカルソースアドレス有効性(SAVI)バインドテーブルを含む、方法。
適用例3:適用例1に記載の方法であって、更に、
前記端末に関連付けられている前記ソースIPアドレス及び前記ソースMACアドレスが有効であると決定される場合に、前記パケットを、前記パケットに関連付けられている宛先に伝送し、
前記端末に関連付けられている前記ソースIPアドレス及び前記ソースMACアドレスが無効であると決定される場合に、前記パケットを破棄する、
ことを備える方法。
適用例4:適用例1に記載の方法であって、更に、
前記リクエストを前記DHCPサーバに伝送する前に、前記パケットをバッファに格納し、
前記端末に関連付けられている前記ソースIPアドレス及び前記ソースMACアドレスが有効であると決定される場合に、前記パケットを前記バッファから取り出して、前記パケットに関連付けられている宛先に伝送し、
前記端末に関連付けられている前記ソースIPアドレス及び前記ソースMACアドレスが無効であると決定される場合に、前記パケットを破棄する、
ことを備える方法。
適用例5:適用例1に記載の方法であって、更に、
前記DHCPサーバからの前記応答が、前記リクエストに関連付けられ、格納されている識別子に一致するか否かを決定し、
前記DHCPサーバからの前記応答が、前記リクエストに関連付けられ、前記格納されている識別子に一致する場合に、前記応答が前記端末に伝送されるのを阻止し、
前記DHCPサーバからの前記応答が、前記リクエストに関連付けられ、前記格納されている識別子に一致しない場合に、前記応答を前記端末に伝送する、
ことを備える方法。
適用例6:適用例1に記載の方法であって、更に、
前記リクエストに関連付けられている識別子を含む模倣記録を生成し、
前記DHCPサーバからの前記応答が、前記リクエストに関連付けられている前記識別子に一致するかどうかを決定し、
前記DHCPサーバからの前記応答が、前記リクエストに関連付けられている前記識別子に一致する場合に、前記模倣記録を削除し、前記応答が前記端末に伝送されることを阻止し、
前記DHCPサーバからの前記応答が、前記リクエストに関連付けられている前記識別子に一致しない場合に、前記応答を前記端末に伝送する、
ことを備える方法。
適用例7:適用例1に記載の方法であって、
前記端末に関連付けられている前記ソースIPアドレス及び前記ソースMACアドレスが有効であるか否かを決定することは、
前記DHCPサーバからの前記応答が、前記リクエストを前記DHCPサーバに伝送してから既定の長さの時間内に受信されるか否かを決定し、
前記DHCPサーバからの前記応答が、前記リクエストを前記DHCPサーバに伝送してから前記既定の長さの時間内に受信されない場合に、前記端末に関連付けられている前記ソースIPアドレス及び前記ソースMACアドレスが無効であると決定し、
前記DHCPサーバからの前記応答が、前記リクエストを前記DHCPサーバに伝送してから前記既定の長さの時間内に受信され、前記応答が肯定を含む場合に、前記端末に関連付けられている前記ソースIPアドレス及び前記ソースMACアドレスが有効であると決定する、
ことを含む、方法。
適用例8:適用例1に記載の方法であって、更に、
前記端末に関連付けられている前記ソースIPアドレス及び前記ソースMACアドレスが有効であるか否かを決定することは、
前記DHCPサーバからの前記応答が、前記リクエストを前記DHCPサーバに伝送してから既定の長さの時間内に受信されるか否かを決定し、
前記DHCPサーバからの前記応答が、前記リクエストを前記DHCPサーバに伝送してから前記既定の長さの時間内に受信されない場合に、
前記端末に関連付けられている前記ソースIPアドレス及び前記ソースMACアドレスが無効であると決定し、
前記パケットが前記パケットに関連付けられている宛先に送信されることを阻止し、
前記DHCPサーバからの前記応答が、前記リクエストを前記DHCPサーバに伝送してから前記既定の長さの時間内に受信され、前記応答が肯定を含む場合に、前記端末に関連付けられている前記ソースIPアドレス及び前記ソースMACアドレスが有効であると決定する、
ことを含む、方法。
適用例9:適用例1に記載の方法であって、更に、
前記DHCPサーバからの前記応答が、前記リクエストを前記DHCPサーバに伝送してから既定の長さの時間内に受信されるか否かを決定し、
前記DHCPサーバからの前記応答が、前記リクエストを前記DHCPサーバに伝送してから前記既定の長さの時間内に受信されない場合に、前記端末に関連付けられている前記ソースIPアドレス及び前記ソースMACアドレスが無効であると決定し、
前記DHCPサーバからの前記応答が、前記リクエストを前記DHCPサーバに伝送してから前記既定の長さの時間内に受信され、前記応答が肯定を含む場合に、
前記端末に関連付けられている前記ソースIPアドレス及び前記ソースMACアドレスが有効であると決定し、
前記端末に関連付けられている前記ソースIPアドレス及び前記ソースMACアドレスを含む新しいエントリを、前記ローカル検証テーブルの中に生成し、
前記パケットを前記パケットに関連付けられている宛先に伝送する、
ことを備える方法。
適用例10:適用例1に記載の方法であって、更に、
前記DHCPサーバからの前記応答が非肯定を含む場合に、前記端末に関連付けられている前記ソースIPアドレス及び前記ソースMACアドレスが無効であると決定し、
前記DHCPサーバからの前記応答が肯定を含む場合に、前記端末に関連付けられている前記ソースIPアドレス及び前記ソースMACアドレスが有効であると決定する、
ことを備える方法。
適用例11:適用例1に記載の方法であって、更に、
前記DHCPサーバからの前記応答が非肯定を含む場合に、
前記端末に関連付けられている前記ソースIPアドレス及び前記ソースMACアドレスが無効であると決定し、
前記パケットが前記パケットに関連付けられている宛先に送信されることを阻止し、
前記DHCPサーバからの前記応答が肯定を含む場合に、前記端末に関連付けられている前記ソースIPアドレス及び前記ソースMACアドレスが有効であると決定する、
ことを備える方法。
適用例12:適用例1に記載の方法であって、更に、
前記DHCPサーバからの前記応答が非肯定を含む場合に、前記端末に関連付けられている前記ソースIPアドレス及び前記ソースMACアドレスが無効であると決定し、
前記DHCPサーバからの前記応答が肯定を含む場合に、
前記端末に関連付けられている前記ソースIPアドレス及び前記ソースMACアドレスが有効であると決定し、
前記端末に関連付けられている前記ソースIPアドレス及び前記ソースMACアドレスを含む新しいエントリを、前記ローカル検証テーブルの中に生成し、
前記パケットを前記パケットに関連付けられている宛先に伝送する、
ことを備える方法。
適用例13:適用例1に記載の方法であって、
前記リクエストは、サーバ識別子(DHCPサーバID)オプション又はリクエストIPアドレスオプションを伴わずに生成される、方法。
適用例14:非一時的なコンピュータ読み取り可能ストレージ媒体に実装されたコンピュータプログラム製品であって、
パケットを端末から受信するためのコンピュータ命令と、前記パケットは、前記端末に関連付けられているソースインターネットプロトコル(IP)アドレス及びソースメディアアクセス制御(MAC)アドレスを含み、
前記端末に関連付けられている一致するエントリが、有効なソースIPアドレス及び有効なソースMACアドレスを格納しているローカル検証テーブルの中で見つかるか否かを決定するためのコンピュータ命令と、
前記端末に関連付けられている前記一致するエントリが、前記ローカル検証テーブルの中で見つからないと決定するためのコンピュータ命令と
前記ソースIPアドレス及び前記ソースMACアドレスに基づいて、リクエストを生成するためのコンピュータ命令と、
前記リクエストを動的ホスト構成プロトコル(DHCP)サーバに伝送するためのコンピュータ命令と、
前記端末に関連付けられている前記ソースIPアドレス及び前記ソースMACアドレスが有効であるかどうかを、前記DHCPサーバからの応答に少なくとも部分的に基づいて決定するためのコンピュータ命令と、
を備えるコンピュータプログラム製品。
適用例15:適用例14に記載のコンピュータプログラム製品であって、更に、
前記端末に関連付けられている前記ソースIPアドレス及び前記ソースMACアドレスが有効であると決定される場合に、前記パケットを前記パケットに関連付けられている宛先に伝送し、
前記端末に関連付けられている前記ソースIPアドレス及び前記ソースMACアドレスが無効であると決定される場合に、前記パケットを破棄する、
ことを備えるコンピュータプログラム製品。
適用例16:適用例14に記載のコンピュータプログラム製品であって、更に、
前記リクエストを前記DHCPサーバに伝送する前に、前記パケットをバッファに格納し、
前記端末に関連付けられている前記ソースIPアドレス及び前記ソースMACアドレスが有効であると決定される場合に、前記パケットを前記バッファから取り出して、前記パケットに関連付けられている宛先に伝送し、
前記端末に関連付けられている前記ソースIPアドレス及び前記ソースMACアドレスが無効であると決定される場合に、前記パケットを破棄する、
ことを備えるコンピュータプログラム製品。
適用例17:適用例14に記載のコンピュータプログラム製品であって、更に、
前記DHCPサーバからの前記応答が、前記リクエストを前記DHCPサーバに伝送してから既定の長さの時間内に受信されるか否かを決定するためのコンピュータ命令と、
前記DHCPサーバからの前記応答が、前記リクエストを前記DHCPサーバに伝送してから前記既定の長さの時間内に受信されない場合に、前記端末に関連付けられている前記ソースIPアドレス及び前記ソースMACアドレスが無効であると決定するためのコンピュータ命令と、
前記DHCPサーバからの前記応答が、前記リクエストを前記DHCPサーバに伝送してから前記既定の長さの時間内に受信され、前記応答が肯定を含む場合に、
前記端末に関連付けられている前記ソースIPアドレス及び前記ソースMACアドレスが有効であると決定し、
前記端末に関連付けられている前記ソースIPアドレス及び前記ソースMACアドレスを含む新しいエントリを、前記ローカル検証テーブルの中に生成し、
前記パケットを前記パケットに関連付けられている宛先に伝送する、
ためのコンピュータ命令と、
を備えるコンピュータプログラム製品。
適用例18:適用例14に記載のコンピュータプログラム製品であって、更に、
前記DHCPサーバからの前記応答が非肯定を含む場合に、
前記端末に関連付けられている前記ソースIPアドレス及び前記ソースMACアドレスが無効であると決定し、
前記パケットが前記パケットに関連付けられている宛先に送信されること阻止する、
ためのコンピュータ命令と、
前記DHCPサーバからの前記応答が肯定を含む場合に、前記端末に関連付けられている前記ソースIPアドレス及び前記ソースMACアドレスが有効であると決定するためのコンピュータ命令と、
を備えるコンピュータプログラム製品。
適用例19:適用例14に記載のコンピュータプログラム製品であって、更に、
前記DHCPサーバからの前記応答が非肯定を含む場合に、前記端末に関連付けられている前記ソースIPアドレス及び前記ソースMACアドレスが無効であると決定するためのコンピュータ命令と、
前記DHCPサーバからの前記応答が肯定を含む場合に、
前記端末に関連付けられている前記ソースIPアドレス及び前記ソースMACアドレスが有効であると決定し、
前記端末に関連付けられている前記ソースIPアドレス及び前記ソースMACアドレスを含む新しいエントリを、前記ローカル検証テーブルの中に生成し、
前記パケットを前記パケットに関連付けられている宛先に伝送する、
ためのコンピュータ命令と、
を備えるコンピュータプログラム製品。
適用例20:システムであって、
プロセッサであって、
前記プロセッサに結合され、前記プロセッサに命令を提供するように構成されたメモリと、
を備え、
前記命令は、実行時に、前記プロセッサに、
パケットを端末から受信させ、前記パケットは、前記端末に関連付けられているソースインターネットプロトコル(IP)アドレス及びソースメディアアクセス制御(MAC)アドレスを含み、
前記端末に関連付けられている一致するエントリが、有効なソースIPアドレス及び有効なソースMACアドレスを格納しているローカル検証テーブルの中で見つかるか否かを決定させ、
前記端末に関連付けられている前記一致するエントリが、前記ローカル検証テーブルの中で見つからないと決定させ、
前記ソースIPアドレス及び前記ソースMACアドレスに基づいて、リクエストを生成させ、
前記リクエストを動的ホスト構成プロトコル(DHCP)サーバに伝送させ、
前記端末に関連付けられている前記ソースIPアドレス及び前記ソースMACアドレスが有効であるか否かを、前記DHCPサーバからの応答に少なくとも部分的に基づいて決定させる、システム。
図1
図2
図3
図4
図5
図6
図7
図8
図9