(57)【要約】  情報提供装置（３０００）は、通信装置に関する情報であり、かつその通信装置の名前解決以外に用いる情報である、通信装置情報を格納している。受信装置（２０００）は、パケット受信部（２０２０）及び送信装置情報取得部（２０４０）を有する。パケット受信部（２０２０）は、送信装置（４０００）によって送信されたパケットを受信する。送信装置情報取得部（２０４０）は、パケット受信部（２０２０）が受信したパケットの送信元である送信装置（４０００）に対応する通信装置情報を、情報提供装置（３０００）から取得する。
2014125708.tif 000002
【特許請求の範囲】
【請求項１】
パケットを送信する通信装置である送信装置によって送信されたパケットを受信するパケット受信手段と、
通信装置に関する情報であり、かつ該通信装置の名前解決以外に用いる情報である通信装置情報が格納されている情報提供装置から、前記パケットの送信元である送信装置に対応する通信装置情報を取得する送信装置情報取得手段と、
を有する受信装置。
【請求項２】
前記情報提供装置は、通信装置に対応する通信装置情報を、該通信装置の FQDN (Fully Qualified Domain Name) 又は IP (Internet Protocol) アドレスに対応する、DNS (Domain Name System) レコードの値として格納する DNS サーバであり、
前記送信装置情報取得手段は、前記送信装置の FQDN 又は IP アドレスを示す DNS クエリを用いて、該送信装置の FQDN 又は IP アドレスに対応する DNS レコードを取得することで、該送信装置に対応する通信装置情報を取得すること、
を特徴とする請求項１に記載の受信装置。
【請求項３】
前記情報提供装置から取得した前記通信装置情報に基づいて、当該受信装置による、前記送信装置に対する動作を制御する動作制御手段を有する請求項１又は２に記載の受信装置。
【請求項４】
当該受信装置は、前記パケット受信手段によって受信したパケットの全部又は一部を、別の通信装置である宛先装置へ送信する装置であり、
前記動作制御手段は、前記情報提供装置から取得した前記通信装置情報に基づいて、当該受信装置による、前記宛先装置に対する動作を制御すること、
を特徴とする請求項３に記載の受信装置。
【請求項５】
当該受信装置は、前記パケット受信手段によって受信したパケットの全部又は一部を、別の通信装置である宛先装置へ送信する装置であり、
前記情報提供装置から、前記宛先装置に対応する前記通信装置情報を取得する宛先装置情報取得手段を有する請求項１乃至４いずれか一項に記載の受信装置。
【請求項６】
前記パケット受信手段が受信するパケットは、DNS (Domain Name System) サーバを宛先とし、名前解決要求を表すパケットであり、
前記情報提供装置から、前記パケットが表している名前解決要求による、名前解決の対象となっている通信装置に対応する通信装置情報を取得する名前解決対象装置情報取得手段を有すること、
を特徴とする請求項１乃至３いずれか一項に記載の受信装置。
【請求項７】
請求項１乃至６いずれか一項に記載の受信装置、送信装置、及び情報提供装置を有するネットワークシステムであって、
前記情報提供装置は、前記通信装置情報を格納する通信装置情報格納手段を有し、
前記送信装置は、前記パケットを送信するパケット送信手段を有すること、
を特徴とするネットワークシステム。
【請求項８】
前記送信装置は、
前記パケット送信手段が送信するパケットの宛先は、前記受信装置であり、
前記受信装置の名前解決要求を、DNS (Domain Name System) サーバへ送信する名前解決要求送信手段と、
前記名前解決要求送信手段が、前記受信装置の名前解決要求を送信する前又は後において、前記受信装置に対応する前記通信装置情報を、前記情報提供装置から取得する受信装置情報取得手段を有すること、
を特徴とする請求項７に記載のネットワークシステム。
【請求項９】
前記送信装置は、前記受信装置情報取得手段によって取得された前記通信装置情報に基づいて、該送信装置による、前記受信装置に対する動作を制御する動作制御手段を有することを特徴とする請求項８に記載のネットワークシステム。
【請求項１０】
コンピュータによって実行される受信装置制御方法であって、
パケットを送信する通信装置である送信装置によって送信されたパケットを受信するパケット受信ステップと、
通信装置に関する情報であり、かつ該通信装置の名前解決以外に用いる情報である通信装置情報が格納されている情報提供装置から、前記パケットの送信元である送信装置に対応する通信装置情報を取得する送信装置情報取得ステップと、
を有する受信装置制御方法。
【請求項１１】
前記情報提供装置は、通信装置に対応する通信装置情報を、該通信装置の FQDN (Fully Qualified Domain Name) 又は IP (Internet Protocol) アドレスに対応する、DNS (Domain Name System) レコードの値として格納する DNS サーバであり、
前記送信装置情報取得ステップは、前記送信装置の FQDN 又は IP アドレスを示す DNS クエリを用いて、該送信装置の FQDN 又は IP アドレスに対応する DNS レコードを取得することで、該送信装置に対応する通信装置情報を取得すること、
を特徴とする請求項１０に記載の受信装置制御方法。
【請求項１２】
前記情報提供装置から取得した前記通信装置情報に基づいて、前記コンピュータによる、前記送信装置に対する動作を制御する動作制御ステップを有する請求項１０又は１１に記載の受信装置制御方法。
【請求項１３】
前記コンピュータは、前記パケット受信ステップによって受信したパケットの全部又は一部を、別の通信装置である宛先装置へ送信し、
前記動作制御ステップは、前記情報提供装置から取得した前記通信装置情報に基づいて、前記コンピュータによる、前記宛先装置に対する動作を制御すること、
を特徴とする請求項１２に記載の受信装置制御方法。
【請求項１４】
前記コンピュータは、前記パケット受信ステップによって受信したパケットの全部又は一部を、別の通信装置である宛先装置へ送信するコンピュータであり、
前記情報提供装置から、前記宛先装置に対応する前記通信装置情報を取得する宛先装置情報取得ステップを有する請求項１０乃至１３いずれか一項に記載の受信装置制御方法。
【請求項１５】
前記パケット受信ステップが受信するパケットは、DNS (Domain Name System) サーバを宛先とし、名前解決要求を表すパケットであり、
前記情報提供装置から、前記パケットが表している名前解決要求による、名前解決の対象となっている通信装置に対応する前記通信装置情報を取得する名前解決対象装置情報取得ステップを有すること、
を特徴とする請求項１０乃至１３いずれか一項に記載の受信装置制御方法。
【請求項１６】
受信装置、送信装置、及び情報提供装置を有するネットワークシステムを制御するネットワークシステム制御方法であって、
前記情報提供装置は、通信装置に関する情報であり、かつ該通信装置の名前解決以外に用いる情報である通信装置情報を格納しており、
当該ネットワークシステム制御方法は、
前記送信装置が、パケットを送信するパケット送信ステップと、
前記受信装置が、前記送信装置によって送信されたパケットを受信するパケット受信ステップと、
前記受信装置が、前記情報提供装置から、前記パケットの送信元である送信装置に対応する通信装置情報を、取得する送信装置情報取得ステップと、
を有するネットワークシステム制御方法。
【請求項１７】
コンピュータに、受信装置として動作する機能を持たせる受信装置制御プログラムであって、
前記コンピュータに、
パケットを送信する通信装置である送信装置によって送信されたパケットを受信するパケット受信機能と、
通信装置に関する情報であり、かつ該通信装置の名前解決以外に用いる情報である通信装置情報が格納されている情報提供装置から、前記パケットの送信元である送信装置に対応する通信装置情報を取得する送信装置情報取得機能と、
を持たせる受信装置制御プログラム。
【請求項１８】
前記情報提供装置は、通信装置に対応する前記通信装置情報を、該通信装置の FQDN (Fully Qualified Domain Name) 又は IP (Internet Protocol) アドレスに対応する、DNS (Domain Name System) レコードの値として格納する DNS サーバであり、
前記送信装置情報取得機能は、前記送信装置の FQDN 又は IP アドレスを示す DNS クエリを用いて、該送信装置の FQDN 又は IP アドレスに対応する DNS レコードを取得することで、該送信装置に対応する前記通信装置情報を取得すること、
を特徴とする請求項１７に記載の受信装置制御プログラム。
【請求項１９】
前記コンピュータに、前記情報提供装置から取得した前記通信装置情報に基づいて、前記コンピュータによる、前記送信装置に対する動作を制御する動作制御機能を持たせることを特徴とする請求項１７又は１８に記載の受信装置制御プログラム。
【請求項２０】
前記コンピュータは、前記パケット受信機能によって受信したパケットの全部又は一部を、別の通信装置である宛先装置へ送信し、
前記動作制御機能は、前記情報提供装置から取得した前記通信装置情報に基づいて、前記コンピュータによる、前記宛先装置に対する動作を制御すること、
を特徴とする請求項１９に記載の受信装置制御プログラム。
【請求項２１】
前記コンピュータは、前記パケット受信機能によって受信したパケットの全部又は一部を、別の通信装置である宛先装置へ送信し、
当該受信装置制御プログラムは、前記コンピュータに、前記情報提供装置から、前記宛先装置に対応する前記通信装置情報を取得する宛先装置情報取得機能を持たせることを特徴とする請求項１７乃至２０いずれか一項に記載の受信装置制御プログラム。
【請求項２２】
前記パケット受信機能が受信するパケットは、DNS サーバを宛先とし、名前解決要求を表すパケットであり、
当該受信装置制御プログラムは、前記コンピュータに、前記情報提供装置から、前記パケットが表している名前解決要求による、名前解決の対象となっている通信装置に対応する前記通信装置情報を取得する名前解決対象装置情報取得機能を持たせること、
を特徴とする請求項１７乃至１９いずれか一項に記載の受信装置制御プログラム。
【請求項２３】
受信装置、送信装置、及び情報提供装置を有するネットワークシステムを制御するネットワークシステム制御プログラムであって、
前記情報提供装置は、通信装置に関する情報であり、かつ該通信装置の名前解決以外に用いる情報である通信装置情報を格納しており、
当該プログラムは、
前記送信装置に、パケットを送信するパケット送信機能を持たせ、
前記受信装置に、
前記送信装置によって送信されたパケットを受信するパケット受信機能と、
前記情報提供装置から、前記パケットの送信元である送信装置に対応する通信装置情報を取得する送信装置情報取得機能と、
を持たせるネットワークシステム制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、受信装置、受信装置制御方法、受信装置制御プログラム、ネットワークシステム、ネットワークシステム制御方法、及びネットワークシステム制御プログラムに関する。
【背景技術】
【０００２】
ネットワークに接続されている通信装置を正しく運用及び統制するためには、各通信装置に関する情報を把握する必要がある。ここで、通信装置とは、PC (Personal Computer)、サーバ、携帯型計算機、又は組み込みデバイスなど、種々の計算機である。通信装置の情報とは、例えば、その通信装置の状態である。通信装置の状態とは、例えば、通信装置がどの通信プロトコルを用いて通信できる状態にあるか、などである。例えば、IP (Internet Protocol) プロトコルに関する通信装置の状態としては、IPv4 (IP version4) プロトコルを用いた通信が可能であるか、又は IPv6 (IP version6) プロトコルを用いた通信が可能であるか、などといった状態がある。【０００３】
ここで、通信装置に関する情報を把握する方法として、情報を取得する対象の通信装置に、通信装置に関する情報の提供を行う特別なアプリケーションを導入する方法が考えられる。例えば、特許文献１や２記載の技術は、通信装置に関する情報を提供するアプリケーションを通信装置に導入することで、通信装置が接続されているネットワークの構成に関する情報を把握する技術である。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００４−２６６５１９号公報
【特許文献２】特開２００８−２７８２０７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
本発明者は、パケットを送信する通信装置である送信装置に対して改良を加えることなく、その送信装置のユーザの意思を把握する必要性を見出した。送信装置のユーザの意思を把握することができれば、送信装置のユーザの意思を考慮した上で、送信装置の動作を監視したり、制御したりすることができる。【０００６】
ここで、「送信装置に改良を加えない」という条件は、送信装置の改良が難しい場合があるために必要となる。まず、送信装置の中には、アプリケーションを導入したり、OS (Operating System) を改変したりするなどの改良を加えることが難しいものがある。例えば組み込みデバイスは、アプリケーションのインストールや、OS の改変が行えない場合が多い。また、送信装置のユーザに対して、装置に改良を加える（例：アプリケーションをインストールする）ことを指示したとしても、そのユーザが指示に従って装置に改良を加えるとは限らない。そのため、ユーザが送信装置に、指示通りの改良を加えなかった場合、その送信装置のユーザの意思を、把握できなくなってしまう。【０００７】
本発明は、以上の課題を鑑みてなされたものである。本発明の目的は、パケットを送信する通信装置に対して改良を加えることなく、その通信装置を運用するユーザの意思を把握できる技術を提供することである。
【課題を解決するための手段】
【０００８】
本発明が提供する受信装置は、パケットを送信する通信装置である送信装置によって送信されたパケットを受信するパケット受信手段と、通信装置に関する情報であり、かつ該通信装置の名前解決以外に用いる情報である通信装置情報が格納されている情報提供装置から、前記パケットの送信元である送信装置に対応する通信装置情報を取得する送信装置情報取得手段を有する。【０００９】
本発明が提供する受信装置制御プログラムは、コンピュータに、本発明が提供する受信装置として動作する機能を持たせる。当該プログラムは、コンピュータに、本発明が提供する受信装置が有する各機能構成部の機能を実現させる。【００１０】
本発明が提供する受信装置制御方法は、コンピュータによって実行される。当該受信装置制御方法は、パケットを送信する通信装置である送信装置によって送信されたパケットを受信するパケット受信ステップと、通信装置に関する情報であり、かつ該通信装置の名前解決以外に用いる情報である通信装置情報が格納されている情報提供装置から、前記パケットの送信元である送信装置に対応する通信装置情報を、取得する送信装置情報取得ステップを有する。【００１１】
本発明が提供するネットワークシステム制御プログラムは、受信装置、送信装置、及び情報提供装置を有するネットワークシステムを制御する。情報提供装置は、通信装置に関する情報であり、かつ該通信装置の名前解決以外に用いる情報である通信装置情報を格納している。当該ネットワークシステム制御プログラムは、送信装置に、パケットを送信するパケット送信機能を持たせ、受信装置に、送信装置によって送信されたパケットを受信するパケット受信機能と、情報提供装置から、前記パケットの送信元である送信装置に対応する通信装置情報を、取得する送信装置情報取得機能と、を持たせる。【００１２】
本発明が提供するネットワークシステム制御方法は、受信装置、送信装置、及び情報提供装置を有するネットワークシステムを制御する制御方法である。情報提供装置は、通信装置に関する情報であり、かつ該通信装置の名前解決以外に用いる情報である通信装置情報を格納している。当該ネットワークシステム制御方法は、送信装置が、パケットを送信するパケット送信ステップと、受信装置が、送信装置によって送信されたパケットを受信するパケット受信ステップと、受信装置が、情報提供装置から、前記パケットの送信元である送信装置に対応する通信装置情報を、取得する送信装置情報取得ステップを有する。
【発明の効果】
【００１３】
本発明によれば、パケットを送信する通信装置に改良を加えることなく、その通信装置を運用するユーザの意思を把握する技術が提供される。
【図面の簡単な説明】
【００１４】
上述した目的、およびその他の目的、特徴および利点は、以下に述べる好適な実施の形態、およびそれに付随する以下の図面によってさらに明らかになる。【００１５】
【図１】実施形態１に係る受信装置を、その使用環境と共に示すブロック図である。
【図２】通信装置情報テーブルの構成を例示する図である。
【図３】受信装置のハードウエア構成を例示するブロック図である。
【図４】実施形態１に係る受信装置によって行われる処理の流れを例示するフローチャートである。
【図５】情報提供装置が DNS (Domain Name System) サーバである場合における通信装置情報テーブルの構成を例示する図である。
【図６】実施例１の想定環境において、受信装置が通常のサーバとして動作した場合の通信の流れを例示する図である。
【図７】実施例１における通信の流れを例示する第１の図である。
【図８】実施例１における通信の流れを例示する第２の図である。
【図９】実施例１における通信の流れを例示する第３の図である。
【図１０】実施例１における通信の流れを例示する第４の図である。
【図１１】実施例２における通信の流れを例示する図である。
【図１２】実施例３における通信の流れを例示する図である。
【図１３】実施形態２に係る受信装置を、その使用環境と共に示すブロック図である。
【図１４】実施形態２に係る受信装置によって行われる処理の流れを例示するフローチャートである。
【図１５】実施例４における通信の流れを例示する第４の図である。
【図１６】実施例５における通信の流れを例示する図である。
【図１７】実施例６における通信の流れを例示する図である。
【図１８】実施例７における通信の流れを例示する図である。
【図１９】実施形態３に係る受信装置を、その使用環境と共に示すブロック図である。
【図２０】実施形態３に係る受信装置によって行われる処理の流れを例示するフローチャートである。
【図２１】実施例８における通信の流れを例示する図である。
【図２２】変形例３−１に係る受信装置を、その使用環境と共に示すブロック図である。
【図２３】実施例９における通信の流れを例示する図である。
【図２４】実施形態４に係る受信装置を、その使用環境と共に示すブロック図である。
【図２５】実施形態４に係る受信装置によって行われる処理の流れを例示するフローチャートである。
【図２６】実施例１０における通信の流れを例示する図である。
【図２７】変形例４−１に係る受信装置を、その使用環境と共に示すブロック図である。
【図２８】実施例１１における通信の流れを例示する図である。
【図２９】実施形態５に係るネットワークシステムを示すブロック図である。
【図３０】実施形態５に係るネットワークシステムにおける処理の流れを例示するフローチャートである。
【図３１】実施例１２における通信の流れを例示する図である。
【図３２】実施形態６に係るネットワークシステムを示すブロック図である。
【図３３】実施形態６に係るネットワークシステムにおける処理の流れを例示するフローチャートである。
【図３４】実施例１３における通信の流れを例示する図である。
【図３５】実施形態７に係るネットワークシステムを示すブロック図である。
【図３６】実施形態７に係るネットワークシステムにおける処理の流れを例示するフローチャートである。
【図３７】実施例１５における通信の流れを例示する図である。
【図３８】変形例７−１に係るネットワークシステムを示すブロック図である。
【図３９】実施例１６における通信の流れを例示する図である。
【図４０】実施形態８に係るネットワークシステムを示すブロック図である。
【図４１】実施形態８に係るネットワークシステムにおける処理の流れを例示するフローチャートである。
【図４２】実施例１６における通信の流れを例示する図である。
【図４３】変形例８−１に係るネットワークシステムを示すブロック図である。
【図４４】実施例１７における通信の流れを例示する図である。
【発明を実施するための形態】
【００１６】
以下、本発明の実施の形態について、図面を用いて説明する。尚、すべての図面において、同様な構成要素には同様の符号を付し、適宜説明を省略する。
【００１７】
[実施形態１]
図１は、実施形態１に係る受信装置２０００を、その使用環境と共に示すブロック図である。図１において、矢印は情報の流れを示している。図１において、各ブロックは、ハードウエア単位の構成ではなく、機能単位の構成を示している。
【００１８】
＜前提条件＞
受信装置２０００は、情報提供装置３０００及び送信装置４０００と、ネットワークを介して接続されている。このネットワークは、有線回線で構成されていてもよいし、無線回線で構成されていてもよいし、有線回線と無線回線が混在して構成されていてもよい。以下、受信装置２０００、情報提供装置３０００、及び送信装置４０００を含むシステムを、ネットワークシステム５０００と表記する。
【００１９】
受信装置２０００及び送信装置４０００は、通信装置である。ここで、通信装置とは、パケットの送信又は受信を行う装置である。通信装置は、例えば PC (Personal Computer)、サーバ、携帯型計算機、又は組み込みデバイスなどである。
【００２０】
パケットとは、ネットワークを介して送信されるデータである。例えばパケットは、レイヤ３レベルのプロトコルで処理される IP (Internet Protocol) パケットや、レイヤ２レベルのプロトコルで処理されるレイヤ２フレームである。
【００２１】
情報提供装置３０００は、通信装置に対応付けて、その通信装置に関する情報である通信装置情報を格納している。通信装置情報は、通信装置のユーザの意思を反映する情報である。また、通信装置情報は、通信装置の名前解決以外に用いられる情報である。名前解決とは、ホスト名から IP (Internet Protocol) アドレスを割り出す処理、又は IP アドレスからホスト名を割り出す処理である。ただし、情報提供装置３０００は、通信装置情報に加えて、通信装置の名前解決に用いる情報を格納していてもよい。
【００２２】
例えば情報提供装置３０００は、通信装置の ID に対応付けて、通信装置情報を格納している。通信装置の ID は、例えば、通信装置のレイヤ２アドレス、レイヤ３アドレス、又は UUID (Universally Unique Identifier) などである。レイヤ２アドレスは、例えば MAC (Media Access Control Address) である。レイヤ３アドレスは、例えば、IP アドレスである。なお、IP アドレスは、IPv4 (IP version 4) アドレスでもよいし、IPv6 (IP version 6) アドレスでもよい。
【００２３】
情報提供装置３０００は、１台の装置で構成されていてもよいし、複数台の装置で構成されていてもよい。情報提供装置３０００は、例えば、PC (Personal Computer)、サーバなどである。また例えば、情報提供装置３０００は、携帯型計算機や組み込みデバイスなどであってもよい。
【００２４】
受信装置２０００は、上述した前提条件の下で動作する。以下、受信装置２０００が有する機能構成部について説明する。
【００２５】
＜パケット受信部２０２０＞
受信装置２０００は、パケット受信部２０２０を有する。パケット受信部２０２０は、送信装置４０００によって送信されたパケットを受信する。
【００２６】
受信装置２０００が送信装置４０００から受信するパケットは、受信装置２０００を宛先として送信されたパケットでもよいし、受信装置２０００以外を宛先として送信されたパケットでもよい。受信装置２０００が、受信装置２０００を宛先として送信されたパケットを受信する場合、例えば受信装置２０００は、Web サーバやメールサーバなど、送信装置４０００に対してサービスを提供するサーバである。その他にも例えば、受信装置２０００は、送信装置４０００との間で P2P (peer to peer) 通信を行う通信装置である。
【００２７】
受信装置２０００が、受信装置２０００以外を宛先として送信されたパケットを受信する場合、例えば受信装置２０００は、送信装置４０００と、送信装置４０００がパケットの宛先としている通信装置との間の通信を中継する装置である。このような装置の例として、プロキシサーバや、MTA (Mail Transfer Agent) などがある。その他にも例えば、受信装置２０００は、送信装置４０００が DNS (Domain Name System) サーバへ送信した名前解決のリクエストを表すパケットを捕獲して受信する通信装置である。以下、名前解決のリクエストを表すパケットを捕獲して受信する通信装置を、オーバライドエージェントとも表記する。オーバライドエージェントは、特願２０１１−１９３５５８に記載されている受信装置である。オーバライドエージェントに関する詳細については、上記特願２０１１−１９３５５８に記載されているため、説明を省略する。
【００２８】
＜送信装置情報取得部２０４０＞
受信装置２０００は、送信装置情報取得部２０４０を有する。送信装置情報取得部２０４０は、パケット受信部２０２０が受信したパケットの送信元である送信装置４０００に対応する通信装置情報を、情報提供装置３０００から取得する。
【００２９】
受信装置２０００は、例えば、送信装置４０００から受信したパケットに含まれる情報を用いて、情報提供装置３０００から、送信装置４０００に対応する通信装置情報を取得する。上記パケットに含まれている情報は、例えば、送信装置４０００のレイヤ２アドレスやレイヤ３アドレスである。パケットに送信装置４０００のレイヤ２アドレスやレイヤ３アドレスが含まれている場合、受信装置２０００は、このレイヤ２アドレスやレイヤ３アドレスを送信装置４０００の ID として用いて、情報提供装置３０００から、送信装置４０００に関する通信装置情報を取得する。
【００３０】
＜通信装置情報の詳細＞
通信装置情報は、例えば、通信装置情報テーブル１００として表される。通信装置情報テーブル１００は、通信装置ＩＤ１１０及び通信装置情報１２０を有する。通信装置情報１２０は、通信装置ＩＤ１１０で特定される通信装置に対応する通信装置情報を示す。
【００３１】
例えば通信装置情報は、通信装置が許可されている動作、又は許可されていない動作を示す。通信装置が許可されている動作は、その通信装置のユーザが、その通信装置に対して望んでいる動作とも言うことができる。また、通信装置が許可されていない動作は、その通信装置のユーザが、その通信装置に対して望まない動作とも言うことができる。
【００３２】
上記の場合、例えば通信装置に対応する通信装置情報は、その通信装置が通信相手としてよい別の通信装置や、その通信装置が通信相手としてはいけない別の通信装置を示す。例えば、送信装置４０００が通信相手としてよい別の通信装置を示している、送信装置４０００に対応する通信装置情報は、送信装置４０００がＥメールの宛先としてよい宛先を示すホワイトリストや、送信装置４０００がアクセスしてもよい Web サイトを示すホワイトリストなどである。また例えば、送信装置４０００が通信を行ってはいけない通信装置を示している、送信装置４０００に対応する通信装置情報は、送信装置４０００がＥメールの宛先としてはいけない宛先を示すブラックリストや、送信装置４０００がアクセスしてはいけない Web サイトを示すブラックリストなどである。
【００３３】
その他にも例えば、通信装置に対応する通信装置情報は、その通信装置が利用してよい通信プロトコル、又は利用してはいけない通信プロトコルを示す。例えば、送信装置４０００が、IP プロトコルとして、IPv6 を利用することが許可されており、IPv4 を利用することが許可されていないとする。この場合、送信装置４０００に対応する通信装置情報は、送信装置４０００が利用してよい通信プロトコルとして、IPv6 を示す。また、送信装置４０００の通信装置情報は、送信装置４０００が利用してはいけない通信プロトコルとして、IPv4 を示す。また例えば、送信装置４０００に対応する通信装置情報は、送信装置４０００が Web ページにアクセスする際に利用してもよい通信プロトコルとして HTTP over SSL/TLS (Hypertext Transfer Protocol over Secure Socket Layer / Transport Layer Security) プロトコルを示し、利用してはいけない通信プロトコルとして、HTTP プロトコルを示す。
【００３４】
その他にも例えば、通信装置に対応する通信装置情報は、その通信装置のユーザが、外部に提示したい情報であってもよい。例えば、送信装置４０００がセンサである場合に、送信装置４０００による測定の結果を、送信装置４０００に対応する通信装置情報として格納しておく。この場合、受信装置２０００は、送信装置４０００から送信されたパケットを取得した際に、送信装置４０００に対応する通信装置情報として、送信装置４０００による測定の結果を取得することができる。これにより、送信装置４０００が情報提示機能を持たない装置であったとしても、受信装置２０００は、送信装置４０００が提示したい情報を取得することができる。
【００３５】
上述の構成により、本実施形態の受信装置２０００によれば、パケットを送信した送信装置４０００に対応する通信装置情報が取得される。これにより、受信装置２０００は、取得した送信装置４０００に対応する通信装置情報に基づいて、送信装置４０００を利用するユーザの意思を把握することができる。例えば、送信装置４０００の通信装置情報が、Web アクセスの際に利用してもよい通信プロトコルとして HTTP over SSL/TLS を示し、利用してはいけない通信プロトコルとして HTTP を示しているとする。ここで、HTTP over SSL/TLS は、SSL/TLS を用いて、メッセージの暗号化などを行うことで、盗聴やなりすましを防止する通信プロトコルである。そのため、この通信装置情報は、「セキュリティが高い方法で Web アクセスを行いたい」という、送信装置４０００のユーザの意思を示している。これにより、受信装置２０００は、「セキュリティが高い方法で Web アクセスを行いたい」というユーザの意思を把握することができる。
【００３６】
＜ハードウエア構成＞
受信装置２０００が有する各機能構成部は、例えば、個々に又は複数組み合わせられた状態で、少なくとも１つのハードウエア構成要素として実現される。その他にも例えば、各機能構成部は、少なくとも１つのソフトウエア構成要素として実現される。その他にも例えば、各機能構成部は、ハードウエア構成要素とソフトウエア構成要素の組み合わせにより実現される。
【００３７】
図３は、受信装置２０００のハードウエア構成を例示するブロック図である。図３において、受信装置２０００は、バス１０２０、プロセッサ１０４０、メモリ１０６０、ストレージ１０８０、及びネットワークインタフェース１１００を有する。ただし、受信装置２０００のハードウエア構成は、図３に示す構成に限定されない。
【００３８】
バス１０２０は、プロセッサ１０４０、メモリ１０６０、ストレージ１０８０、及びネットワークインタフェース１１００が、相互にデータを送受信するためのデータ伝送路である。プロセッサ１０４０は、例えば CPU (Central Processing Unit) や GPU (Graphics Processing Unit) などの演算処理装置である。メモリ１０６０は、例えば RAM (Random Access Memory) や ROM (Read Only Memory) などのメモリである。ストレージ１０８０は、例えばハードディスク、USB (Universal Serial Bus) メモリ、又は SSD (Solid State Drive) などの記憶装置である。また、ストレージ１０８０は、RAM や ROM 等のメモリであってもよい。ネットワークインタフェース１１００は、ネットワークを介して別の装置とパケットの送受信を行うためのインタフェースである。ネットワークインタフェース１１００は、例えばネットワークインタフェースカード (NIC) である。ネットワークインタフェース１１００は、有線回線でネットワークに接続するインタフェースであってもよいし、無線回線でネットワークに接続するインタフェースであってもよい。
【００３９】
パケット受信モジュール１２２０は、受信装置２０００に、パケット受信部２０２０の機能を持たせるためのプログラムである。プロセッサ１０４０は、パケット受信モジュール１２２０を実行することで、パケット受信部２０２０の機能を実現する。
【００４０】
送信装置情報取得モジュール１２４０は、受信装置２０００に、送信装置情報取得部２０４０の機能を持たせるためのプログラムである。プロセッサ１０４０は、送信装置情報取得モジュール１２４０を実行することで、送信装置情報取得部２０４０の機能を実現する。
【００４１】
＜処理の流れ＞
図４は、実施形態１の受信装置２０００によって行われる処理の流れを例示するフローチャートである。
【００４２】
ステップＳ１０２において、パケット受信部２０２０は、送信装置４０００からパケットを受信する。ステップＳ１０４において、送信装置情報取得部２０４０は、情報提供装置３０００から、パケットの送信元である送信装置４０００に対応する通信装置情報を取得する。
【００４３】
＜送信装置４０００の詳細＞
送信装置４０００は、パケット送信部４０２０を有する。パケット送信部４０２０は、パケット受信部２０２０が受信するパケットを送信する。
【００４４】
＜情報提供装置３０００の詳細＞
情報提供装置３０００は、通信装置情報格納部３０２０を有する。通信装置情報格納部３０２０は、通信装置情報を格納する。
【００４５】
情報提供装置３０００は、例えば、DNS サーバである。その他にも例えば、情報提供装置３０００は、RDBMS (Relational Database Management System) サーバや Key-Value ストアなどのデータベースサーバなどでもよい。
【００４６】
情報提供装置３０００として DNS サーバを用いる場合、例えばこの DNS サーバは、通信装置情報を、DNS レコードの値として格納する。例えば情報提供装置３０００は、通信装置情報を、DNS の TXT レコードや PTR レコードの値として格納する。ただし、情報提供装置３０００が通信装置情報を格納するレコードは、TXT レコードや PTR レコードに限られない。上記 DNS レコードは、通信装置情報と、送信装置４０００の FQDN (Fully Qualified Domain Name) 又は IP アドレスとを対応付けて格納する。
【００４７】
図５は、DNS レコードとして実現された通信装置情報テーブル２００を示す図である。通信装置情報テーブル２００は、通信装置 ID ２１０、レコードタイプ２２０、及びレコード値２３０を有する。通信装置 ID は、FQDN 又は IP アドレスに相当する値を示す。
【００４８】
例えば、通信装置情報テーブル２００の１行目は、host1.site1.example.com. という FQDN を持つ通信装置に対応する通信装置情報を、TXT レコードのレコード値として示している。TXT レコードは、FQDN に対応付けて、文字列を格納するレコードである。
【００４９】
通信装置情報テーブル２００の２行目は、2001:0db8:0101:0001:0000:0000:0000:000A という IP アドレスを持つ通信装置に対応する通信装置情報を、PTR レコードの値として示している。PTR レコードは、IP アドレスに相当する FQDN に対応付けて、その IP アドレスを持つ計算機の FQDN を示すレコードである。そこで例えば、通信装置情報テーブル２００の２行目のように、通信装置情報を、FQDN として表現する。通信装置情報テーブル２００の２行目は、「www.site2.example.com というWeb サイトにアクセスしてはいけない」という情報を示している。FQDN は階層構造になっているため、PTR レコードを用いることで、通信装置情報に階層構造を持たせることができる。
【００５０】
送信装置情報取得部２０４０は、パケットを送信した送信装置４０００の FQDN 又は IP アドレスを示す DNS クエリを、情報提供装置３０００に対して送信する。そして、送信装置情報取得部２０４０は、このDNS クエリの応答として、情報提供装置３０００から、送信装置４０００に対応する通信装置情報を受信する。
【００５１】
例えば、情報提供装置３０００が、図５に示す通信装置情報テーブル２００を格納しているとする。この場合、送信装置情報取得部２０４０は、FQDN として host1.site1.example.com. を示す DNS クエリを情報提供装置３０００へ送信する。その結果、送信装置情報取得部２０４０は、送信装置４０００に対応する通信装置情報として、通信装置情報テーブル２００の１行目に示されている、「Ｅメールの宛先のホワイトリスト」を取得する。
【００５２】
情報提供装置３０００に対して、通信装置情報を格納する方法は様々である。例えば、情報提供装置３０００は、通信装置から、その通信装置に対応する通信装置情報の入力を受け付ける。その他にも例えば、通信装置情報は、情報提供装置３０００の管理者によって入力されてもよい。
【００５３】
下記に、受信装置２０００の具体的な動作を示す実施例を示す。以下、全ての実施例において、情報提供装置３０００はDNS サーバである。
【００５４】
＜実施例１＞
受信装置２０００が、受信装置２０００を宛先としたパケットを受信する場合の例を、実施例１として示す。実施例１において、受信装置２０００は、送信装置４０００に対してサービスを提供するサービス提供サーバ（例：Web サーバ、メールサーバなど）である。送信装置４０００は、受信装置２０００からサービスの提供を受けるクライアントである。ここで、送信装置４０００は、受信装置２０００の FQDN を知っているものの、受信装置２０００の IP アドレスを知らないと仮定する。
【００５５】
図６は、上述の想定環境において、受信装置２０００が通常のサーバとして動作した場合の通信の流れを例示する図である。ここで、図６は、受信装置２０００と送信装置４０００とが、TCP (Transmission Control Protocol) プロトコルに従って通信を行うことを仮定している。
【００５６】
まず、送信装置４０００は、DNS サーバと通信を行って、受信装置２０００の名前解決を行う。これにより、送信装置４０００は、受信装置２０００の FQDN から、受信装置２０００の IP アドレスを得る。そして、送信装置４０００は、TCP プロトコルで規定されている３ウェイハンドシェイクの手順に従い、受信装置２０００との間で TCP コネクションを開設する。その後、送信装置４０００は、受信装置２０００に対して、リクエストを示すパケットを送信する。受信装置２０００は、送信装置４０００からのリクエストに対して応答することで、送信装置４０００に対してサービスを提供する。
【００５７】
図７は、実施例１における通信の流れを例示する第１の図である。送信装置４０００は、まず、受信装置２０００の名前解決を行う。次いで、送信装置４０００は、受信装置２０００との間で TCP コネクションの開設を試みる。具体的には、送信装置４０００は、受信装置２０００に対し、SYN パケットを送信する。
【００５８】
受信装置２０００は、送信装置４０００によって送信された SYN パケットを受信する。受信装置２０００は、受信した SYN パケットに基づいて、情報提供装置３０００であるDNS サーバから、送信装置４０００に対応する通信装置情報を取得する。このように、受信装置２０００は、送信装置４０００との間で TCP コネクションを開設する際に、送信装置４０００に対応する通信装置情報を取得する。こうすることで、受信装置２０００は、送信装置４０００とのコネクション開設を完了する前に、送信装置４０００のユーザの意思を把握することができる。
【００５９】
図８は、実施例１における通信の流れを例示する第２の図である。図８において、受信装置２０００は、コネクション開設後に、送信装置４０００に対応する通信装置情報を取得する。
【００６０】
図９は、実施例１における通信の流れを例示する第３の図である。図９において、受信装置２０００は、コネクション開設後、送信装置４０００からパケットを受信した際に、送信装置４０００に対応する通信装置情報を取得する。コネクション開設後に送信装置４０００から受信するパケットは、例えば、送信装置４０００が受信装置２０００に対して送信するリクエストを示すパケットである。
【００６１】
受信装置２０００は、送信装置４０００からパケットを受信する度に、送信装置４０００に対応する通信装置情報を取得してもよい。例えば、受信装置２０００は、送信装置４０００からリクエストを示すパケットを受信する度に、そのリクエストに関連する送信装置４０００の通信装置情報を、情報提供装置３０００から取得する。こうすることで、受信装置２０００は、送信装置４０００から受信するリクエストに応じて、送信装置４０００のユーザの意思を把握することができる。
【００６２】
図１０は、実施例１における通信の流れを例示する第４の図である。図１０において、受信装置２０００と送信装置４０００は、TCP コネクションを開設せずに通信を行う。例えば、受信装置２０００と送信装置４０００は、UDP (User Datagram Protocol) プロトコルに従って、通信を行う。図１０において、受信装置２０００は、送信装置４０００からパケットを受信した際に、情報提供装置３０００から、送信装置４０００に対応する通信装置情報を取得する。
【００６３】
＜実施例２＞
パケット受信部２０２０が、前述した宛先装置を宛先とするパケットを受信する場合の例を、実施例２として示す。前述したように、宛先装置は、受信装置２０００とは異なる通信装置である。実施例２において、宛先装置は、送信装置４０００に対してサービスを提供するサーバである。送信装置４０００は、宛先装置からサービスの提供を受けるクライアントである。受信装置２０００は、送信装置４０００と宛先装置との間の通信を中継するプロキシサーバである。ここで、送信装置４０００は、宛先装置の FQDN を知っているものの、宛先装置の IP アドレスを知らないと仮定する。
【００６４】
図１１は、実施例２における通信の流れを例示する図である。まず送信装置４０００は、DNS サーバである情報提供装置３０００を利用して、宛先装置の名前解決を行う。これにより、送信装置４０００は、宛先装置の IP アドレスを取得する。次いで、送信装置４０００は、受信装置２０００との間で TCP コネクションの開設を試みる。具体的には、送信装置４０００は、受信装置２０００に対し、SYN パケットを送信する。受信装置２０００は、実施例１の図７の場合と同様に、この SYN パケットを受信した際に、送信装置４０００に対応する通信装置情報を取得する。こうすることで、受信装置２０００は、送信装置４０００と受信装置２０００との間の通信を中継する前に、送信装置４０００のユーザの意思を把握することができる。
【００６５】
ここで、受信装置２０００は、実施例１の図８の場合と同様に、送信装置４０００との間で TCP コネクションの開設を完了した際に、送信装置４０００に対応する通信装置情報を取得してもよい。また、受信装置２０００は、実施例１の図９の場合と同様に、コネクション開設後に送信装置４０００からパケットを受信した際に、送信装置４０００に対応する通信装置情報を取得してもよい。さらに、受信装置２０００は、実施例１の図１０の場合と同様に、送信装置４０００との間でコネクションを開設しなくてもよい。この場合、受信装置２０００は、実施例１の図１０と同様に、送信装置４０００からパケットを受信した際に、情報提供装置３０００から、送信装置４０００に対応する通信装置情報を取得する。
【００６６】
＜実施例３＞
パケット受信部２０２０が、名前解決の要求を受信する場合の例を実施例３として示す。実施例３において、受信装置２０００は、送信装置４０００が DNS サーバに対して送信するパケットを受信するオーバライドエージェントである。送信装置４０００は、DNS サーバに対して、名前解決対象装置の名前解決を要求する。名前解決対象装置は、送信装置４０００に対してサービスを提供するサーバである。送信装置４０００は、名前解決対象装置からサービスの提供を受けるクライアントである。送信装置４０００は、名前解決対象装置の FQDN を知っているものの、名前解決対象装置の IP アドレスを知らないと仮定する。
【００６７】
図１２は、実施例３における通信の流れを例示する図である。送信装置４０００は、DNS サーバに対して、名前解決対象装置の名前解決の要求を表すパケットを送信する。受信装置２０００は、このパケットを受信する。受信装置２０００は、このパケットを受信した際に、送信装置４０００に対応する通信装置情報を、DNS サーバである情報提供装置３０００から取得する。また、受信装置２０００は、DNS サーバに、名前解決対象装置の名前解決を依頼する。受信装置２０００が DNS サーバに名前解決対象装置の名前解決を依頼するタイミングは、情報提供装置３０００から通信装置情報を取得する前であっても、後であってもよい。
【００６８】
受信装置２０００によれば、上述した各実施例で示したように、送信装置４０００が別の通信装置と通信を行う際の通信手順の中に、「受信装置２０００が送信装置４０００に関する通信装置情報を取得する」という新たな手順が加わる。このように、受信装置２０００によれば、通信装置同士の通信に利用される新たなプロトコルが提供される。
【００６９】
＜作用・効果＞
上述の構成により、本実施形態の受信装置２０００によれば、パケットを送信した送信装置４０００に対応する通信装置情報が取得される。これにより、受信装置２０００は、取得した送信装置４０００に対応する通信装置情報に基づいて、送信装置４０００を利用するユーザの意思を把握することができる。
【００７０】
例えば、送信装置４０００の通信装置情報が、Web アクセスの際に利用してもよい通信プロトコルとして HTTP over SSL/TLS を示し、利用してはいけない通信プロトコルとして HTTP を示しているとする。ここで、HTTP over SSL/TLS は、SSL/TLS を用いて、メッセージの暗号化などを行うことで、盗聴やなりすましを防止する通信プロトコルである。そのため、この通信装置情報は、「セキュリティが高い方法で Web アクセスを行いたい」という、送信装置４０００のユーザの意思を示している。これにより、受信装置２０００は、「セキュリティが高い方法で Web アクセスを行いたい」というユーザの意思を把握することができる。
【００７１】
ここで、送信装置４０００のユーザの意思を把握する別の方法として、送信装置４０００の状態を送信装置４０００の外部から監視することで、送信装置４０００のユーザの意思を推測する方法が考えられる。例えば、送信装置４０００に対して ICMPv6 (Internet Control Message Protocol for IPv6) プロトコルで規定されている echo request メッセージを送った場合に、送信装置４０００から echo reply メッセージが返されたとする。この返答は、送信装置４０００が、IPv6 プロトコルを利用した通信が可能であることを示している。
【００７２】
しかし、送信装置４０００のユーザの意思を推測する方法では、送信装置４０００のユーザの意思を正確に把握することが難しい。例えば上述の例の場合、送信装置４０００が IPv6 プロトコルを利用できるからといって、送信装置４０００のユーザが IPv6 プロトコルを用いた通信を望んでいるとは限らない。例えばある種の OS は、OS の起動時に、IPv4 アドレスと IPv6 アドレスの両方を取得するという設定が、デフォルトでなされている。しかし現状、ユーザが実際の通信で利用する IP アドレスは IPv4 アドレスが一般的であり、ユーザは通信装置に IPv6 アドレスが割り当てられていることすら知らない場合が多い。
【００７３】
以上のように、送信装置４０００の状態を監視することで、送信装置４０００のユーザの意思を推測する方法では、送信装置４０００のユーザの意図を正確に把握することが難しい。送信装置４０００は、通信装置情報を用いて送信装置４０００を利用するユーザの意思を把握するため、送信装置４０００のユーザの意思を正確に把握することができる。
【００７４】
また、情報提供装置３０００として DNS サーバを用いる場合、以下のような多くの利点がある。第１の利点は、情報提供装置３０００が、通信装置に改良を加えることなく、種々の通信装置について、通信装置情報を格納できることである。通常、ネットワークを介して通信を行う装置は、IP アドレス及び FQDN を持つ。そして、DNS サーバは、通信装置の IP アドレスや FQDN に対応付けて、情報を格納する機能を有する。したがって、情報提供装置３０００として DNS サーバを用いることで、情報提供装置３０００は、各通信装置に改良を加えることなく、各通信装置に対応する通信装置情報を格納することができる。
【００７５】
第２の利点は、情報提供装置３０００の信頼性が高くなることである。DNS は、インターネットのインフラとして定着しているシステムである。そのため DNS は、データベース等のシステムと比較し、堅牢であると言える。したがって、情報提供装置３０００として DNS サーバを利用することで、情報提供装置３０００は、信頼性が高くなる。
【００７６】
第３の利点は、通信装置情報が格納されている場所が、容易に把握できることである。例えば、情報提供装置３０００としてデータベースサーバを用いる場合、受信装置２０００は、情報提供装置３０００の IP アドレスや FQDN を、予め知っておく必要がある。さらに、情報提供装置３０００が複数ある場合、受信装置２０００は、各通信装置に関する情報が、どの情報提供装置３０００に格納されているのかを予め知っておく必要がある。
【００７７】
これに対し、情報提供装置３０００としてDNS サーバを用いる場合、情報提供装置３０００の IP アドレスやFQDN を知らなくても、情報提供装置３０００から通信装置情報を得ることができる。これは、DNS の場合、いずれかの DNS サーバに対して情報の取得を要求すれば、DNS サーバ同士で情報をやりとりすることで、要求する情報を持つ DNS サーバが自動的に検索される、というシステムが確立されているためである。
【００７８】
第４の利点は、情報の管理責任の所在が明確になることである。DNS はゾーンと呼ばれる単位で管理されており、各ゾーンの管理者が明確に登録される仕組みとなっている。そのため、情報提供装置３０００として DNS サーバを用いることで、各通信装置情報の管理責任の所在が、その通信装置情報が格納されているゾーンの管理者であることが明確になる。したがって、情報提供装置３０００として DNS を利用することで、情報の管理責任の所在が明確になる。
【００７９】
第５の利点は、複数の通信装置に共通の通信装置情報を、容易に格納できることである。これは、DNS が階層構造を利用して情報を管理しているためである。例えば、「host1.site1.example.com.」という FQDN を持つ通信装置１と、「host2.site1.example.com.」という FQDNを持つ通信装置２があるとする。上記２つの FQDN は、「example.com.」という上位の階層が共通している。
【００８０】
そこで、上記２つの通信装置に共通する通信装置情報を、「example.com.」という FQDN に対応づけて格納する。ここで、DNS を用いて情報の検索を行うと、上位の階層から順に検索が行われる。そのため、通信装置１に対応する通信装置情報を検索した場合、及び通信装置２に対応する通信装置情報を検索した場合のどちらの場合も、「example.com.」という階層が検索される。
【００８１】
このように、DNS では、複数の FQDN に対応して、共通の検索場所が提供されている。そのため、情報提供装置３０００として DNS サーバを利用すれば、複数の通信装置に共通の通信装置情報を容易に格納できる。複数の通信装置に共通する通信装置情報は、例えば、各通信装置情報に共通するデフォルト値として扱うことができる。
【００８２】
[実施形態２]
図１３は、実施形態２に係る受信装置２０００を、その使用環境と共に示すブロック図である。図１３において、矢印は情報の流れを表している。図１３において、各ブロックは、ハードウエア単位の構成ではなく、機能単位の構成を示している。実施形態２における受信装置２０００、情報提供装置３０００及び送信装置４０００は、下記で説明する事項を除き、実施形態１における受信装置２０００、情報提供装置３０００、及び送信装置４０００とそれぞれ同様である。
【００８３】
＜動作制御部２１００＞
受信装置２０００は、動作制御部２１００を有する。動作制御部２１００は、情報提供装置３０００から取得された通信装置情報に基づいて、受信装置２０００による、送信装置４０００に対する動作を制御する。
【００８４】
例えば通信装置情報は、送信装置４０００が通信相手としてよい通信装置の一覧を示しているとする。この場合、動作制御部２１００は、送信装置４０００が通信を行おうとしている相手（例：パケットの宛先）が、送信装置４０００が通信相手としてよい通信装置の一覧に含まれているか否かを判断する。そして、送信装置４０００が通信を行おうとしている相手が、送信装置４０００が通信相手としてよい通信装置の一覧に含まれていない場合、例えば受信装置２０００は、送信装置４０００から送信されたパケットを破棄したり、送信装置４０００へエラー応答を返したりする。こうすることで、送信装置４０００は、通信装置情報に示されている相手としか、通信を行うことができなくなる。このように、通信相手を制限することで、例えば、ペアレンタルコントロール、メールの誤配送防止、通信装置が第３者に乗っ取られた場合における被害拡大の防止などが実現できる。
【００８５】
その他にも例えば、通信装置情報は、送信装置４０００が利用してもよい通信プロトコルの一覧を示しているとする。この場合、動作制御部２１００は、送信装置４０００が利用している通信プロトコルが、送信装置４０００が利用してもよい通信プロトコルの一覧に含まれているか否かを判断する。そして、送信装置４０００が利用している通信プロトコルが、送信装置４０００が利用しても良い通信プロトコルの一覧に含まれていない場合、例えば受信装置２０００は、送信装置４０００から送信されたパケットを破棄したり、送信装置４０００へエラー応答を返したりする。一方、送信装置４０００が利用している通信プロトコルが、送信装置４０００が利用しても良い通信プロトコルの一覧に含まれている場合、例えば受信装置２０００は、送信装置４０００に対して正常な応答を返す。こうすることで、送信装置４０００は、許可されている通信プロトコルを用いた通信しかできなくなる。例えば、暗号化通信を伴う通信プロトコルのみを許可することで、セキュリティを向上させることができる。
【００８６】
＜処理の流れ＞
図１４は、実施形態２の受信装置２０００によって行われる処理の流れを例示するフローチャートである。図１４において、ステップＳ１０２及びＳ１０４は、図４におけるステップＳ１０２及びＳ１０４と同様である。
【００８７】
ステップＳ２０２において、動作制御部２１００は、送信装置４０００に対応する通信装置情報に基づいて、受信装置２０００による送信装置４０００に対する動作を制御する。
【００８８】
以下、実施形態２に係る受信装置２０００の動作を、実施例を用いて説明する。
【００８９】
＜実施例４＞
パケット受信部２０２０が、受信装置２０００を宛先としたパケットを受信する場合の例を、実施例４として示す。実施例４における想定環境は、実施形態１で説明した実施例１と同様の想定環境である。さらに実施例４では、情報提供装置３０００が格納している、送信装置４０００に対応する通信装置情報は、送信装置４０００がサービスの提供を受けてもよい通信装置であるホワイトリストを示していると仮定する。
【００９０】
図１５は、実施例４における通信の流れを例示する図である。受信装置２０００は、送信装置４０００から SYN パケットを受信した際に、情報提供装置３０００であるDNS サーバから、送信装置４０００に対応する通信装置情報を取得する。そして、受信装置２０００の動作制御部２１００は、送信装置情報取得部２０４０によって受信された通信装置情報に基づいて、送信装置４０００に対する受信装置２０００の動作を制御する。
【００９１】
ここで、送信装置４０００に対応する通信情報が示しているホワイトリストの中に、受信装置２０００が含まれていないとする。この場合、例えば受信装置２０００の動作制御部２１００は、受信装置２０００を制御し、送信装置４０００に対して SYN+ACK パケットを送信しないようにする。その結果、送信装置４０００と受信装置２０００との間で TCP コネクションが開設されないため、送信装置４０００は、受信装置２０００からサービスの提供を受けることができない。一方、上記ホワイトリストの中に、受信装置２０００が含まれている場合、受信装置２０００は、送信装置４０００へ SYN+ACK パケットを送信する。このように、受信装置２０００は、通信装置情報に示されている送信装置４０００のユーザの意思に従って、送信装置４０００に対する動作を制御する。
【００９２】
＜実施例５＞
パケット受信部２０２０が受信したパケットの宛先が、前述した宛先装置である場合の例を、実施例５として示す。実施例５において、送信装置４０００はメールクライアントであり、宛先装置はメールサーバである。そして、受信装置２０００は、MTA であるとする。また、情報提供装置３０００が格納している、送信装置４０００に対応する通信装置情報は、送信装置４０００がメールを送信してもよい相手の一覧であるホワイトリストを示す情報であると仮定する。
【００９３】
図１６は、実施例５における通信の流れを例示する図である。受信装置２０００のパケット受信部２０２０は、送信装置４０００と TCP コネクションを開設した後、送信装置４０００から、メール送信のリクエストを表すパケットを受信する。
【００９４】
受信装置２０００の送信装置情報取得部２０４０は、情報提供装置３０００から、送信装置４０００に対応する通信装置情報を受信する。受信装置２０００の動作制御部２１００は、送信装置４０００によって送信されたメールの宛先が、送信装置４０００に対応する通信装置情報が示すホワイトリストに含まれているか否かを判断する。
【００９５】
送信装置４０００によって送信されたメールの宛先がホワイトリストに含まれていない場合、動作制御部２１００は、受信装置２０００が、送信装置４０００に対してエラー通知を行うようにする。一方、送信装置４０００によって送信されたメールの宛先がホワイトリストに含まれている場合、動作制御部２１００は、受信装置２０００が、送信装置４０００から受信したメール送信のリクエストを、正しいリクエストとして処理するようにする。
【００９６】
＜実施例６＞
パケット受信部２０２０が、送信装置４０００によって送信された名前解決の要求を受信する場合の例を実施例６として示す。受信装置２０００は、送信装置４０００が DNS サーバに対して送信する、名前解決の要求を表すパケットを受信するオーバライドエージェントである。送信装置４０００は、DNS サーバに対して、名前解決対象装置の名前解決を要求する。名前解決対象装置は、送信装置４０００に対してサービスを提供するサーバであり、送信装置４０００は、名前解決対象装置からサービスを受けるクライアントである。通信装置情報は、送信装置４０００が利用してよい IP プロトコルとして、IPv6 を示しているとする。送信装置４０００は、名前解決対象装置の FQDN を知っているものの、名前解決対象装置の IP アドレスを知らないと仮定する。
【００９７】
図１７は、実施例６における通信の流れを例示する図である。送信装置４０００は、DNS サーバに対して、名前解決の要求を表すパケットを送信する。受信装置２０００のパケット受信部２０２０は、このパケットを受信する。受信装置２０００の送信装置情報取得部２０４０は、送信装置４０００に対応する通信装置情報を、DNS サーバである情報提供装置３０００から取得する。
【００９８】
受信装置２０００の動作制御部２１００は、送信装置４０００が利用している IP プロトコルを割り出す。例えば動作制御部２１００は、送信装置４０００の IP アドレスの形態に基づいて、送信装置４０００が利用している IP プロトコルを割り出す。そして、動作制御部２１００は、送信装置４０００が利用している IP プロトコルが、送信装置４０００が利用してもよい IP プロトコルに該当するか否かを判断する。
【００９９】
送信装置４０００が利用している IP プロトコルが、IPv4 であったとする。この場合、送信装置４０００が利用している IP プロトコルは、通信装置情報に示されている IP プロトコルと異なる。そこで、受信装置２０００の動作制御部２１００は、受信装置２０００が、送信装置４０００に対し、名前解決が失敗したことを示すエラー応答を返すようにする。その結果、送信装置４０００は、名前解決対象装置であるサーバの IP アドレスを取得できないため、このサーバと通信することができない。
【０１００】
＜作用・効果＞
以上の構成により、実施形態２の受信装置２０００によれば、送信装置４０００に対応する通信装置情報に基づいて、受信装置２０００の、送信装置４０００に対する動作が制御される。これにより、受信装置２０００は、送信装置４０００に対して、送信装置４０００のユーザの意思を反映した動作をすることができる。
【０１０１】
＜変形例２−１＞
実施形態２に係る受信装置２０００は、以下に示す機能を有していてもよい。以下に説明する受信装置２０００を、変形例２−１の受信装置２０００と表記する。
【０１０２】
前提条件として、変形例２−１の受信装置２０００は、送信装置４０００から受信するパケットの一部又は全部を、受信装置２０００と異なる装置である宛先装置へ送信する。上述したように、例えばこのような受信装置２０００は、送信装置４０００と宛先装置との間の通信を中継する通信装置である。このような通信装置の例として、プロキシサーバや MTA などがある。
【０１０３】
変形例２−１の動作制御部２１００は、情報提供装置３０００から取得した通信装置情報に基づいて、受信装置２０００による、宛先装置に対する動作を制御する。
【０１０４】
＜実施例７＞
変形例２−１の受信装置２０００の動作を、実施例７を用いて説明する。実施例７において、送信装置４０００は Web クライアントであり、宛先装置は Web サーバである。そして、受信装置２０００は、プロキシサーバであるとする。また、情報提供装置３０００が格納している、送信装置４０００に対応する通信装置情報は、「送信装置４０００から送信されるリクエストを暗号化する必要があるか否か」に関する情報を示しているとする。
【０１０５】
図１８は、実施例７における通信の流れを例示する図である。受信装置２０００は、送信装置４０００と TCP コネクションを開設する際に、情報提供装置３０００から、送信装置４０００に対応する通信装置情報を受信する。
【０１０６】
受信装置２０００の動作制御部２１００は、送信装置４０００から受信した通信装置情報を確認する。ここで、送信装置４０００に対応する通信装置情報は、「送信装置４０００から送信されるリクエストを暗号化する必要がある」ということを示しているとする。この場合、動作制御部２１００は、受信装置２０００が、宛先装置との間で、暗号化を伴う通信を行うようにする。例えば、受信装置２０００は、宛先装置との間で、HTTP over SSL/TLS プロトコルを用いた通信を行うためのコネクションを開設する。
【０１０７】
一方、送信装置４０００に対応する通信装置情報は、「送信装置４０００から送信されるリクエストを暗号化する必要がない」ということを示しているとする。この場合、動作制御部２１００は、受信装置２０００が、宛先装置との間で、暗号化を伴わない通信を行うようにする。例えば、受信装置２０００は、宛先装置との間で、HTTP プロトコルを用いた通信を行うためのコネクションを開設する。
【０１０８】
＜作用・効果＞
以上の構成により、変形例２−１の受信装置２０００によれば、送信装置４０００に対応する通信装置情報に基づいて、受信装置２０００の、宛先装置に対する動作が制御される。これにより、受信装置２０００による、宛先装置に対する動作にも、送信装置４０００のユーザの意思が反映される。したがって、変形例２−１の受信装置２０００によれば、実施形態２の受信装置２０００と比較し、送信装置４０００の意思を反映した動作を、より柔軟に行うことができる。
【０１０９】
[実施形態３]
図１９は、実施形態３に係る受信装置２０００を、その使用環境と共に示すブロック図である。図１９において、矢印は情報の流れを表している。図１９において、各ブロックは、ハードウエア単位の構成ではなく、機能単位の構成を示している。実施形態３における受信装置２０００、情報提供装置３０００、及び送信装置４０００は、下記で説明する事項を除き、前述したいずれかの実施形態又は変形例における受信装置２０００、情報提供装置３０００、送信装置４０００とそれぞれ同様である。
【０１１０】
＜前提条件＞
実施形態３の受信装置２０００は、送信装置４０００から受信するパケットの一部又は全部を、受信装置２０００と異なる装置である宛先装置へ送信する。前述したように、例えばこのような受信装置２０００は、送信装置４０００と宛先装置との間の通信を中継する通信装置である。このような通信装置の例として、プロキシサーバや MTA などがある。
【０１１１】
＜宛先装置情報取得部２０６０＞
実施形態３の受信装置２０００は、宛先装置情報取得部２０６０を有する。宛先装置情報取得部２０６０は、宛先装置に対応する通信装置情報を、情報提供装置３０００から取得する。このように、実施形態３の受信装置２０００は、送信装置４０００に対応する通信装置情報を取得する機能に加え、宛先装置に対応する通信装置情報を取得する機能を有する。
【０１１２】
宛先装置情報取得部２０６０は、例えば宛先装置の ID を用いて、情報提供装置３０００から、宛先装置に対応する宛先装置情報を取得する。例えば宛先装置情報取得部２０６０は、パケット受信部２０２０が受信したパケットから、宛先装置の ID を抽出する。
【０１１３】
例えば、送信装置４０００が Web クライアントであり、宛先装置が Web サーバであり、受信装置２０００がプロキシサーバであるとする。この場合、受信装置２０００が送信装置４０００から受信するパケットは、送信装置４０００がアクセスしたい Web サーバである宛先装置の IP アドレスや MAC アドレスを含んでいる。そこで、宛先装置情報取得部２０６０は、送信装置４０００から受信したパケットに含まれている宛先装置の IP アドレスや MAC アドレスを、宛先装置の ID として抽出する。そして、宛先装置情報取得部２０６０は、抽出した宛先装置の ID を用いて、情報提供装置３０００から、宛先装置に対応する通信装置情報を取得する。
【０１１４】
ここで、実施形態１で説明したように、情報提供装置３０００は、例えば DNS サーバである。情報提供装置３０００が DNS サーバである場合、宛先装置情報取得部２０６０は、宛先装置のFQDN 又は IP アドレスを示す DNS クエリを、情報提供装置３０００に対して送信する。そして、宛先装置情報取得部２０６０は、このDNS クエリの応答として、情報提供装置３０００から、宛先装置に対応する通信装置情報を受信する。
【０１１５】
宛先装置に対応する通信装置情報は、例えば、実施形態１や実施形態２で示した通信装置情報である。
【０１１６】
その他にも例えば、宛先装置に対応する通信装置情報は、宛先装置の状態を表す情報である。例えば、宛先装置の通信装置情報は、宛先装置の稼働状態を、その稼働状態にある理由と共に示す。このような情報の例は、「宛先装置はメンテナンスのために停止している」という情報である。受信装置２０００は、この情報を参照することで、宛先装置と通信できないこと、及びその理由がメンテナンスであることを把握することができる。また、受信装置２０００は、宛先装置とは、しばらくの間通信が行えないということが分かる。
【０１１７】
一方、宛先装置情報を用いない場合、宛先装置と通信しようとして失敗した受信装置２０００は、宛先装置と通信できない理由を知ることができない。そのため、例えば受信装置２０００は、宛先装置と通信できないという状態が、一時的な状態なのか、しばらく続く状態なのか、などといったことを知ることができない。
【０１１８】
その他にも例えば、宛先装置情報は、宛先装置が提供するサービスの内容である。例えば、宛先装置が Web サーバであるとする。この場合、例えば宛先装置である Web サーバに関する宛先装置情報は、Web ページをクロールするクローラに対し、どの Web ページをクロールしてよいかを提示する情報である。
【０１１９】
その他にも例えば、宛先装置情報は、宛先装置が利用しているアプリケーション、宛先装置を利用する際のマナーなどを示す。
【０１２０】
＜処理の流れ＞
図２０は、実施形態３に係る受信装置２０００によって行われる処理の流れを示すフローチャートである。図２０におけるステップＳ１０２及びステップＳ１０４は、図４におけるステップＳ１０２及びＳ１０４と同様である。
【０１２１】
ステップＳ３０２において、宛先装置情報取得部２０６０は、情報提供装置３０００から、宛先装置に対応する通信装置情報を取得する。
【０１２２】
＜実施例８＞
実施形態３に係る受信装置２０００の動作例を、実施例８として示す。実施例８において、送信装置４０００はメールクライアントであり、宛先装置はメールサーバである。そして、受信装置２０００は、MTA である。また、情報提供装置３０００が格納している、宛先装置に対応する情報は、宛先装置の稼働状況を示す情報である。
【０１２３】
図２１は、実施例８における通信の流れを例示する図である。受信装置２０００は、送信装置４０００と TCP コネクションを開設した後、送信装置４０００から、リクエストを表すパケットを受信する。
【０１２４】
受信装置２０００の送信装置情報取得部２０４０は、情報提供装置３０００から、送信装置４０００に対応する通信装置情報を受信する。さらに、受信装置２０００の宛先装置情報取得部２０６０は、情報提供装置３０００から、宛先装置に対応する通信装置情報を取得する。
【０１２５】
＜作用・効果＞
以上の構成により、実施形態３の受信装置２０００によれば、送信装置４０００に対応する通信装置情報に加え、送信装置４０００がパケットの宛先としている宛先装置に対応する通信装置情報がさらに取得される。これにより、受信装置２０００は、送信装置４０００のユーザの意思に加え、宛先装置のユーザの意思も把握することができる。
【０１２６】
＜変形例３−１＞
実施形態３の受信装置２０００は、動作制御部２１００をさらに有していてもよい。この場合の受信装置２０００を、変形例３−１の受信装置２０００と表記する。図２２は、変形例３−１に係る受信装置２０００を、その使用環境と共に示すブロック図である。図２２において、矢印は情報の流れを示している。図２２において、各ブロックは、ハードウエア単位の構成ではなく、機能単位の構成を示している。
【０１２７】
動作制御部２１００は、情報提供装置３０００から受信した通信装置情報に基づいて、送信装置４０００に対する、受信装置２０００の動作を制御する。ここで、変形例３−１の受信装置２０００は、宛先装置に対応する通信装置情報も取得する。そこで、変形例３−１の受信装置２０００は、宛先装置に対応する通信装置情報に基づいて、受信装置２０００による、送信装置４０００に対する動作をさらに制御する。また、動作制御部２１００は、受信装置２０００による、宛先装置に対する動作を制御してもよい。
【０１２８】
＜実施例９＞
変形例３−１の受信装置２０００の動作例を、実施例９として説明する。実施例９の想定環境は、前述した変形例８の想定環境と同一である。
【０１２９】
図２３は、実施例９における通信の流れを示している。実施例８で説明したように、受信装置２０００の宛先装置情報取得部２０６０は、宛先装置に対応する通信装置情報を取得する。ここで、宛先装置に対応する通信装置情報には、宛先装置の稼働状況が示されている。
【０１３０】
受信装置２０００の動作制御部２１００は、取得した通信装置情報に基づいて、受信装置２０００による、送信装置４０００に対する動作又は宛先装置に対する動作を制御する。
【０１３１】
例えば、宛先装置に対応する通信装置情報が示す、宛先装置の稼働状況は、「メンテナンス中のため停止している」ということを示しているとする。この場合、受信装置２０００は、送信装置４０００に対し、宛先装置へメールを送信できないというエラー通知を返す。
【０１３２】
ここで通常、MTA は、メールサーバと通信できないという状況が一時的なものである可能性を考慮し、メールサーバへのメール送信を繰り返し試みる。一方、変形例３−１の受信装置２０００によれば、宛先装置に対応する通信装置情報を用いて、宛先装置へしばらくメールを送信できないということを知ることができる。そのため、受信装置２０００は、メールサーバへのメール送信を行わず、すぐに送信装置４０００へエラー通知を行うことができる。これにより、ネットワークに余分な負荷がかかることを防いだり、受信装置２０００が無駄な計算機資源を利用することを防いだりすることができる。
【０１３３】
その他にも例えば、宛先装置に対応する通信装置情報が示す、宛先装置の稼働状況は、「正常に稼働している」ということを示しているとする。この場合、受信装置２０００は、送信装置４０００から受信したメールを宛先装置へ送信する。
【０１３４】
＜作用・効果＞
以上の構成により、変形例３−１の受信装置２０００によれば、宛先装置に対応する通信装置情報に基づいて、受信装置２０００による、送信装置４０００に対する動作がさらに制御される。これにより、受信装置２０００による送信装置４０００に対する動作に、送信装置４０００のユーザの意思に加え、宛先装置のユーザの意思がさらに反映される。
【０１３５】
また、動作制御部２１００が、受信装置２０００による、宛先装置に対する動作を制御する機能を有するとする。この場合、受信装置２０００による宛先装置に対する動作に、送信装置４０００のユーザの意思に加え、宛先装置のユーザの意思がさらに反映される。
【０１３６】
[実施形態４]
図２４は、実施形態４に係る受信装置２０００を、その使用環境と共に示すブロック図である。図２４において、矢印は情報の流れを表している。図２４において、各ブロックは、ハードウエア単位の構成ではなく、機能単位の構成を示している。実施形態４における受信装置２０００、情報提供装置３０００、及び送信装置４０００は、下記で説明する事項を除き、前述したいずれかの実施形態又は変形例における受信装置２０００、情報提供装置３０００、送信装置４０００とそれぞれ同様である。
【０１３７】
＜前提条件＞
実施形態４のパケット受信部２０２０が受信するパケットは、DNS サーバを宛先とし、名前解決要求を表すパケットである。実施形態４の受信装置２０００は、例えば、前述したオーバライドエージェントである。ここで、パケット受信部２０２０が受信するパケットが表す名前解決要求の対象となっている装置を、名前解決対象装置と表記する。ここで、送信装置４０００が送信する名前解決の要求を表すパケットは、名前解決対象装置の FQDNを含んでいる。そのため、パケット受信部２０２０が送信装置４０００から受信するパケットには、名前解決装置のFQDN が含まれている。
【０１３８】
＜名前解決対象装置情報取得部２０８０＞
実施形態４の受信装置２０００は、名前解決対象装置情報取得部２０８０を有する。名前解決対象装置情報取得部２０８０は、情報提供装置３０００から、名前解決対象装置に対応する通信装置情報を取得する。このように、実施形態４の受信装置２０００は、送信装置４０００に対応する通信装置情報を取得する機能に加え、名前解決対象装置に対応する通信装置情報を取得する機能を有する。
【０１３９】
名前解決対象装置情報取得部２０８０は、例えば名前解決対象装置の ID を用いて、情報提供装置３０００から、名前解決対象装置に対応する通信装置情報を取得する。例えば名前解決対象装置情報取得部２０８０は、パケット受信部２０２０が受信したパケットから、名前解決装置情報宛先装置の ID を抽出する。
【０１４０】
例えば、情報提供装置３０００が、通信装置の FQDN に対応付けて、通信装置情報を格納しているとする。ここで、パケット受信部２０２０が送信装置４０００から受信するパケットは、名前解決対象装置の FQDN を含んでいる。そこで、名前解決対象装置情報取得部２０８０は、名前解決対象装置の FQDN を用いて、情報提供装置３０００から、名前解決対象装置に対応する通信装置情報を取得する。
【０１４１】
また、例えば、情報提供装置３０００が、通信装置の IP アドレスに対応付けて、通信装置情報を格納しているとする。この場合、例えば名前解決対象装置情報取得部２０８０は、DNS サーバを用いて、名前解決対象装置の FQDN から、名前解決対象装置の IP アドレスを割り出す。そして、名前解決対象装置情報取得部２０８０は、割り出した名前解決対象装置の IP アドレスを用いて、情報提供装置３０００から、名前解決対象装置に対応する通信装置情報を取得する。
【０１４２】
ここで、実施形態１で説明したように、情報提供装置３０００は、例えば DNS サーバである。情報提供装置３０００が DNS サーバである場合、名前解決対象装置情報取得部２０８０は、名前解決対象装置のFQDN 又は IP アドレスを示す DNS クエリを、情報提供装置３０００に対して送信する。そして、名前解決対象装置情報取得部２０８０は、このDNS クエリの応答として、情報提供装置３０００から、名前解決対象装置に対応する通信装置情報を受信する。
【０１４３】
名前解決対象装置に対応する通信装置情報が示す情報は、実施形態３で説明した、宛先装置情報に対応する通信装置情報と同様である。
【０１４４】
＜処理の流れ＞
図２５は、実施形態３に係る受信装置２０００によって行われる処理の流れを示すフローチャートである。図２５におけるステップＳ１０２及びステップＳ１０４は、図４におけるステップＳ１０２及びＳ１０４と同様である。
【０１４５】
ステップＳ４０２において、名前解決対象装置情報取得部２０８０は、情報提供装置３０００から、名前解決対象装置に対応する通信装置情報を取得する。
【０１４６】
＜実施例１０＞
実施形態４に係る受信装置２０００の動作例を、実施例１０として示す。実施例１０において、送信装置４０００は Web クライアントであり、名前解決対象装置は Web サーバである。そして、受信装置２０００は、オーバライドエージェントである。また、情報提供装置３０００が格納している、名前解決対象装置に対応する情報は、宛先装置の稼働状況を示す情報である。ここで、送信装置４０００は、名前解決対象装置のFQDN を知っているものの、名前解決対象装置の IP アドレスを知らないと仮定する。
【０１４７】
図２６は、実施例１０における通信の流れを例示する図である。受信装置２０００は、送信装置４０００から、名前解決要求を示すパケットを受信する。受信装置２０００の送信装置情報取得部２０４０は、情報提供装置３０００から、送信装置４０００に対応する通信装置情報を受信する。さらに、受信装置２０００の名前解決対象装置情報取得部２０８０は、情報提供装置３０００から、名前解決対象装置に対応する通信装置情報を取得する。これにより、受信装置２０００は、名前解決対象装置の稼働状況を把握することができる。
【０１４８】
＜作用・効果＞
以上の構成により、実施形態４の受信装置２０００によれば、送信装置４０００に対応する通信装置情報に加え、送信装置４０００が名前解決の要求の対象としている名前解決対象装置に対応する通信装置情報がさらに取得される。これにより、受信装置２０００は、送信装置４０００のユーザの意思に加え、名前解決対象装置のユーザの意思も把握することができる。
【０１４９】
＜変形例４−１＞
実施形態４の受信装置２０００は、動作制御部２１００をさらに有していてもよい。この場合の受信装置２０００を、変形例４−１の受信装置２０００と表記する。図２７は、変形例４−１に係る受信装置２０００を、その使用環境と共に示すブロック図である。図２７において、矢印は情報の流れを示している。図２７において、各ブロックは、ハードウエア単位の構成ではなく、機能単位の構成を示している。
【０１５０】
動作制御部２１００は、情報提供装置３０００から受信した通信装置情報に基づいて、送信装置４０００に対する、受信装置２０００の動作を制御する。ここで、変形例４−１の受信装置２０００は、名前解決対象装置に対応する通信装置情報も取得する。そこで、変形例４−１の受信装置２０００は、名前解決対象装置に対応する通信装置情報に基づいて、受信装置２０００による、送信装置４０００に対する動作をさらに制御する。
【０１５１】
＜実施例１１＞
変形例４−１に係る受信装置２０００の動作例を、実施例１１として示す。実施例１１における想定環境は、実施例１０における想定環境と同様である。
【０１５２】
図２８は、実施例１１における通信の流れを例示する図である。受信装置２０００の名前解決対象装置情報取得部２０８０が、情報提供装置３０００から、名前解決対象装置に対応する通信装置情報を取得するまでの流れは、図２６と同様である。
【０１５３】
受信装置２０００の動作制御部２１００は、取得した通信装置情報に基づいて、受信装置２０００による、送信装置４０００に対する動作を制御する。例えば、名前解決対象装置に対応する通信装置情報が示す、名前解決対象装置の稼働状況は、「メンテナンス中のため停止している」ということを示しているとする。この場合、受信装置２０００は、送信装置４０００に対し、名前解決対象装置の名前解決が失敗したことを示すエラー通知を送信する。
【０１５４】
その他にも例えば、名前解決対象装置に対応する通信装置情報が示す、名前解決対象装置の稼働状況は、「正常に稼働している」ということを示しているとする。この場合、受信装置２０００は、名前解決対象装置の名前解決を行い、その結果を送信装置４０００へ送信する。
【０１５５】
＜作用・効果＞
以上の構成により、変形例４−１の受信装置２０００によれば、名前解決対象装置に対応する通信装置情報に基づいて、受信装置２０００による、送信装置４０００に対する動作がさらに制御される。これにより、受信装置２０００による送信装置４０００に対する動作に、送信装置４０００のユーザの意思に加え、名前解決対象装置のユーザの意思がさらに反映される。
【０１５６】
[実施形態５]
図２９は、実施形態５に係るネットワークシステム５０００を示す図である。図２９において、矢印は、情報の流れを示している。図２９において、各ブロックは、ハードウエア単位の構成ではなく、機能単位の構成を示している。実施形態５における受信装置２０００、情報提供装置３０００、及び送信装置４０００は、下記で説明する事項を除き、前述したいずれかの実施形態又は変形例における受信装置２０００、情報提供装置３０００、送信装置４０００とそれぞれ同様である。
【０１５７】
前述した各実施形態及び各変形例では、受信装置２０００が、情報提供装置３０００から、通信装置情報を取得していた。実施形態５のネットワークシステム５０００では、受信装置２０００だけでなく、送信装置４０００も、情報提供装置３０００から、通信装置情報を取得する。
【０１５８】
実施形態５の送信装置４０００は、パケット送信部４０２０、名前解決要求送信部４０４０、及び受信装置情報取得部４０６０を有する。以下、これらの機能構成部について説明する。
【０１５９】
＜パケット送信部４０２０＞
パケット送信部４０２０は、受信装置２０００を宛先として、パケットを送信する。
【０１６０】
＜名前解決要求送信部４０４０＞
名前解決要求送信部４０４０は、DNS サーバに対し、受信装置２０００の名前解決要求を送信する。送信装置４０００は、名前解決要求送信部４０４０による名前解決要求の結果から、受信装置２０００の IP アドレスを取得する。パケット送信部４０２０は、この IP アドレスを用いて、受信装置２０００に対し、パケットを送信する。
【０１６１】
ここで、DNS サーバは、ネットワークシステム５０００の外部にある DNS サーバであってもよいし、ネットワークシステム５０００の内部にある DNS サーバでもよい。また、情報提供装置３０００が DNS サーバである場合、名前解決要求送信部４０４０は、情報提供装置３０００に対して、受信装置２０００の名前解決を要求してもよい。
【０１６２】
＜受信装置情報取得部４０６０＞
受信装置情報取得部４０６０は、名前解決要求送信部４０４０が受信装置２０００の名前解決要求を送信する前又は後において、情報提供装置３０００から、受信装置２０００に対応する通信装置情報を取得する。受信装置に対応する通信装置情報は、例えば、実施形態４で説明した名前解決対象装置に対応する通信装置情報と同様である。
【０１６３】
＜処理の流れ＞
図３０は、実施形態５に係るネットワークシステム５０００における処理の流れを例示するフローチャートである。図３０の左側は、送信装置４０００による処理の流れを示している。一方、図３０の右側は、受信装置２０００による処理の流れを示している。ここで、受信装置２０００による処理の流れは、実施形態１で説明した図４に示されている流れと同様である。
【０１６４】
ステップＳ５０２において、受信装置情報取得部４０６０は、情報提供装置３０００から、受信装置２０００に対応する通信装置情報を取得する。ステップＳ５０４において、名前解決要求送信部４０４０は、DNS サーバに対し、受信装置２０００の名前解決の要求を送信する。ステップＳ５０６において、パケット送信部４０２０は、受信装置２０００に対し、パケットを送信する。
【０１６５】
＜実施例１２＞
実施形態５におけるネットワークシステム５０００の動作を、実施例１２として示す。実施例１２において、送信装置４０００は Web クライアントであり、受信装置２０００は、Web サーバである。また、情報提供装置３０００は、DNS サーバである。また、情報提供装置３０００が格納している、受信装置２０００に対応する情報は、受信装置２０００の稼働状況を示す情報である。ここで、送信装置４０００は、受信装置２０００の FQDN を知っているものの、受信装置２０００の IP アドレスを知らないと仮定する。
【０１６６】
図３１は、実施例１２における通信の流れを例示する図である。送信装置４０００の受信装置情報取得部４０６０は、情報提供装置３０００から、受信装置２０００に対応する通信装置情報を取得する。次に、送信装置４０００の名前解決要求送信部４０４０は、DNS サーバである情報提供装置３０００を用いて、受信装置２０００の名前解決を行う。その後、送信装置４０００のパケット送信部４０２０は、受信装置２０００に対して、リクエストを示すパケットを送信する。このような流れで処理が行われることにより、送信装置４０００は、受信装置２０００に対してリクエストを送信する前に、受信装置２０００が利用できるか否かを知ることができる。
【０１６７】
さらに、受信装置２０００のパケット受信部２０２０は、送信装置４０００から、パケットを受信する。そして、受信装置２０００の送信装置情報取得部２０４０は、情報提供装置３０００から、送信装置４０００に対応する通信装置情報を取得する。そして、受信装置２０００は、送信装置４０００に対して、応答を返す。
【０１６８】
＜作用・効果＞
以上の構成により、実施形態５のネットワークシステム５０００によれば、送信装置４０００により、受信装置２０００に対応する通信装置情報が取得される。これにより、送信装置４０００は、受信装置２０００のユーザの意思を把握することができる。
【０１６９】
[実施形態６]
図３２は、実施形態６に係るネットワークシステム５０００を示すブロック図である。図３２において、矢印は、情報の流れを示している。図３２において、各ブロックは、ハードウエア単位の構成ではなく、機能単位の構成を示している。実施形態６のネットワークシステム５０００は、下記で説明する事項を除き、実施形態５のネットワークシステム５０００と同様である。
【０１７０】
実施形態６の送信装置４０００は、動作制御部４０８０を有する。動作制御部４０８０は、受信装置２０００に対応する通信装置情報に基づいて、パケット送信部４０２０又は名前解決要求送信部４０４０の動作を制御する。
【０１７１】
例えば、受信装置２０００に対応する通信装置情報は、受信装置２０００の稼働状況を示しているとする。この場合、例えば動作制御部４０８０は、受信装置２０００の稼働状況に応じて、受信装置２０００に対してパケットを送信するか否かを決定し、パケット受信部２０２０又は送信装置情報取得部２０４０を制御する。そのほかにも例えば、受信装置２０００に対応する通信装置情報は、受信装置２０００が利用可能な通信プロトコルであるとする。この場合、例えば動作制御部４０８０は、送信装置４０００が、受信装置２０００が利用可能な通信プロトコルを利用するように、パケット送信部４０２０を制御する。
【０１７２】
＜処理の流れ＞
図３３は、実施形態６に係るネットワークシステム５０００における処理の流れを例示するフローチャートである。ここで、ステップＳ６０２以外の処理は、実施形態５で説明した図３０に示されている処理と同様である。
【０１７３】
ステップＳ６０２において、送信装置４０００の動作制御部４０８０は、受信装置に対応する通信装置情報に基づいて、パケット送信部４０２０又は名前解決要求送信部４０４０の動作を制御する。
【０１７４】
なお、図３３は、ステップＳ６０２より後の処理の流れとして、図３０と同様の流れを示している。しかし、ステップＳ６０２における、動作制御部４０８０による制御の結果によって、ステップＳ６０２より後の処理の流れは変わる場合がある。例えば、動作制御部４０８０は、送信装置４０００が受信装置２０００に対してパケットを送信しないように、パケット送信部４０２０を制御したとする。この場合、ステップＳ５０４及びそれより後の処理は行われない。
【０１７５】
＜実施例１３＞
実施形態６におけるネットワークシステム５０００の動作を、実施例１３として示す。実施例１３における想定環境は、実施形態５で説明した実施例１２における装置環境と同様である。
【０１７６】
図３４は、実施例１２における通信の流れを例示する図である。送信装置４０００の受信装置情報取得部４０６０は、情報提供装置３０００から、受信装置２０００に対応する通信装置情報を取得する。そして、送信装置４０００の動作制御部４０８０は、取得した通信装置情報に基づいて、名前解決要求送信部４０４０の動作を制御する。
【０１７７】
例えば、受信装置２０００に対応する通信装置情報が示す、受信装置２０００の稼働状況は、「メンテナンス中のため停止している」ということを示しているとする。この場合、送信装置４０００は、名前解決要求送信部４０４０が、受信装置２０００の名前解決要求を送信しないようにする。これにより、通信できない受信装置２０００の IP アドレスを取得するという、無駄な処理が行われることを防ぐことができる。
【０１７８】
一方、受信装置２０００に対応する通信装置情報が示す、受信装置２０００の稼働状況は、「正常に稼働している」ということを示しているとする。この場合、動作制御部４０８０は、名前解決要求送信部４０４０が、受信装置２０００の名前解決の要求を送信するようにする。
【０１７９】
＜作用・効果＞
以上の構成により、実施形態６のネットワークシステム５０００によれば、受信装置２０００に対応する通信装置情報に基づいて、送信装置４０００の動作が制御される。これにより、送信装置４０００の動作に、受信装置２０００のユーザの意思が反映される。
【０１８０】
[実施形態７]
図３５は、実施形態７に係るネットワークシステム５０００を示すブロック図である。図３５において、矢印は情報の流れを表している。図３５において、各ブロックは、ハードウエア単位の構成ではなく、機能単位の構成を示している。
【０１８１】
本実施形態において、受信装置２０００は、情報提供装置３０００から通知された送信装置４０００の ID を用いて、送信装置４０００に対応する通信装置情報を取得する。以下、詳細に説明する。
【０１８２】
＜送信装置４０００＞
送信装置４０００は、前述した各実施形態及び変形例の送信装置４０００と同様に、パケット送信部４０２０を有する。パケット送信部４０２０が送信するパケットは、受信装置２０００の名前解決を要求するパケットである。また、このパケットは、送信装置４０００の ID を含んでいる。
【０１８３】
送信装置４０００の ID は、例えば、送信装置４０００の FQDN、IP アドレス、又は MAC アドレスなどである。
【０１８４】
＜情報提供装置３０００＞
情報提供装置３０００は、通信装置情報格納部３０２０、パケット受信部３０４０、及び送信装置 ID 通知部３０６０を有する。通信装置情報格納部３０２０は、前述した各実施形態及び変形例のいずれかにおける通信装置情報格納部３０２０と同様である。
【０１８５】
パケット受信部３０４０は、パケット送信部４０２０によって送信されたパケットを受信する。
【０１８６】
送信装置 ID 通知部３０６０は、パケット受信部３０４０が受信したパケットに含まれている送信装置４０００の ID を、受信装置２０００へ通知する。
【０１８７】
＜受信装置２０００＞
受信装置２０００は、送信装置 ID 受信部２１２０及び送信装置情報取得部２０４０を有する。送信装置 ID 受信部２１２０は、情報提供装置３０００の送信装置 ID 通知部３０６０から、送信装置４０００の ID を受信する。送信装置情報取得部２０４０は、送信装置 ID 受信部２１２０が受信した送信装置４０００の ID を用いて、情報提供装置３０００から、送信装置４０００に対応する通信装置情報を取得する。
【０１８８】
＜処理の流れ＞
図３６は、実施形態７に係るネットワークシステム５０００における処理の流れを例示するフローチャートである。図３６の左側は、送信装置４０００における処理の流れを示しており、図３６の中央は、情報提供装置３０００における処理の流れを表しており、図３６の右側は、受信装置２０００における処理の流れを表している。図３６において、点線の矢印は、情報の流れを表している。
【０１８９】
ステップＳ７０２において、送信装置４０００は、名前解決要求を示すパケットを送信する。
【０１９０】
ステップＳ７０４において、情報提供装置３０００は、送信装置４０００によって送信された、名前解決要求を示すパケットを受信する。ステップＳ７０６において、情報提供装置３０００は、受信装置２０００に対して、送信装置４０００の ID を通知する。
【０１９１】
ステップＳ７０８において、受信装置２０００は、情報提供装置３０００から、送信装置４０００の ID を受信する。ステップＳ７１０において、受信装置２０００は、情報提供装置３０００から通知された送信装置４０００の ID を用いて、情報提供装置３０００から、送信装置４０００に対応する通信装置情報を取得する。
【０１９２】
＜実施例１４＞
実施形態７におけるネットワークシステム５０００の動作を、実施例１４として示す。実施例１４において、送信装置４０００は Web クライアントであり、受信装置２０００は、Web サーバである。また、情報提供装置３０００は、DNS サーバである。また、情報提供装置３０００が格納している、送信装置４０００に対応する通信装置情報は、送信装置４０００がアクセスしてもよい Web サーバを示すホワイトリストである。ここで、送信装置４０００は、受信装置２０００の FQDN を知っているものの、受信装置２０００の IP アドレスを知らないと仮定する。
【０１９３】
図３７は、実施例１４における通信の流れを例示する図である。送信装置４０００は、情報提供装置３０００に対して、受信装置２０００の名前解決を要求する。情報提供装置３０００は、送信装置４０００から、上記名前解決の要求を受信する。情報提供装置３０００は、受信装置２０００に対して送信装置４０００の ID を通知する。ここで、情報提供装置３０００が、受信装置２０００に対して送信装置４０００の ID を通知するタイミングは、情報提供装置３０００が名前解決の処理を終える前でもよいし、終えた後でもよい。
【０１９４】
受信装置２０００は、情報提供装置３０００から受信した送信装置４０００の ID を用いて、送信装置４０００に対応する通信装置情報を取得する。その後、受信装置２０００は、送信装置４０００からのリクエストを受信する。
【０１９５】
＜作用・効果＞
以上により、本実施形態によれば、受信装置２０００は、情報提供装置３０００から通知された送信装置４０００の ID を用いて、送信装置４０００に対応する通信装置情報を取得する。これにより、受信装置２０００は、送信装置４０００のユーザの意思を把握することができる。
【０１９６】
＜変形例７−１＞
実施形態７の受信装置２０００は、動作制御部２１００を有してもよい。動作制御部２１００を有する実施形態７の受信装置２０００を、変形例７−１の受信装置２０００と表記する。図３８は、変形例７−１に係るネットワークシステム５０００を示すブロック図である。図３８において、矢印は情報の流れを示している。図３８において、各ブロックは、ハードウエア単位の構成ではなく、機能単位の構成を示している。変形例７−１の動作制御部２１００は、実施形態２の動作制御部２１００と同様に、送信装置４０００に対応する通信装置情報に基づいて、受信装置２０００を制御する。
【０１９７】
＜実施例１５＞
変形例７−１におけるネットワークシステム５０００の動作を、実施例１５として示す。実施例１５における想定環境は、実施例１４における想定環境と同様である。
【０１９８】
図３９は、実施例１５における通信の流れを示している。受信装置２０００は、情報提供装置３０００から取得した、送信装置４０００に対応する通信装置情報に基づいて、送信装置４０００からのリクエストに応答する方法を変える。例えば、送信装置４０００に対応する通信装置情報が示す、送信装置４０００がアクセスしてもよい Webサーバのホワイトリストに、受信装置２０００が含まれていないとする。この場合、例えば受信装置２０００は、送信装置４０００に対して、応答を返さない。また例えば、受信装置２０００は、送信装置４０００に対して、リクエストに応える応答を返す。
【０１９９】
送信装置４０００に対応する通信装置情報が示す、送信装置４０００がアクセスしてもよい Webサーバのホワイトリストに、受信装置２０００が含まれているとする。この場合、受信装置２０００は、送信装置４０００からのリクエストを処理し、送信装置４０００に対して応答を返す。
【０２００】
このように、受信装置２０００は、送信装置４０００のユーザの意思を反映した動作を行うことができる。
【０２０１】
＜作用・効果＞
以上により、本実施形態によれば、受信装置２０００による、送信装置４０００に対する動作に、送信装置４０００のユーザの意思が反映される。
【０２０２】
[実施形態８]
図４０は、実施形態８に係るネットワークシステム５０００を示すブロック図である。図４０において、矢印は情報の流れを示している。図４０において、各ブロックは、ハードウエア単位の構成ではなく、機能単位の構成を示している。
【０２０３】
実施形態８のネットワークシステム５０００は、名前解決対象装置６０００を有する。名前解決対象装置６０００は、送信装置４０００が DNS サーバに対して要求する名前解決の対象となる装置である。実施形態８のネットワークシステム５０００では、名前解決対象装置６０００が、送信装置４０００に対応する通信装置情報を取得する。
【０２０４】
＜情報提供装置３０００＞
情報提供装置３０００は、実施形態７及び変形例７−１を除く、前述した各実施形態及び変形例のいずれかにおける情報提供装置３０００と同様である。
【０２０５】
＜送信装置４０００＞
パケット送信部４０２０は、名前解決対象装置６０００の名前解決の要求を示すパケットを送信する。このパケットは、送信装置４０００の ID を含んでいる。送信装置４０００の ID は、例えば、送信装置４０００の FQDN、IP アドレス、又は MAC アドレスなどである。
【０２０６】
＜受信装置２０００＞
受信装置２０００は、パケット受信部２０２０及び送信装置 ID 通知部２１４０を有する。パケット受信部２０２０は、送信装置４０００によって送信されたパケットを受信する。
【０２０７】
送信装置 ID 通知部２１４０は、パケット受信部２０２０が受信したパケットに含まれている送信装置４０００の ID を、名前解決対象装置６０００へ通知する。
【０２０８】
本実施形態の受信装置２０００は、送信装置４０００によって送信された名前解決要求を受信する。例えば受信装置２０００は、前述したオーバライドエージェントである。また、受信装置２０００は、DNS サーバであってもよい。ただしこの場合、受信装置２０００は、情報提供装置３０００とは異なる DNS サーバである。
【０２０９】
＜名前解決対象装置６０００＞
名前解決対象装置６０００は、送信装置 ID 受信部６０２０及び送信装置情報取得部６０４０を有する。送信装置 ID 受信部６０２０は、受信装置２０００から、送信装置４０００の ID を受信する。
【０２１０】
送信装置情報取得部６０４０は、送信装置 ID 受信部６０２０によって受信された送信装置４０００の ID を用いて、情報提供装置３０００から、送信装置４０００に対応する通信装置情報を取得する。
【０２１１】
＜処理の流れ＞
図４１は、実施形態８に係るネットワークシステム５０００による処理の流れを例示するフローチャートである。図４１の左側は、送信装置４０００における処理の流れを示しており、図４１の中央は、受信装置２０００における処理の流れを表しており、図４１の右側は、名前解決対象装置６０００における処理の流れを表している。図４１において、点線の矢印は、情報の流れを表している。
【０２１２】
ステップＳ８０２において、送信装置４０００は、名前解決対象装置６０００の名前解決要求を示すパケットを送信する。
【０２１３】
ステップＳ８０４において、受信装置２０００は、送信装置４０００によって送信された、名前解決要求を示すパケットを受信する。ステップＳ８０６において、受信装置２０００は、名前解決対象装置６０００に対して、送信装置４０００の ID を通知する。
【０２１４】
ステップＳ８０８において、名前解決対象装置６０００は、受信装置２０００から、送信装置４０００の ID を受信する。ステップＳ８１０において、名前解決対象装置６０００は、受信装置２０００から通知された送信装置４０００の ID を用いて、情報提供装置３０００から、送信装置４０００に対応する通信装置情報を取得する。
【０２１５】
＜実施例１６＞
実施形態８におけるネットワークシステム５０００の動作を、実施例１６として示す。実施例１６において、送信装置４０００は Web クライアントであり、名前解決対象装置６０００は Web サーバである。受信装置２０００は、オーバライドエージェントである。情報提供装置３０００は、DNS サーバである。また、情報提供装置３０００が格納している、送信装置４０００に対応する通信装置情報は、送信装置４０００がアクセスしてもよい Web サーバを示すホワイトリストである。ここで、送信装置４０００は、名前解決対象装置６０００の FQDN を知っているものの、名前解決対象装置６０００の IP アドレスを知らないと仮定する。
【０２１６】
図４２は、実施例１６における通信の流れを示している。送信装置４０００は、名前解決対象装置６０００の名前解決要求を示すパケットを送信する。
【０２１７】
受信装置２０００は、このパケットを受信する。そして、受信装置２０００は、名前解決対象装置６０００に対して、このパケットに含まれている送信装置４０００の ID を通知する。
【０２１８】
名前解決対象装置６０００は、受信装置２０００から、送信装置４０００の ID を受信する。名前解決対象装置６０００は、この ID を用いて、情報提供装置３０００から、送信装置４０００に対応する通信装置情報を取得する。
【０２１９】
受信装置２０００は、情報提供装置３０００に、名前解決対象装置６０００の名前解決を依頼する。その結果、受信装置２０００は、情報提供装置３０００から、名前解決対象装置６０００の IP アドレスを取得する。そして、受信装置２０００は、送信装置４０００へ、名前解決対象装置６０００の IP アドレスを通知する。
【０２２０】
送信装置４０００は、受信装置２０００から取得した名前解決対象装置６０００の IP アドレスを用いて、名前解決対象装置６０００へリクエストを送信する。
【０２２１】
以上の流れにより、名前解決対象装置６０００は、送信装置４０００からリクエストを受信する前に、送信装置４０００のユーザの意図を把握することができる。
【０２２２】
ここで、受信装置２０００が名前解決対象装置６０００に対して送信装置４０００の ID を通知するタイミングは、受信装置２０００が情報提供装置３０００に対して名前解決の要求を送信する前でもよいし、後でもよい。
【０２２３】
＜作用・効果＞
以上の構成のより、本実施形態によれば、名前解決対象装置６０００は、送信装置４０００のユーザの意思を把握することができる。
【０２２４】
＜変形例８−１＞
実施形態８のネットワークシステム５０００において、名前解決対象装置６０００は、以下に示す機能をさらに有していてもよい。名前解決対象装置６０００が以下に示す機能をさらに有する実施形態８のネットワークシステム５０００を、変形例８−１のネットワークシステム５０００と表記する。図４３は、変形例８−１に係るネットワークシステム５０００を示すブロック図である。図４３において、矢印は情報の流れを示している。図４３において、各ブロックは、ハードウエア単位の構成ではなく、機能単位の構成を示している。
【０２２５】
＜動作制御部６０６０＞
名前解決対象装置６０００は、動作制御部６０６０を有する。動作制御部６０６０は、送信装置４０００に対応する通信装置情報に基づいて、名前解決対象装置６０００による、送信装置４０００に対する動作を制御する。
【０２２６】
動作制御部６０６０が名前解決対象装置６０００を制御する方法は、例えば、上述した各実施形態及び変形例において、動作制御部２１００が受信装置２０００の動作を制御する方法と同様である。
【０２２７】
＜実施例１７＞
変形例８−１におけるネットワークシステム５０００の動作を、実施例１７として示す。実施例１７における想定環境は、実施例１６における想定環境と同様である。
【０２２８】
図４４は、実施例１７における通信の流れを示している。実施例１７における想定環境は、実施例１６における想定環境と同様である。
【０２２９】
名前解決対象装置６０００は、情報提供装置３０００から取得した、送信装置４０００に対応する通信装置情報に基づいて、送信装置４０００からのリクエストに応答する方法を変える。例えば、送信装置４０００に対応する通信装置情報が示す、送信装置４０００がアクセスしてもよい Webサーバのホワイトリストに、名前解決対象装置６０００が含まれていないとする。この場合、例えば名前解決対象装置６０００は、送信装置４０００に対して、応答を返さない。また例えば、名前解決対象装置６０００は、送信装置４０００に対して、エラー応答を返す。
【０２３０】
送信装置４０００に対応する通信装置情報が示す、送信装置４０００がアクセスしてもよい Webサーバのホワイトリストに、名前解決対象装置６０００が含まれているとする。この場合、名前解決対象装置６０００は、送信装置４０００からのリクエストを処理し、送信装置４０００に対して、リクエストに応える応答を返す。
【０２３１】
このように、名前解決対象装置６０００は、送信装置４０００のユーザの意思を反映した動作を行うことができる。
【０２３２】
＜作用・効果＞
以上により、本実施形態によれば、名前解決対象装置６０００による、送信装置４０００に対する動作に、送信装置４０００のユーザの意思が反映される。
【０２３３】
以上、図面を参照して本発明の実施形態について述べたが、これらは本発明の例示であり、上記実施形態の組み合わせ、及び上記実施形態以外の様々な構成を採用することもできる。
【０２３４】
以下、参考形態の例を付記する。
１．  パケットを送信する通信装置である送信装置によって送信されたパケットを受信するパケット受信手段と、
通信装置に関する情報であり、かつ該通信装置の名前解決以外に用いる情報である通信装置情報が格納されている情報提供装置から、前記パケットの送信元である送信装置に対応する前記通信装置情報を取得する送信装置情報取得手段と、
を有する受信装置。
２．  前記情報提供装置は、通信装置に対応する前記通信装置情報を、該通信装置の FQDN (Fully Qualified Domain Name) 又は IP (Internet Protocol) アドレスに対応する、DNS (Domain Name System) レコードの値として格納する DNS サーバであり、
前記送信装置情報取得手段は、前記送信装置の FQDN 又は IP アドレスを示す DNS クエリを用いて、該送信装置の FQDN 又は IP アドレスに対応する DNS レコードを取得することで、該送信装置に対応する前記通信装置情報を取得すること、
を特徴とする１．に記載の受信装置。
３．  前記情報提供装置から取得した前記通信装置情報に基づいて、当該受信装置による、前記送信装置に対する動作を制御する動作制御手段を有する１．又は２．に記載の受信装置。
４．  当該受信装置は、前記パケット受信手段によって受信したパケットの全部又は一部を、別の通信装置である宛先装置へ送信する装置であり、
前記動作制御手段は、前記情報提供装置から取得した前記通信装置情報に基づいて、当該受信装置による、前記宛先装置に対する動作を制御すること、
を特徴とする３．に記載の受信装置。
５．  当該受信装置は、前記パケット受信手段によって受信したパケットの全部又は一部を、別の通信装置である宛先装置へ送信する装置であり、
前記情報提供装置から、前記宛先装置に対応する前記通信装置情報を取得する宛先装置情報取得手段を有する１．乃至４．いずれか一つに記載の受信装置。
６．  前記パケット受信手段が受信するパケットは、DNS (Domain Name System) サーバを宛先とし、名前解決要求を表すパケットであり、
前記情報提供装置から、前記パケットが表している名前解決要求による、名前解決の対象となっている通信装置に対応する前記通信装置情報を取得する名前解決対象装置情報取得手段を有すること、
を特徴とする１．乃至３．いずれか一つに記載の受信装置。
７．  １．乃至６．いずれか一つに記載の受信装置、送信装置、及び情報提供装置を有するネットワークシステムであって、
前記情報提供装置は、前記通信装置情報を格納する通信装置情報格納手段を有し、
前記送信装置は、前記パケットを送信するパケット送信手段を有すること、
を特徴とするネットワークシステム。
８．  前記送信装置は、
前記パケット送信手段が送信するパケットの宛先は、前記受信装置であり、
前記受信装置の名前解決要求を、DNS (Domain Name System) サーバへ送信する名前解決要求送信手段と、
前記名前解決要求送信手段が、前記受信装置の名前解決要求を送信する前又は後において、前記受信装置に対応する前記通信装置情報を、前記情報提供装置から取得する受信装置情報取得手段を有すること、
を特徴とする７．に記載のネットワークシステム。
９．  前記送信装置は、前記受信装置情報取得手段によって取得された前記通信装置情報に基づいて、該送信装置による、前記受信装置に対する動作を制御する動作制御手段を有することを特徴とする８．に記載のネットワークシステム。
１０．  コンピュータよって実行される受信装置制御方法であって、
パケットを送信する通信装置である送信装置によって送信されたパケットを受信するパケット受信ステップと、
通信装置に関する情報であり、かつ該通信装置の名前解決以外に用いる情報である通信装置情報が格納されている情報提供装置から、前記パケットの送信元である送信装置に対応する前記通信装置情報を取得する送信装置情報取得ステップと、
を有する受信装置制御方法。
１１．  前記情報提供装置は、通信装置に対応する前記通信装置情報を、該通信装置の FQDN (Fully Qualified Domain Name) 又は IP (Internet Protocol) アドレスに対応する、DNS (Domain Name System) レコードの値として格納する DNS サーバであり、
前記送信装置情報取得ステップは、前記送信装置の FQDN 又は IP アドレスを示す DNS クエリを用いて、該送信装置の FQDN 又は IP アドレスに対応する DNS レコードを取得することで、該送信装置に対応する前記通信装置情報を取得すること、
を特徴とする１０．に記載の受信装置制御方法。
１２．  前記情報提供装置から取得した前記通信装置情報に基づいて、前記コンピュータによる、前記送信装置に対する動作を制御する動作制御ステップを有する１０．又は１１．に記載の受信装置制御方法。
１３．  前記コンピュータは、前記パケット受信ステップによって受信したパケットの全部又は一部を、別の通信装置である宛先装置へ送信し、
前記動作制御ステップは、前記情報提供装置から取得した前記通信装置情報に基づいて、前記コンピュータによる、前記宛先装置に対する動作を制御すること、
を特徴とする１２．に記載の受信装置制御方法。
１４．  前記コンピュータは、前記パケット受信ステップによって受信したパケットの全部又は一部を、別の通信装置である宛先装置へ送信するコンピュータであり、
前記情報提供装置から、前記宛先装置に対応する前記通信装置情報を取得する宛先装置情報取得ステップを有する１０．乃至１３．いずれか一つに記載の受信装置制御方法。
１５．  前記パケット受信ステップが受信するパケットは、DNS (Domain Name System) サーバを宛先とし、名前解決要求を表すパケットであり、
前記情報提供装置から、前記パケットが表している名前解決要求による、名前解決の対象となっている通信装置に対応する前記通信装置情報を取得する名前解決対象装置情報取得ステップを有すること、
を特徴とする１０．乃至１３．いずれか一つに記載の受信装置制御方法。
１６．  受信装置、送信装置、及び情報提供装置を有するネットワークシステムを制御するネットワークシステム制御方法であって、
前記情報提供装置は、通信装置に関する情報であり、かつ該通信装置の名前解決以外に用いる情報である通信装置情報を格納しており、
当該ネットワークシステム制御方法は、
前記送信装置が、パケットを送信するパケット送信ステップと、
前記受信装置が、前記送信装置によって送信されたパケットを受信するパケット受信ステップと、
前記受信装置が、前記情報提供装置から、前記パケットの送信元である送信装置に対応する前記通信装置情報を取得する送信装置情報取得ステップと、
を有するネットワークシステム制御方法。
１７．  コンピュータに、受信装置として動作する機能を持たせる受信装置制御プログラムであって、
前記コンピュータに、
パケットを送信する通信装置である送信装置によって送信されたパケットを受信するパケット受信機能と、
通信装置に関する情報であり、かつ該通信装置の名前解決以外に用いる情報である通信装置情報が格納されている情報提供装置から、前記パケットの送信元である送信装置に対応する前記通信装置情報を取得する送信装置情報取得機能と、
を持たせる受信装置制御プログラム。
１８．  前記情報提供装置は、通信装置に対応する前記通信装置情報を、該通信装置の FQDN (Fully Qualified Domain Name) 又は IP (Internet Protocol) アドレスに対応する、DNS (Domain Name System) レコードの値として格納する DNS サーバであり、
前記送信装置情報取得機能は、前記送信装置の FQDN 又は IP アドレスを示す DNS クエリを用いて、該送信装置の FQDN 又は IP アドレスに対応する DNS レコードを取得することで、該送信装置に対応する前記通信装置情報を取得すること、
を特徴とする１７．に記載の受信装置制御プログラム。
１９．  前記コンピュータに、前記情報提供装置から取得した前記通信装置情報に基づいて、前記コンピュータによる、前記送信装置に対する動作を制御する動作制御機能を持たせることを特徴とする１７．又は１８．に記載の受信装置制御プログラム。
２０．  前記コンピュータは、前記パケット受信機能によって受信したパケットの全部又は一部を、別の通信装置である宛先装置へ送信し、
前記動作制御機能は、前記情報提供装置から取得した前記通信装置情報に基づいて、前記コンピュータによる、前記宛先装置に対する動作を制御すること、
を特徴とする１９．に記載の受信装置制御プログラム。
２１．  前記コンピュータは、前記パケット受信機能によって受信したパケットの全部又は一部を、別の通信装置である宛先装置へ送信し、
当該受信装置制御プログラムは、前記コンピュータに、前記情報提供装置から、前記宛先装置に対応する前記通信装置情報を取得する宛先装置情報取得機能を持たせることを特徴とする１７．乃至１０．いずれか一つに記載の受信装置制御プログラム。
２２．  前記パケット受信機能が受信するパケットは、DNS サーバを宛先とし、名前解決要求を表すパケットであり、
当該受信装置制御プログラムは、前記コンピュータに、前記情報提供装置から、前記パケットが表している名前解決要求による、名前解決の対象となっている通信装置に対応する前記通信装置情報を取得する名前解決対象装置情報取得機能を持たせること、
を特徴とする１７．乃至１９．いずれか一つに記載の受信装置制御プログラム。
２３．  受信装置、送信装置、及び情報提供装置を有するネットワークシステムを制御するネットワークシステム制御プログラムであって、
前記情報提供装置は、通信装置に関する情報であり、かつ該通信装置の名前解決以外に用いる情報である通信装置情報を格納しており、
当該プログラムは、
前記送信装置に、パケットを送信するパケット送信機能を持たせ、
前記受信装置に、
前記送信装置によって送信されたパケットを受信するパケット受信機能と、
前記情報提供装置から、前記パケットの送信元である送信装置に対応する前記通信装置情報を取得する送信装置情報取得機能と、
を持たせるネットワークシステム制御プログラム。
２４．  送信装置と、情報提供装置と、受信装置とを有するネットワークシステムであって、
前記送信装置は、前記受信装置の名前解決を要求するパケットであり、該送信装置の ID を含むパケットを送信するパケット送信手段を有し、
前記情報提供装置は、
前記送信装置から、前記パケットを受信するパケット受信手段と、
前記パケットに示されている前記送信装置の ID を、名前解決対象装置へ通知する送信装置 ID 通知手段と、
前記送信装置に関する情報であり、かつ該送信装置の名前解決以外に用いる情報である通信装置情報を、該送信装置の ID と対応付けて格納する通信装置情報格納手段と、を有し、
前記受信装置は、
前記情報提供装置から、前記送信装置の ID を受信する送信装置 ID 受信手段と、
受信した前記送信装置の ID に対応する前記通信装置情報を、前記情報提供装置から取得する送信装置情報取得手段と、を有すること、
を特徴とするネットワークシステム。
２５．  前記情報提供装置は、通信装置に対応する前記通信装置情報を、該通信装置の FQDN (Fully Qualified Domain Name) 又は IP (Internet Protocol) アドレスに対応する、DNS (Domain Name System) レコードの値として格納する DNS サーバであり、
前記受信装置の前記送信装置情報取得手段は、前記送信装置の FQDN 又は IP アドレスを示す DNS クエリを用いて、該送信装置の FQDN 又は IP アドレスに対応する DNS レコードを取得することで、該送信装置に対応する前記通信装置情報を取得すること、
を特徴とする２４．に記載のネットワークシステム。
２６．  前記受信装置は、前記情報提供装置から取得した前記通信装置情報に基づいて、当該受信装置による、前記送信装置に対する動作を制御する動作制御手段を有することを特徴とする２４．又は２５．に記載のネットワークシステム。
２７．  送信装置と、情報提供装置と、受信装置とを有するネットワークシステムを制御する制御方法であって、
前記情報提供装置は、前記送信装置に関する情報であり、かつ該送信装置の名前解決以外に用いる情報である通信装置情報を、該送信装置の ID と対応付けて格納する通信装置情報格納手段を有し、
前記送信装置が、前記受信装置の名前解決を要求するパケットであり、該送信装置の ID を含むパケットを送信するパケット送信ステップと、
前記情報提供装置が、前記送信装置から、前記パケットを受信するパケット受信ステップと、
前記情報提供装置が、前記パケットに示されている前記送信装置の ID を、名前解決対象装置へ通知する送信装置 ID 通知ステップと、
前記受信装置が、前記情報提供装置から、前記送信装置の ID を受信する送信装置 ID 受信ステップと、
前記受信装置が、受信した前記送信装置の ID に対応する前記通信装置情報を、前記情報提供装置から取得する送信装置情報取得ステップと、
を有するネットワークシステム制御方法。
２８．  前記情報提供装置は、通信装置に対応する前記通信装置情報を、該通信装置の FQDN (Fully Qualified Domain Name) 又は IP (Internet Protocol) アドレスに対応する、DNS (Domain Name System) レコードの値として格納する DNS サーバであり、
前記送信装置情報取得ステップは、前記送信装置の FQDN 又は IP アドレスを示す DNS クエリを用いて、該送信装置の FQDN 又は IP アドレスに対応する DNS レコードを取得することで、該送信装置に対応する前記通信装置情報を取得すること、
を特徴とする２７．に記載のネットワークシステム制御方法。
２９．  前記受信装置が、前記情報提供装置から取得した前記通信装置情報に基づいて、当該受信装置による、前記送信装置に対する動作を制御する動作制御ステップを有することを特徴とする２７．又は２８．に記載のネットワークシステム制御方法。
３０．  送信装置と、情報提供装置と、受信装置とを有するネットワークシステムを制御するネットワークシステム制御プログラムであって、
前記情報提供装置は、前記送信装置に関する情報であり、かつ該送信装置の名前解決以外に用いる情報である通信装置情報を、該送信装置の ID と対応付けて格納しており、
当該プログラムは、
前記送信装置に、前記受信装置の名前解決を要求するパケットであり、該送信装置の ID を含むパケットを送信するパケット送信機能を持たせ、
前記情報提供装置に、
前記送信装置から、前記パケットを受信するパケット受信機能と、
前記パケットに示されている前記送信装置の ID を、名前解決対象装置へ通知する送信装置 ID 通知機能と、
を持たせ、
前記受信装置に、
前記情報提供装置から、前記送信装置の ID を受信する送信装置 ID 受信機能と、
受信した前記送信装置の ID に対応する前記通信装置情報を、前記情報提供装置から取得する送信装置情報取得機能と、
を持たせるネットワークシステム制御プログラム。
３１．  前記情報提供装置は、通信装置に対応する前記通信装置情報を、該通信装置の FQDN (Fully Qualified Domain Name) 又は IP (Internet Protocol) アドレスに対応する、DNS (Domain Name System) レコードの値として格納する DNS サーバであり、
前記受信装置の前記送信装置情報取得機能は、前記送信装置の FQDN 又は IP アドレスを示す DNS クエリを用いて、該送信装置の FQDN 又は IP アドレスに対応する DNS レコードを取得することで、該送信装置に対応する前記通信装置情報を取得すること、
を特徴とする３０．に記載のネットワークシステム制御プログラム。
３２．  前記受信装置に、前記情報提供装置から取得した前記通信装置情報に基づいて、当該受信装置による、前記送信装置に対する動作を制御する動作制御ステップを持たせることを特徴とする３０．又は３１．に記載のネットワークシステム制御プログラム。
３３．  情報提供装置と、送信装置と、受信装置と、名前解決対象装置と有するネットワークシステムであって、
前記情報提供装置は、前記送信装置に関する情報であり、かつ該送信装置の名前解決以外に用いる情報である通信装置情報を、該送信装置の ID と対応付けて格納する通信装置情報格納手段を有し、
前記送信装置は、前記名前解決対象装置の名前解決を要求するパケットであり、該送信装置の ID を含むパケットを送信するパケット送信手段を有し、
前記受信装置は、
前記送信装置から、前記パケットを受信するパケット受信手段と、
前記パケットに示されている前記送信装置の ID を、前記名前解決対象装置へ通知する送信装置 ID 通知手段と、を有し、
前記名前解決対象装置は、
前記受信装置から前記送信装置の ID を受信する送信装置 ID 受信手段と、
受信した前記送信装置の ID に対応する前記通信装置情報を、前記情報提供装置から取得する送信装置情報取得手段と、を有すること、
を特徴とするネットワークシステム。
３４．  前記情報提供装置は、通信装置に対応する前記通信装置情報を、該通信装置の FQDN (Fully Qualified Domain Name) 又は IP (Internet Protocol) アドレスに対応する、DNS (Domain Name System) レコードの値として格納する DNS サーバであり、
前記名前解決対象装置の前記送信装置情報取得手段は、前記送信装置の FQDN 又は IP アドレスを示す DNS クエリを用いて、該送信装置の FQDN 又は IP アドレスに対応する DNS レコードを取得することで、該送信装置に対応する前記通信装置情報を取得すること、
を特徴とする３３．に記載のネットワークシステム。
３５．  前記名前解決対象装置は、前記情報提供装置から取得した前記通信装置情報に基づいて、当該受信装置による、前記送信装置に対する動作を制御する動作制御手段を有することを特徴とする３３．又は３４．に記載のネットワークシステム。
３６．  情報提供装置と、送信装置と、受信装置と、名前解決対象装置と有するネットワークシステムを制御するネットワークシステム制御方法であって、
前記情報提供装置は、前記送信装置に関する情報であり、かつ該送信装置の名前解決以外に用いる情報である通信装置情報を、該送信装置の ID と対応付けて格納しており、
前記送信装置が、前記名前解決対象装置の名前解決を要求するパケットであり、該送信装置の ID を含むパケットを送信するパケット送信ステップと、
前記受信装置が、前記送信装置から、前記パケットを受信するパケット受信ステップと、
前記受信装置が、前記パケットに示されている前記送信装置の ID を、前記名前解決対象装置へ通知する送信装置 ID 通知ステップと、
前記名前解決対象装置が、前記受信装置から、前記送信装置の ID を受信する送信装置 ID 受信ステップと、
前記名前解決対象装置が、受信した前記送信装置の ID に対応する前記通信装置情報を、前記情報提供装置から取得する送信装置情報取得ステップと、
を有するネットワークシステム制御方法。
３７．  前記情報提供装置は、通信装置に対応する前記通信装置情報を、該通信装置の FQDN (Fully Qualified Domain Name) 又は IP (Internet Protocol) アドレスに対応する、DNS (Domain Name System) レコードの値として格納する DNS サーバであり、
前記送信装置情報取得ステップは、前記送信装置の FQDN 又は IP アドレスを示す DNS クエリを用いて、該送信装置の FQDN 又は IP アドレスに対応する DNS レコードを取得することで、該送信装置に対応する前記通信装置情報を取得すること、
を特徴とする３６．に記載のネットワークシステム制御方法。
３８．  前記名前解決対象装置が、前記情報提供装置から取得した前記通信装置情報に基づいて、当該受信装置による、前記送信装置に対する動作を制御する動作制御ステップを有することを特徴とする３６．又は３７．に記載のネットワークシステム制御方法。
３９．  情報提供装置と、送信装置と、受信装置と、名前解決対象装置と有するネットワークシステムを制御するプログラムであって、
前記情報提供装置は、前記送信装置に関する情報であり、かつ該送信装置の名前解決以外に用いる情報である通信装置情報を、該送信装置の ID と対応付けて格納しており、
前記送信装置に、前記名前解決対象装置の名前解決を要求するパケットであり、該送信装置の ID を含むパケットを送信するパケット送信機能を持たせ、
前記受信装置に、
前記送信装置から、前記パケットを受信するパケット受信機能と、
前記パケットに示されている前記送信装置の ID を、前記名前解決対象装置へ通知する送信装置 ID 通知機能と、を持たせ、
前記名前解決対象装置に、
前記受信装置から、前記送信装置の ID を受信する送信装置 ID 受信機能と、
受信した前記送信装置の ID に対応する前記通信装置情報を、前記情報提供装置から取得する送信装置情報取得機能と、を持たせること、
を特徴とするネットワークシステム制御プログラム。
４０．  前記情報提供装置は、通信装置に対応する前記通信装置情報を、該通信装置の FQDN (Fully Qualified Domain Name) 又は IP (Internet Protocol) アドレスに対応する、DNS (Domain Name System) レコードの値として格納する DNS サーバであり、
前記名前解決対象装置の前記送信装置情報取得機能は、前記送信装置の FQDN 又は IP アドレスを示す DNS クエリを用いて、該送信装置の FQDN 又は IP アドレスに対応する DNS レコードを取得することで、該送信装置に対応する通信装置情報を取得すること、
を特徴とする３９．に記載のネットワークシステム制御プログラム。
４１．  前記名前解決対象装置に、前記情報提供装置から取得した前記通信装置情報に基づいて、当該受信装置による、前記送信装置に対する動作を制御する動作制御機能を持たせることを特徴とする３９．又は４０．に記載のネットワークシステム制御プログラム。
【０２３５】
この出願は、２０１３年２月１２日に出願された日本出願特願２０１３−０２４２９１号を基礎とする優先権を主張し、その開示の全てをここに取り込む。
【図１】
2014125708.tif 000003
【図２】
2014125708.tif 000004
【図３】
2014125708.tif 000005
【図４】
2014125708.tif 000006
【図５】
2014125708.tif 000007
【図６】
2014125708.tif 000008
【図７】
2014125708.tif 000009
【図８】
2014125708.tif 000010
【図９】
2014125708.tif 000011
【図１０】
2014125708.tif 000012
【図１１】
2014125708.tif 000013
【図１２】
2014125708.tif 000014
【図１３】
2014125708.tif 000015
【図１４】
2014125708.tif 000016
【図１５】
2014125708.tif 000017
【図１６】
2014125708.tif 000018
【図１７】
2014125708.tif 000019
【図１８】
2014125708.tif 000020
【図１９】
2014125708.tif 000021
【図２０】
2014125708.tif 000022
【図２１】
2014125708.tif 000023
【図２２】
2014125708.tif 000024
【図２３】
2014125708.tif 000025
【図２４】
2014125708.tif 000026
【図２５】
2014125708.tif 000027
【図２６】
2014125708.tif 000028
【図２７】
2014125708.tif 000029
【図２８】
2014125708.tif 000030
【図２９】
2014125708.tif 000031
【図３０】
2014125708.tif 000032
【図３１】
2014125708.tif 000033
【図３２】
2014125708.tif 000034
【図３３】
2014125708.tif 000035
【図３４】
2014125708.tif 000036
【図３５】
2014125708.tif 000037
【図３６】
2014125708.tif 000038
【図３７】
2014125708.tif 000039
【図３８】
2014125708.tif 000040
【図３９】
2014125708.tif 000041
【図４０】
2014125708.tif 000042
【図４１】
2014125708.tif 000043
【図４２】
2014125708.tif 000044
【図４３】
2014125708.tif 000045
【図４４】
2014125708.tif 000046
【国際調査報告】
2014125708.tif 000047
2014125708.tif 000048
2014125708.tif 000049
2014125708.tif 000050