(58)【調査した分野】(Int.Cl.,DB名)
前記第1の問合要求送信部は、前記第1のIPアドレスが前記メモリに記憶されてから所定時間が経過するまで待機し、前記所定時間が経過する場合に、前記第1の問合要求を前記第1のサーバに送信する、請求項7に記載の通信装置。
【発明を実施するための形態】
【0010】
(第1実施例)
(通信システム2の構成;
図1)
図1は、プリンタ10がAP(Access Pointの略)50Aに接続される通信システム2を示す。AP50Aは、無線LAN(Local Area Networkの略)の親局として動作して、LAN4Aを形成している。LAN4Aは、AP50Aに無線で接続されているPC(Personal Computerの略)60Aと、AP50Aに有線で接続されているDNS(Domain Name Serverの略)サーバ70と、を備える。なお、変形例では、DNSサーバ70は、AP50Aに無線で接続されていてもよい。
【0011】
また、AP50Aには、さらに、AP50Aとは異なるAP50Bが有線で接続されている。AP50Bは、無線LANの親局として動作して、LAN4Aとは異なるLAN4Bを形成している。LAN4Bは、AP50Bに無線で接続されているPC60Bを備えるが、DNSサーバを備えない。
【0012】
AP50A、AP50Bは、それぞれ、LAN4A、LAN4Bのルータとして機能すると共に、LAN4A、LAN4B内の各装置にIPアドレスを割り当てるDHCP(Dynamic Host Configuration Protocolの略)サーバとして機能する。AP50Aが割り当て可能なIPアドレスの範囲「192.168.1.1〜50」と、AP50Bが割り当て可能なIPアドレスの範囲「192.168.2.1〜50」と、は異なる。
【0013】
DNSサーバ70は、いわゆる名前解決のために利用されるサーバである。DNSサーバ70には、1個以上の装置のそれぞれについて、当該装置のデバイス名と当該装置のIPアドレス(例えばDHCPサーバによって割り当てられたIPアドレス)とが関連付けて登録される。例えば、プリンタ10のデバイス名「PN」とプリンタ10のIPアドレスとが関連付けてDNSサーバ70に登録されている状況を想定する。この場合、DNSサーバ70は、例えばPC60Aからプリンタ10のデバイス名「PN」を含む問合要求を受信すると、デバイス名「PN」に関連付けられているIPアドレスを含む問合応答をPC60Aに送信する。これにより、PC60Aは、プリンタ10のIPアドレスを知ることができ(即ち名前解決を実行することができ)、当該IPアドレスを利用して、プリンタ10との通信を実行することができる。
【0014】
ところで、LAN4内のPC60Aは、デバイス名「PN」を含む問合信号をブロードキャストによって送信すれば、同じLAN4内のプリンタ10から、プリンタ10のIPアドレスを含む応答信号を受信することができる。即ち、PC60Aは、DNSサーバ70を利用した名前解決を実行しなくても、プリンタ10のIPアドレスを知ることができる。しかしながら、ブロードキャストの信号は、通常、ルータを越えて通信されない。従って、LAN4Aとは異なるLAN4B内のPC60Bが上記の問合信号をブロードキャストによって送信しても、当該問合信号は、通常、ルータであるAP50Bを越えてプリンタ10まで通信されず、この結果、PC60Bは、プリンタ10のIPアドレスを知ることができない。そこで、PC60Bは、デバイス名「PN」を含む問合要求をユニキャストによってDNSサーバ70に送信することによって、DNSサーバ70からプリンタ10のIPアドレスを含む問合応答を受信する。これにより、PC60Bは、プリンタ10のIPアドレスを知ることができる。このように、複数個のLAN4A,4Bが構築されるシステムでは、DNSサーバ70を設けておけば、あるLAN内の装置(例えばPC60B)は、DNSサーバ70を利用した名前解決を実行することによって、当該LANとは異なるLAN内の他の装置(例えばプリンタ10)のIPアドレスを取得することができる。
【0015】
(プリンタ10の構成)
プリンタ10は、PC60A等の周辺機器であり、印刷機能を実行可能である。プリンタ10は、デバイス名「PN」を有する。デバイス名「PN」は、例えば、管理者によってプリンタ10に割り当てられる名称であってもよいし、プリンタ10の出荷時からプリンタ10に予め割り当てられている名称であってもよい。プリンタ10は、操作部12と、表示部14と、印刷実行部16と、ネットワークインターフェース18と、制御部30と、を備える。
【0016】
操作部12は、複数のキーを備える。ユーザは、操作部12を操作することによって、様々な指示をプリンタ10に入力することができる。表示部14は、様々な情報を表示するためのディスプレイである。表示部14は、いわゆるタッチパネルとしても機能する。即ち、表示部14は、操作部としても機能する。印刷実行部16は、インクジェット方式、レーザ方式等の印刷機構である。ネットワークインターフェース18は、本実施例では、Wi−Fi方式に従った無線通信を実行するためのインターフェースであり、
図1の状態では、AP50Aとの無線接続を確立している。Wi−Fi方式は、Wi-Fi Allianceによって策定された規格に準拠した無線通信方式であり、例えば、IEEE(The Institute of Electrical and Electronics Engineers, Inc.の略)802.11の規格、及び、それに準ずる規格(例えば、802.11a,11b,11g,11n等)に基づく無線通信方式である。変形例では、ネットワークインターフェース18は、有線通信を実行するためのインターフェースであってもよく、この場合、当該インターフェース18は、HUB、ルータ等に有線で接続される。本変形例では、各LAN4A,4Bは有線ネットワークである。
【0017】
制御部30は、CPU32とメモリ34とを備える。CPU32は、メモリ34内のプログラム36に従って、様々な処理を実行する。メモリ34は、ROM、RAM等によって構成される。メモリ34は、プリンタ10に割り当てられているデバイス名「PN」を記憶する。また、メモリ34は、通信設定領域38を備える。通信設定領域38は、プリンタ10がネットワークインターフェース18を介した通信を実行するための設定情報を記憶する領域である。設定情報は、例えば、AP(例えば50A)との無線接続を確立するための無線設定(例えばSSID(Service Set Identifierの略)、パスワード等)、APのIPアドレス、プリンタ10のIPアドレス、DNSサーバ70のIPアドレス、サブネットワーク、ゲートウェイアドレス等を含む。
【0018】
(プリンタ10の処理:
図2)
続いて、
図2を参照して、プリンタ10のCPU32によって実行される処理を説明する。本実施例では、AP50Aとの無線接続を確立するための無線設定(即ちSSID及びパスワード)がユーザによってプリンタ10に予め入力されており、当該無線設定が通信設定領域38に記憶されていることを前提とする。CPU32は、ユーザによってプリンタ10の電源がONされると、まず、通信設定領域38内の無線設定を利用して、AP50Aとの無線接続を確立する。その後、CPU32は、
図2の処理を開始する。なお、プリンタ10によって実行される全ての通信はネットワークインターフェース18を介して実行される。このために、本実施例では、通信を説明する際に、「ネットワークインターフェース18を介して」という記載を省略する。
【0019】
S10では、CPU32は、プリンタ10のデバイス名「PN」を含む割当要求をAP50Aに送信する。割当要求は、プリンタ10へのIPアドレスの割り当てをDHCPサーバであるAP50Aに要求するコマンドである。
【0020】
S12では、CPU32は、S10で割当要求をAP50Aに送信することに応じて、AP50AからIPアドレスを受信する。当該IPアドレスは、AP50Aが割り当て可能なIPアドレスの範囲「192.168.1.1〜50」の中からAP50Aによって選択されたIPアドレスであり、以下では「割当IPアドレス」と呼ぶ。
【0021】
S14では、CPU32は、割当IPアドレスを含むARP信号をブロードキャストによって送信する。ARP信号は、割当IPアドレスに一致するIPアドレスが割り当てられている他の装置に対して、応答信号の送信を要求する信号である。
【0022】
S16では、CPU32は、ARP信号に対する応答信号を受信したのか否かを判断する。CPU32は、応答信号を受信したと判断する場合(S16でYES)にはS18に進み、応答信号を受信しなかったと判断する場合(S16でNO)にはS20に進む。
【0023】
S18では、CPU32は、割当要求を送信した回数である送信回数(即ちS10を実行した回数)が3回に到達したのか否かを判断する。CPU32は、送信回数が3回未満であると判断する場合(S18でNO)には、プリンタ10のIPアドレスとして割当IPアドレスを通信設定領域38に記憶することなく、S10に戻る。これにより、割当IPアドレスに一致するIPアドレスが割り当てられている他の装置がLAN4A内に存在するにも関わらず、プリンタ10のIPアドレスとして割当IPアドレスを利用すること(即ちLAN4A内において2個以上の装置のIPアドレスが重複すること)を抑制できる。なお、変形例では、S18で利用される閾値は、3回でなくてもよく、2回又は4回以上であってもよい。また、CPU32は、送信回数が3回に到達したと判断する場合(S18でYES)には、後述のS20〜S60を実行することなく、
図2の処理を終了する。
【0024】
S20では、CPU32は、プリンタ10のIPアドレスとして割当IPアドレスを通信設定領域38に記憶する。
【0025】
S30では、CPU32は、割当IPアドレスを通信設定領域38に記憶してから所定時間(例えば1分)が経過するまで待機する(S30でNO)。DHCPサーバであるAP50Aは、プリンタ10から割当要求(S10参照)を受信することに応じて、割当IPアドレスをプリンタ10に送信する場合に、割当要求に含まれるプリンタ10のデバイス名「PN」と、割当IPアドレスと、を関連付けて登録すべきことを指示する登録指示をDNSサーバ70に送信する。DNSサーバ70が登録指示を受信して登録を完了するまでにはある程度の時間を要することがあるので、S30で待機するように構成されている。CPU32は、所定時間が経過する場合(S30でYES)にS40に進む。
【0026】
S40では、CPU32は、まず、DNSサーバ70のIPアドレスをAP50Aに問い合わせて、AP50Aから当該IPアドレスを受信する。そして、CPU32は、当該IPアドレスを送信先として(即ちユニキャストによって)、プリンタ10のデバイス名「PN」を含む問合要求をDNSサーバ70に送信する。問合要求は、デバイス名「PN」に関連付けられているIPアドレスが登録されているのか否かをDNSサーバ70に問い合わせるコマンドであり、より具体的には、当該IPアドレスを含む問合応答の送信をDNSサーバ70に要求するコマンドである。
【0027】
S42では、CPU32は、DNSサーバ70から、S40で送信された問合要求に対する問合応答を受信する。問合応答は、以下の3種類の情報のいずれかを含む。例えば、DNSサーバ70が、DHCPサーバであるAP50Aから登録指示を受信することに応じて、デバイス名「PN」と割当IPアドレス(即ちS20で通信設定領域38に記憶されたIPアドレス)とを関連付けて登録済みである場合には、問合応答は、割当IPアドレスを含む。また、例えば、DNSサーバ70が、何らかの原因によってAP50Aから登録指示を受信せず(あるいは登録指示を受信しても登録を実行せず)、かつ、デバイス名「PN」とIPアドレスとを関連付けて過去に登録済みでない場合には、問合応答は、デバイス名「PN」が登録されていないことを示す文字列「NO Record」を含む。また、例えば、DNSサーバ70が、何らかの原因によってAP50Aから登録指示を受信せず(あるいは登録指示を受信しても登録を実行せず)、かつ、デバイス名「PN」と、割当IPアドレスとは異なるIPアドレスと、を関連づけて登録済みである場合には、問合応答は、当該異なるIPアドレスを含む。
【0028】
S50では、CPU32は、問合応答が割当IPアドレスを含むのか否かを判断する。CPU32は、問合応答が割当IPアドレスを含むと判断する場合、即ち、DNSサーバ70がデバイス名「PN」と割当IPアドレスとを関連付けて登録済みであることを確認できた場合(S50でYES)には、S60を実行することなく、
図2の処理を終了する。一方、CPU32は、問合応答が文字列「NO Record」を含む場合、又は、問合応答が割当IPアドレスとは異なるIPアドレスを含む場合には、問合応答が割当IPアドレスを含まないと判断して(S50でNO)、S60に進む。
【0029】
S60では、CPU32は、DDNS(Dynamic DNSの略)に従った登録要求をDNSサーバ70に送信する。DDNSは、DHCPサーバとは異なるデバイスが、当該デバイスのデバイス名と当該デバイスのIPアドレスとを関連付けて登録すべきことをDNSサーバに要求する仕組みである。上記の登録要求は、プリンタ10のデバイス名「PN」と割当IPアドレスとを含み、それらを関連付けて登録すべきことをDNSサーバ70に要求するコマンドである。これにより、CPU32は、デバイス名「PN」と割当IPアドレスとを関連付けてDNSサーバ70に適切に登録することができる。S60が終了すると、
図2の処理が終了する。
【0030】
(具体的なケースA:
図3)
続いて、
図3を参照して、
図2の処理によって実現される具体的なケースAを説明する。ケースAの初期状態では、DNSサーバ70の電源がOFFされている。また、DNSサーバ70は、プリンタ10のデバイス名「PN」とIPアドレスとを関連付けて登録済みでない。
【0031】
プリンタ10は、T0において、電源がONされると、T2において、AP50Aとの無線接続を確立する。そして、プリンタ10は、T10において、デバイス名「PN」を含む割当要求をAP50Aに送信して(S10)、T12において、AP50AからIPアドレス「192.168.1.1」(以下では「IPA1」と記載する)を受信する(S12)。
図3ではARP信号の送信(S14)を図示省略しているが、本実施例では、LAN4A内においてIPアドレスの重複は存在しない(S16でNO)。このために、T20において、プリンタ10は、IPA1を通信設定領域38に記憶する(S20)。
【0032】
AP50Aは、T12において、IPA1をプリンタ10に割り当てると、T30において、デバイス名「PN」とIPA1とを含む登録指示をDNSサーバ70に送信する。ただし、DNSサーバ70の電源がOFFされているので、DNSサーバ70は、登録指示を受信することができず、デバイス名「PN」とIPA1とを関連付けて登録しない。その後、T32において、DNSサーバ70の電源がONされる。
【0033】
DNSサーバ70の電源がONされた後に、プリンタ10は、T20の処理から所定時間が経過したと判断し(S30でYES)、T40において、デバイス名「PN」を含む問合要求をDNSサーバ70に送信する(S40)。DNSサーバ70がデバイス名「PN」とIPアドレスとを関連付けて過去に登録済みでないので、プリンタ10は、T42において、DNSサーバ70から文字列「NO Record」を含む問合応答を受信する(S42)。
【0034】
プリンタ10は、問合応答が文字列「NO Record」を含むので、割当IPアドレスであるIPA1を含む問合応答を受信しなかったと判断し(S50でNO)、T60において、デバイス名「PN」とIPA1とを含む登録要求をDNSサーバ70に送信する(S60)。この結果、T62では、DNSサーバ70において、デバイス名「PN」とIPA1とが関連付けて登録される。
【0035】
(具体的なケースB:
図4)
続いて、具体的なケースBを説明する。ケースBの初期状態では、DNSサーバ70の電源がONされている。また、プリンタ10は、AP50Bとの無線接続を過去に確立した実績があり(即ちLAN4Bに過去に所属しており)、その際に、DNSサーバ70において、プリンタ10のデバイス名「PN」とIPアドレス「192.168.2.1」(以下では「IPB」と記載する)とが関連付けて登録されている。
【0036】
ケースBのT100〜T130は、ケースAのT0〜T30と同様である。但し、DNSサーバ70は、T130において、AP50Aから登録指示を受信しても、登録指示を受け付けず、登録指示に応じた処理を実行しない。この事象は、以下の状況で起こり得る。例えば、DNSサーバ70は、通信相手として妥当でない各装置のIPアドレスが記述されているいわゆるブラックリストを記憶する。ここで、通信システム2の管理者がAP50AのIPアドレスをブラックリストに誤って登録する状況を想定する。この場合、DNSサーバ70は、AP50Aから登録指示を受信する場合に、登録指示に含まれる送信元のIPアドレス(即ちAP50AのIPアドレス)がブラックリストに登録されていることを認識し、登録指示を受け付けない。また、例えば、AP50Aは、通常、DNSサーバ70と通信するための認証情報を記憶する。ここで、管理者が誤った認証情報をAP50Aに設定する状況を想定する。この場合、DNSサーバ70は、AP50Aから認証情報を含む登録指示を受信する場合に、認証情報が誤っているので(即ち認証が成功しないので)、登録指示を受け付けない。
【0037】
その後、プリンタ10は、T140において、デバイス名「PN」を含む問合要求をDNSサーバ70に送信する(S40)。DNSサーバ70がデバイス名「PN」とIPBとを関連付けて過去に登録済みであるので、プリンタ10は、T142において、DNSサーバ70からIPBを含む問合応答を受信する(S42)。
【0038】
プリンタ10は、問合応答が割当IPアドレスであるIPA1とは異なるIPBを含むので、IPA1を含む問合応答を受信しなかったと判断し(S50でNO)、T160において、デバイス名「PN」とIPA1とを含む登録要求をDNSサーバ70に送信する(S60)。この結果、T162では、DNSサーバ70において、IPBに代えてIPAがデバイス名「PN」に関連付けて登録される。
【0039】
(本実施例の効果)
上記のケースA及びケースBで説明したように、プリンタ10は、DHCPサーバであるAP50AからIPA1を受信する場合(T12、T112)に、デバイス名「PN」を含む問合要求をDNSサーバ70に送信する(T40、T140)。そして、プリンタ10は、DNSサーバ70からIPA1を含む問合応答を受信しない場合(T42、T142)に、DDNSに従った登録要求をDNSサーバ70に送信する(T60、T160)。このために、プリンタ10は、「NO Record」を含む問合応答を受信するケースAであっても、IPA1とは異なるIPBを含む問合応答を受信するケースBであっても、デバイス名「PN」とIPA1とを関連付けてDNSサーバ70に適切に登録することができる(T62、T162)。特に、プリンタ10は、DDNSに従った登録要求をDNSサーバ70に送信するので(T60、T160)、例えば、ケースBのように、DNSサーバ70がAP50Aからの登録指示を受け付けない状況であっても、DNSサーバ70への登録を適切に実行することができる。
【0040】
また、公知の多くのDNSサーバは、デバイス名を含む問合要求を受信してIPアドレスを含む問合応答を送信可能であるが、一部のDNSサーバは、IPアドレスを含む問合要求を受信してデバイス名を含む問合応答を送信不可能である。本実施例では、プリンタ10は、
図2のS40において、デバイス名「PN」を含む問合要求をDNSサーバ70に送信して、S42において、DNSサーバ70からIPアドレスを含む問合応答を受信する。このために、プリンタ10は、一般的なDNSサーバから問合応答を適切に受信することができる。
【0041】
(対応関係)
プリンタ10、DNSサーバ70、AP50Aが、それぞれ、「通信装置」、「第1のサーバ」、「第2のサーバ」の一例である。DNSサーバ70が、「所定サーバ」の一例である。デバイス名「PN」が、「対象デバイス名」及び「一方の情報」の一例であり、IPA1が、「第1のIPアドレス」、「第2のIPアドレス」、及び、「他方の情報」の一例である。T40及びT140の問合要求が、「第1の問合要求」の一例である。割当IPアドレスを含む問合応答、T42の問合応答、T142の問合応答が、それぞれ、「第1の問合応答」、「第2の問合応答」、「第3の問合応答」の一例である。文字列「NO Record」、T142のIPBが、それぞれ、「未登録情報」、「登録情報」の一例である。T60及びT160の登録要求が、「所定要求」の一例である。
【0042】
図2のS10の処理、S12の処理、S14(及びS16)の処理、S20の処理、S40の処理、S60の処理が、それぞれ、「第2の割当要求送信部」、「第4のアドレス受信部」、「判断部」、「第4の記憶制御部」、「第1の問合要求送信部」、「所定要求送信部」によって実行される処理の一例である。
【0043】
(第2実施例)
本実施例では、プリンタ10は、DDNS機能を備えておらず、割当IPアドレスがDNSサーバ70に登録されていないことを確認した場合に、割当要求をDHCPサーバに再び送信する。
【0044】
(プリンタ10の処理;
図5)
本実施例では、CPU32は、
図2の処理に代えて、
図5の処理を実行する。
図5のS110〜S120は、
図2のS10〜S20と同様である。S130では、CPU32は、割当IPアドレスを通信設定領域38に記憶した回数である記憶回数(即ちS120を実行した回数)に応じて、所定時間を決定する。具体的には、CPU32は、記憶回数が1回である場合には所定時間として第1の時間(例えば1分)を決定し、記憶回数が2回である場合には所定時間として第1の時間よりも長い第2の時間(例えば2分)を決定し、記憶回数が3回である場合には所定時間として第2の時間よりも長い第3の時間(例えば4分)を決定する。そして、CPU32は、決定済みの所定時間が経過するまで待機し(S130でNO)、所定時間が経過する場合(S130でYES)に、S140に進む。
【0045】
S140〜S150は、
図2のS40〜S50と同様である。S160では、CPU32は、問合応答を受信した回数である受信回数(即ちS142を実行した回数)が3回に到達したのか否かを判断する。CPU32は、受信回数が3回に到達したと判断する場合(S160でYES)には、
図5の処理を終了する。この場合、DNSサーバ70において、プリンタ10のデバイス名「PN」と割当IPアドレスとが関連付けて適切に登録されない可能性があるが、
図5の処理が長時間に亘って繰り返し実行されて、プリンタ10の処理負荷が高くなることを抑制できる。なお、変形例では、S160で利用される閾値は、3回でなくてもよく、2回又は4回以上であってもよい。
【0046】
一方、CPU32は、受信回数が3回未満である判断する場合(S160でNO)には、S110に戻り、割当要求をDHCPサーバであるAP50Aに再び送信する。DHCPサーバは、通常、IPアドレスを割り当てる際に、当該IPアドレスを割り当て済みであるものとして管理し、その状態で新たな割当要求を受信する場合に、当該IPアドレスとは異なるIPアドレスを割り当てる。従って、CPU32は、S110において、割当要求をAP50Aに再び送信すると、S112において、通常、AP50Aから前回の割当IPアドレスとは異なるIPアドレスを受信する。その後、CPU32は、当該異なるIPアドレスを今回の割当IPアドレスとしてS114以降の処理を実行する。なお、CPU32は、S112において、AP50Aから前回の割当IPアドレスと同じIPアドレスを受信してもよい。
【0047】
(具体的なケースC:
図6)
続いて、
図6を参照して、
図5の処理によって実現される具体的なケースCを説明する。ケースCの初期状態は、
図4のケースBの初期状態と同じである。
【0048】
T200〜T220Aは、
図3のケースAのT0〜T20と同様である。しかしながら、AP50AがIPA1をプリンタ10に割り当てても、登録指示の送信までに時間を要する。具体的には、AP50Aが登録指示を送信するには、T212Aの処理から2分以上かつ4分未満の時間が必要である。本ケースでは、AP50Aが登録指示を送信する前に、T220Aの処理から1分が経過する(1回目のS130でYES)。このために、プリンタ10は、T240Aにおいて、問合要求をDNSサーバ70に送信すると(1回目のS140)、T242Aにおいて、DNSサーバ70からIPBを含む問合応答を受信する(1回目のS142)。その後、T230Aにおいて、AP50Aから登録指示が送信され、T250Aにおいて、IPBに代えてIPA1がDNSサーバ70に登録される。
【0049】
プリンタ10は、問合応答が割当IPアドレスであるIPA1を含まないと判断し(1回目のS150でNO)、T210Bにおいて、割当要求をAP50Aに再び送信し(2回目のS110)、T212Bにおいて、AP50AからIPA1とは異なるIPアドレス「192.168.1.2」(以下では「IPA2」と記載する)を受信し(2回目のS112)、T220Bにおいて、IPA1に代えてIPA2を通信設定領域38に記憶する(2回目のS120)。
【0050】
AP50Aは、IPA2をプリンタ10に割り当てても、登録指示の送信に時間を要する。本ケースでは、AP50Aが登録指示を送信する前に、T220Bから2分が経過する(2回目のS130でYES)。このために、プリンタ10は、T240Bにおいて、問合要求をDNSサーバ70に送信すると(2回目のS140)、T242Bにおいて、DNSサーバ70からIPA1を含む問合応答を受信する(2回目のS142)。その後、T230Bにおいて、AP50Aから登録指示が送信され、T250Bにおいて、IPA1に代えてIPA2がDNSサーバ70に登録される。
【0051】
プリンタ10は、問合応答が割当IPアドレスであるIPA2を含まないと判断し(2回目のS150でNO)、T210Cにおいて、割当要求をAP50Aに再び送信し(3回目のS110)、T212Cにおいて、AP50AからIPA2とは異なるIPアドレス「192.168.1.3」(以下では「IPA3」と記載する)を受信し(3回目のS112)、T220Cにおいて、IPA2に代えてIPA3を通信設定領域38に記憶する(3回目のS120)。
【0052】
AP50Aは、IPA3をプリンタ10に割り当てると、T212Cから4分が経過する前に、T230Cにおいて、IPA3を含む登録指示をDNSサーバ70に送信する。そして、T250Aにおいて、IPA2に代えてIPA3がDNSサーバ70に登録される。このために、プリンタ10は、T240Cにおいて、問合要求をDNSサーバ70に送信すると(3回目のS140)、T242Cにおいて、DNSサーバ70からIPA3を含む問合応答を受信する(3回目のS142)。これにより、プリンタ10は、問合応答が割当IPアドレスであるIPA3を含むと判断し(3回目のS150でYES)、処理を終了する。
【0053】
(本実施例の効果)
上記のケースCで説明したように、プリンタ10は、問合要求をDNSサーバ70に送信し(T240A)、DNSサーバ70からIPA1を含む問合応答を受信しない場合(T242A)に、割当要求をDHCPサーバであるAP50Aに再び送信し(T210B)、AP50AからIPA2を受信する(T212B)。割当要求がAP50Aに再び送信されるので(T210B)、AP50AがIPA2を含む登録指示をDNSサーバ70に送信し(T230B)、この結果、デバイス名「PN」とIPA2とを関連付けてDNSサーバ70に適切に登録することができる(T250B)。ただし、本ケースCでは、IPA2がDNSサーバ70に登録される前に、プリンタ10は、DNSサーバ70からIPA2を含む問合応答を受信しない(T242B)。この場合、プリンタ10は、割当要求をAP50Aに再び送信し(T210C)、AP50AからIPA3を受信する(T212C)。割当要求がAP50Aに再び送信されるので(T210C)、AP50AがIPA3を含む登録指示をDNSサーバ70に送信し(T230C)、この結果、デバイス名「PN」とIPA3とを関連付けてDNSサーバ70に適切に登録することができる(T250C)。特に、本実施例では、プリンタ10がDDNS機能を備えていなくても、割当IPアドレスをDNSサーバ70に適切に登録することができる。
【0054】
なお、本実施例は、DNSサーバ70における登録に時間を要するケースでなくても、
図3のケースAのように、DNSサーバ70の電源がOFFされている状況からONされている状況に切り替えられるケースでも有効である。即ち、DNSサーバ70の電源がONされた後に、プリンタ10が割当要求をAP50Aに再び送信すれば、割当IPアドレスをDNSサーバ70に適切に登録することができる。
【0055】
また、プリンタ10は、
図5のS130で待機するための時間を徐々に長くするので、DNSサーバ70が登録に要する時間に応じて、
図5の処理を適切に終了することができる。即ち、DNSサーバ70における登録が比較的短時間で済むものである場合には、プリンタ10は、割当IPアドレスがDNSサーバ70に登録されたことを1回目のS140〜S150で確認することができ、この結果、1回目のS150でYESと判断して
図5の処理を迅速に終了することができる。一方、DNSサーバ70における登録が比較的長時間を要するものである場合には、プリンタ10は、割当IPアドレスがDNSサーバ70に登録されたことを2回目又は3回目のS140〜S150で適切に確認することができる。
【0056】
(対応関係)
DHCPサーバであるAP50Aが、「所定サーバ」の一例である。IPA1、IPA2、IPA3が、それぞれ、「第1のIPアドレス」、「第2のIPアドレス」、及び、「第3のIPアドレス」の一例である。T240Aの問合要求、T240Bの問合要求が、それぞれ、「第1の問合要求」、「第2の問合要求」の一例である。割当IPアドレスを含む問合応答が、「第1の問合応答」及び「第4の問合応答」の一例である。1回目のS130の所定時間(例えば1分)、2回目のS130の所定時間(例えば2分)が、それぞれ、「第1の所定時間」、「第2の所定時間」の一例である。
【0057】
図5の1回目のS110の処理、2回目のS110の処理、3回目のS110の処理が、それぞれ、「第2の割当要求送信部」、「所定要求送信部」、「再送信部」によって実行される処理の一例である。1回目のS112の処理、2回目のS112の処理、3回目のS112の処理が、それぞれ、「第4のアドレス受信部」、「第2のアドレス受信部」、「第3のアドレス受信部」の一例である。1回目のS120の処理、2回目のS120の処理、3回目のS120の処理が、それぞれ、「第4の記憶制御部」、「第2の記憶制御部」、「第3の記憶制御部」の一例である。1回目のS140の処理、2回目のS140の処理が、それぞれ、「第1の問合要求送信部」、「第2の問合要求送信部」によって実行される処理の一例である。
【0058】
(第3実施例)
本実施例では、プリンタ10は、DDNS機能を備えており、割当IPアドレスがDNSサーバ70に登録されていないことを確認した場合に、DDNSに従った登録要求をDNSサーバ70に送信すること、及び、割当要求をDHCPサーバに再び送信することを切り替える。
【0059】
(プリンタ10の処理;
図7)
本実施例では、CPU32は、
図2及び
図5の処理に代えて、
図7の処理を実行する。
図7のS210〜S242は、
図2のS10〜S42と同様である。S250では、CPU32は、S242で受信された問合応答が文字列「NO Record」を含むのか否かを判断する。CPU32は、問合応答が当該文字列を含むと判断する場合(S250でYES)にはS267に進み、問合応答が当該文字列を含まないと判断する場合(S250でNO)にはS252に進む。
【0060】
S252では、CPU32は、問合応答が割当IPアドレスとは異なるIPアドレスを含むのか否かを判断する。CPU32は、問合応答が異なるIPアドレスを含むと判断する場合(S252でYES)にはS260に進む。一方、CPU32は、問合応答が異なるIPアドレスを含まないと判断する場合(S252でNO)、即ち、問合応答が割当IPアドレスを含むと判断する場合には
図7の処理を終了する。
【0061】
S260では、CPU32は、問合応答を受信した回数である受信回数が3回に到達したのか否かを判断する。CPU32は、受信回数が3回に到達したと判断する場合(S260でYES)にはS267に進み、受信回数が3回未満であると判断する場合(S260でNO)にはS210に戻る。
【0062】
S267では、CPU32は、DDNSを利用して、デバイス名「PN」と割当IPアドレスとを含む登録要求をDNSサーバ70に送信する。S267が終了すると、
図7の処理が終了する。
【0063】
(具体的なケース)
続いて、
図7の処理によって実現される様々なケースを説明する。例えば、管理者がDHCPサーバであるAP50AとDNSサーバ70とを備える通信システムを初めて会社等に導入し、DNSサーバ70が何らかの原因(例えばブラックリスト、認証情報の誤り、通信障害等)でAP50Aからの登録指示を受け付けない状況を想定する。この場合、プリンタ10が割当要求をAP50Aに送信し、AP50Aが登録指示をDNSサーバ70に送信しても、デバイス名「PN」と割当IPアドレスとを関連付けてDNSサーバ70に登録することができない。従って、プリンタ10は、問合要求をDNSサーバ70に送信しても、DNSサーバ70から文字列「No Record」を含む問合応答を受信する。このような状況では、プリンタ10が割当要求をAP50Aに再び送信しても、DNSサーバ70への登録が成功しない。従って、本実施例では、プリンタ10は、問合応答が文字列「No Record」を含む場合(S250でYES)に、割当要求をAP50Aに再び送信することなく(即ちS210を再び実行することなく)、DDNSに従った登録要求をDNSサーバ70に送信する(S267)。これにより、デバイス名「PN」と割当IPアドレスとを関連付けてDNSサーバ70に適切に登録することができる。特に、プリンタ10が割当要求をAP50Aに送信することを繰り返さないので、DNSサーバ70への登録を迅速に実行することができる。
【0064】
また、例えば、AP50AがIPアドレスを割り当ててから登録指示をDNSサーバ70に送信するのに時間を要するものである状況を想定する。このような状況では、
図6のケースCと同様のケースを実現することができる。即ち、プリンタ10は、T242Aで受信された問合応答が割当IPアドレスとは異なるIPBを含むと判断する場合(1回目のS252でYES)には、T210Bにおいて、割当要求をAP50Aに再び送信する(2回目のS210)。プリンタ10は、さらに、T242Bで受信された問合応答が割当IPアドレスとは異なるIPA1を含むと判断する場合(2回目のS252でYES)には、T210Cにおいて、割当要求をAP50Aに再び送信する(3回目のS210)。これにより、T250Cにおいて、割当IPアドレスであるIPA3をDNSサーバ70に適切に登録することができる。本ケースでは、DDNSを利用せずに、一般的なDHCPの手法を利用して、割当IPアドレスをDNSサーバ70に登録することができる。
【0065】
(ケースD;
図8)
また、例えば、DNSサーバ70が、AP50Aとは異なるAP50Bからの登録指示を過去に受け付けてプリンタ10のデバイス名「PN」とIPアドレスとを関連付けて登録したが、何らかの原因でAP50Aからの登録指示を受け付けない状況を想定する。この場合、
図8のケースDが実現される。ケースDの初期状態は、
図6のケースCの初期状態と同じである。
【0066】
T300〜T330Aは、
図3のケースAのT0〜T30と同様である。DNSサーバ70は、T330AでAP50Aから登録指示を受信しても、当該登録指示を受け付けない。このために、プリンタ10は、T340Aにおいて、問合要求をDNSサーバ70に送信すると(1回目のS240)、T342Aにおいて、DNSサーバ70からIPBを含む問合応答を受信する(1回目のS242)。その後、T310A〜T342Aと同様に、2回目の処理(即ちT310B〜T342B)、及び、3回目の処理(即ちT310C〜T342C)が実行される(2回目のS210〜S252でYES、3回目のS210〜S252でYES)。
【0067】
プリンタ10は、T342Cで受信された問合応答が割当IPアドレス(即ちIPA3)とは異なるIPアドレス(即ちIPB)を含むと判断し(3回目のS252でYES、3回目のS260でYES)、この場合、T370において、デバイス名「PN」とIPA3とを含む登録要求をDNSサーバ70に送信する(S267)。この結果、T370では、DNSサーバ70において、IPBに代えてIPA3がデバイス名「PN」に関連付けて登録される。
【0068】
本ケースでは、複数回に亘ってDHCPの手法を利用しても(即ちDHCPサーバであるAP50Aが複数回に亘って登録指示を送信しても)、DNSサーバ70への登録が成功しない場合に、DDNSを利用して、デバイス名「PN」と割当IPアドレスとをDNSサーバ70に適切に登録することができる。
【0069】
(本実施例の効果)
上述したように、本実施例によると、プリンタ10は、DNSサーバ70からの問合応答の内容に応じて、DDNSに従った登録要求をDNSサーバ70に送信すること(S267)、及び、割当要求をDHCPサーバであるAP50Aに再び送信すること(2回目以降のS210)、を切り替える。このために、プリンタ10は、様々なケースにおいて、デバイス名「PN」と割当IPアドレスとをDNSサーバ70に適切に登録することができる。
【0070】
(対応関係)
一つの側面では、DNSサーバ70が、「所定サーバ」の一例であり、DDNSに従った登録要求(S267)が、「所定要求」の一例である。この場合、2回目のS210の処理、2回目のS212の処理、2回目のS220の処理が、それぞれ、「第1の割当要求送信部」、「第1のアドレス受信部」、「第1の記憶制御部」によって実行される処理の一例である。別の側面では、DHCPサーバであるAP50Aが、「所定サーバ」の一例であり、割当要求が、「所定要求」の一例である。この場合、3回目のS240の処理、3回目のS252でYESの場合に実行されるS267の処理が、それぞれ、「第2の問合要求送信部」、「登録要求送信部」によって実行される処理の一例である。
【0071】
以上、本発明の具体例を詳細に説明したが、これらは例示にすぎず、特許請求の範囲を限定するものではない。特許請求の範囲に記載の技術には以上に例示した具体例を様々に変形、変更したものが含まれる。上記の実施例の変形例を以下に列挙する。
【0072】
(変形例1)プリンタ10は、例えば
図2のS40において、デバイス名「PN」に代えて割当IPアドレスを含む問合要求をDNSサーバ70に送信して、DNSサーバ70から割当IPアドレスに関連付けて登録されているデバイス名「PN」を含む問合応答を受信することを監視してもよい。本変形例では、プリンタ10は、割当IPアドレスを含む問合応答を受信する場合に、S50でYESと判断し、割当IPアドレスを含まない問合応答を受信する場合に、S50でNOと判断する。第2及び第3実施例にも本変形例を適用してもよい。本変形例では、割当IPアドレス、デバイス名「PN」が、それぞれ、「一方の情報」、「他方の情報」の一例である。
【0073】
(変形例2)プリンタ10は、例えば
図2のS40において、デバイス名「PN」と割当IPアドレスとの双方を含む問合要求をDNSサーバ70に送信して、DNSサーバ70から、デバイス名「PN」に関連付けて登録されている割当IPアドレスと、割当IPアドレスに関連付けて登録されているデバイス名「PN」と、の双方を含む問合応答を受信することを監視してもよい。本変形例では、プリンタ10は、割当IPアドレスとデバイス名「PN」との双方を含む問合応答を受信する場合に、S50でYESと判断し、割当IPアドレスとデバイス名「PN」との少なくとも一方を含まない問合応答を受信する場合に、S50でNOと判断する。また、プリンタ10は、例えば
図2のS40において、デバイス名「PN」と割当IPアドレスとの双方を含む問合要求をDNSサーバ70に送信して、DNSサーバ70から、デバイス名「PN」に関連付けて登録されている割当IPアドレスと、割当IPアドレスに関連付けて登録されているデバイス名「PN」と、のうちの一方を含む問合応答を受信することを監視してもよい。本変形例では、プリンタ10は、割当IPアドレスとデバイス名「PN」との一方を含む問合応答を受信する場合に、S50でYESと判断し、割当IPアドレスとデバイス名「PN」とのいずれも含まない問合応答を受信する場合に、S50でNOと判断する。これらの変形例は、第2及び第3実施例にも本変形例を適用してもよい。即ち、「第1(又は第2)の問合情報」、「第1(又は第4)の問合応答」は、それぞれ、対象デバイス名と第1(又は第2)のIPアドレスとのうちの少なくとも一方の情報、少なくとも他方の情報を含んでいればよい。
【0074】
(変形例3)DHCPサーバであるAP50AとDNSサーバ70とが一体に構成されてもよい。この場合、例えば、
図4のケースBのT130では、AP50A内のDHCPサーバは、デバイス名「PN」とIPA1とを関連付けて登録すべきことを、AP50A内のDNSサーバに指示すればよい。例えば、当該指示が与えられるタイミングでDNSサーバの機能がOFFされている場合には、DNSサーバは当該指示を受け付けず、ケースBと同様の事象が起こり得る。即ち、「第1のサーバ」と「第2のサーバ」とは、実施例のように別体に構成されていてもよいし、本変形例のように一体に構成されていてもよい。
【0075】
(変形例4)プリンタ10は、
図2のS30を省略して、S20の直後にS40を実行してもよい。同様に、
図5のS130及び
図7のS230を省略してもよい。即ち、「第1(又は第2)の問合要求送信部」は、待機を実行せずに、第1(又は第2)の問合要求を第1のサーバに送信してもよい。
【0076】
(変形例5)
図5のS130及び
図7のS230において、1回目〜3回目の所定時間が同じでもよい。即ち、「第2の問合要求送信部」は、第1の所定時間と同じ時間が経過するまで待機してもよい。
【0077】
(変形例6)
図2のS10及びS12に代えて、プリンタ10は、ユーザから、プリンタ10のIPアドレスとして利用されるべきIPアドレスの入力を受け付けてもよい。この場合、プリンタ10は、当該IPアドレスを利用してS14以降の処理を実行する。第2及び第3実施例にも本変形例を適用してもよい。本変形例では、「第2の割当要求送信部」、「第4のアドレス受信部」、及び、「第4の記憶制御部」を省略可能である。
【0078】
(変形例7)プリンタ10は、
図2のS14〜S18を省略して、S12の直後にS20を実行してもよい。第2及び第3実施例でも同様である。本変形例では、「判断部」を省略可能である。
【0079】
(変形例8)プリンタ10は、
図2のS20の後に、問合要求をDNSサーバ70に送信すべきか否かをユーザに選択させるための選択画面を表示してもよい。そして、プリンタ10は、問合要求を送信すべきことがユーザによって選択される場合に、S40〜S60の処理を実行し、問合要求を送信すべきでないことがユーザによって選択される場合に、S40〜S60の処理を実行せずに
図2の処理を終了してもよい。第2及び第3実施例にも本変形例を適用してもよい。
【0080】
(変形例9)プリンタ10は、プリンタ10の電源がONされた際に、
図2、
図5、又は、
図7の処理を開始するのみならず、例えば、プリンタ10の電源がONされてから所定時間が経過した際に、
図2等の処理を開始してもよい。また、プリンタ10は、例えば、DHCPサーバから受信された現在のIPアドレスの有効期限が到来した際に、
図2等の処理を開始してもよい。また、プリンタ10は、DDNS機能が無効化されている状態から有効化されている状態に変更された際に、
図2又は
図7の処理を開始してもよい。
【0081】
(変形例10)プリンタ10は、
図2のS18でYESの場合に、処理を終了せずに、S20に進んでもよい。即ち、プリンタ10は、割当IPアドレスに一致するIPアドレスが他の装置にも割り当てられている状況でも、S20以降の処理を実行してもよい。
【0082】
(変形例11)プリンタ10は、
図2のS14において、割当IPアドレスを含むARP信号を送信する代わりに、例えばPING信号をブロードキャストによって送信し、LAN4A内の各デバイスから当該デバイスのIPアドレスを含む応答信号を受信してもよい。そして、プリンタ10は、S16において、いずれかの応答信号が割当IPアドレスを含む場合にYESと判断してS18に進み、いずれの応答信号も割当IPアドレスを含まない場合にNOと判断してS20に進んでもよい。
【0083】
(変形例12)
図6のケースCでは、AP50AがIPアドレスをプリンタ10に割り当ててから登録指示をDNSサーバ70に送信するまでの時間が長い状況を想定している。これに代えて、AP50Aが登録指示をDNSサーバ70に送信するまでの時間は短いが、DNSサーバ70が登録指示に従ってデバイス名「PN」と割当IPアドレスとを関連付けて登録するのに時間を要する状況を想定する。例えば、AP50AがT212Aの処理から1分以内に登録指示をDNSサーバ70に送信するが、DNSサーバ70がIPA1の登録に1分以上を要する場合には、プリンタ10は、T240Aで問合要求を送信しても、T242AでIPBを含む問合応答を受信する。この場合、プリンタ10は、T210Bで割当要求をAP50Aに再び送信し、T212BでAP50AからIPA2を受信する。そして、プリンタ10は、T220Bの処理から2分待機して、T240Bで問合要求をDNSサーバ70に送信する。その2分の間にDNSサーバ70においてIPA2が登録されると、プリンタ10は、DNSサーバ70からIPA2を含む問合応答を受信する。即ち、プリンタ10は、T210Bで割当要求をAP50Aに再び送信することによって、IPA2をDNSサーバ70に適切に登録することができる。第2実施例及び第3実施例の技術は、このような状況にも有効である。
【0084】
(変形例13)「通信装置」は、プリンタ10に限られず、IPアドレスを利用した通信を実行する他の装置(例えば、スキャナ、多機能機、PC、サーバ、携帯端末等)であってもよい。
【0085】
(変形例14)上記の各実施例では、
図2、
図5、及び、
図7の各処理がソフトウェア(即ちプログラム36)によって実現されるが、これらの各処理のうちの少なくとも1つが論理回路等のハードウェアによって実現されてもよい。
【0086】
また、本明細書または図面に説明した技術要素は、単独であるいは各種の組合せによって技術的有用性を発揮するものであり、出願時請求項記載の組合せに限定されるものではない。また、本明細書または図面に例示した技術は複数目的を同時に達成するものであり、そのうちの一つの目的を達成すること自体で技術的有用性を持つものである。
本特許出願時に特許請求の範囲に記載の事項を以下に列挙しておく。
(項目1)
通信装置であって、
前記通信装置のデバイス名として前記通信装置のメモリに記憶されている対象デバイス名と、前記通信装置のIPアドレスとして前記メモリに記憶されている第1のIPアドレスと、のうちの少なくとも一方の情報を含む第1の問合要求を第1のサーバに送信する第1の問合要求送信部であって、前記第1のサーバは、特定の装置からデバイス名とIPアドレスとのうちの一方の情報を含む問合要求を受信する場合に、当該デバイス名と当該IPアドレスとのうち、前記問合要求に含まれる前記一方の情報に関連する他方の情報を含む問合応答を前記特定の装置に送信する、前記第1の問合要求送信部と、
前記第1の問合要求を前記第1のサーバに送信することに応じて、前記第1のサーバから、前記対象デバイス名と前記第1のIPアドレスとのうちの少なくとも他方の情報を含む第1の問合応答が受信されない場合に、前記対象デバイス名と前記通信装置の第2のIPアドレスとを関連付けて前記第1のサーバに登録するための所定要求を所定サーバに送信する所定要求送信部であって、前記第1の問合要求を前記第1のサーバに送信することに応じて、前記第1のサーバから前記第1の問合応答が受信される場合に、前記所定要求は前記所定サーバに送信されない、前記所定要求送信部と、
を備える、通信装置。
(項目2)
前記所定要求は、前記対象デバイス名と、前記第1のIPアドレスに一致する前記第2のIPアドレスと、を含む登録要求であって、前記対象デバイス名と前記第2のIPアドレスとを関連付けて登録すべきことを、前記所定サーバである前記第1のサーバに要求する前記登録要求であり、
前記所定要求送信部は、前記第1の問合要求を前記第1のサーバに送信することに応じて、前記第1のサーバから前記第1の問合応答が受信されない場合に、前記登録要求を前記第1のサーバに送信する、項目1に記載の通信装置。
(項目3)
前記所定要求送信部は、前記第1の問合要求を前記第1のサーバに送信することに応じて、前記第1のサーバから、前記第1の問合要求に含まれる前記一方の情報が前記第1のサーバに登録されていないことを示す未登録情報を含む第2の問合応答が受信される場合に、前記登録要求を前記第1のサーバに送信する、項目2に記載の通信装置。
(項目4)
前記所定要求送信部は、前記第1の問合要求を前記第1のサーバに送信することに応じて、前記第1のサーバから、前記第1の問合要求に含まれる前記一方の情報に関連付けて前記第1のサーバに登録されている登録情報であって、前記対象デバイス名と前記第1のIPアドレスとのうちの前記他方の情報とは異なる前記登録情報を含む第3の問合応答が受信される場合に、前記登録要求を前記第1のサーバに送信する、項目3に記載の通信装置。
(項目5)
前記通信装置は、さらに、
前記第1の問合要求を前記第1のサーバに送信することに応じて、前記第1のサーバから、前記第1の問合要求に含まれる前記一方の情報に関連付けて前記第1のサーバに登録されている登録情報であって、前記対象デバイス名と前記第1のIPアドレスとのうちの前記他方の情報とは異なる前記登録情報を含む第3の問合応答が受信される場合に、前記通信装置へのIPアドレスの割り当てを要求する割当要求を第2のサーバに送信する第1の割当要求送信部と、
前記割当要求を前記第2のサーバに送信することに応じて、前記第2のサーバから第3のIPアドレスを受信する第1のアドレス受信部であって、前記第2のサーバは、前記通信装置から前記割当要求を受信する場合に、前記対象デバイス名と前記第3のIPアドレスとを関連付けて登録すべきことを前記第1のサーバに指示する、前記第1のアドレス受信部と、
前記第2のサーバから前記第3のIPアドレスが受信される場合に、前記通信装置のIPアドレスとして前記第1のIPアドレスに代えて前記第3のIPアドレスを前記メモリに記憶する第1の記憶制御部と、
を備える、項目3に記載の通信装置。
(項目6)
前記所定要求は、前記通信装置へのIPアドレスの割り当てを、前記所定サーバである第2のサーバに要求する割当要求であり、
前記所定要求送信部は、前記第1の問合要求を前記第1のサーバに送信することに応じて、前記第1のサーバから前記第1の問合応答が受信されない場合に、前記割当要求を前記第2のサーバに送信し、
前記通信装置は、さらに、
前記割当要求を前記第2のサーバに送信することに応じて、前記第2のサーバから前記第2のIPアドレスを受信する第2のアドレス受信部であって、前記第2のサーバは、前記通信装置から前記割当要求を受信する場合に、前記対象デバイス名と前記第2のIPアドレスとを関連付けて登録すべきことを前記第1のサーバに指示する、前記第2のアドレス受信部と、
前記第2のサーバから前記第2のIPアドレスが受信される場合に、前記通信装置のIPアドレスとして前記第1のIPアドレスに代えて前記第2のIPアドレスを前記メモリに記憶する第2の記憶制御部と、
を備える、項目1に記載の通信装置。
(項目7)
前記通信装置は、さらに、
前記第2のサーバから前記第2のIPアドレスが受信される場合に、前記対象デバイス名と前記第2のIPアドレスとのうちの少なくとも一方の情報を含む第2の問合要求を前記第1のサーバに送信する第2の問合要求送信部と、
前記第2の問合要求を前記第1のサーバに送信することに応じて、前記第1のサーバから、前記対象デバイス名と前記第2のIPアドレスとのうちの少なくとも他方の情報を含む第4の問合応答が受信されない場合に、前記割当要求を前記第2のサーバに再び送信する再送信部であって、前記第2の問合要求を前記第1のサーバに送信することに応じて、前記第1のサーバから前記第4の問合応答が受信される場合に、前記割当要求は前記第2のサーバに再び送信されない、前記再送信部と、
前記割当要求を前記第2のサーバに再び送信することに応じて、前記第2のサーバから第3のIPアドレスを受信する第3のアドレス受信部であって、前記第2のサーバは、前記通信装置から前記割当要求を再び受信する場合に、前記対象デバイス名と前記第3のIPアドレスとを関連付けて登録すべきことを前記第1のサーバに指示する、前記第3のアドレス受信部と、
前記第2のサーバから前記第3のIPアドレスが受信される場合に、前記通信装置のIPアドレスとして前記第2のIPアドレスに代えて前記第3のIPアドレスを前記メモリに記憶する第3の記憶制御部と、
を備える、項目6に記載の通信装置。
(項目8)
前記通信装置は、さらに、
前記第2のサーバから前記第2のIPアドレスが受信される場合に、前記対象デバイス名と前記第2のIPアドレスとのうちの少なくとも一方の情報を含む第2の問合要求を前記第1のサーバに送信する第2の問合要求送信部と、
前記第2の問合要求を前記第1のサーバに送信することに応じて、前記第1のサーバから、前記対象デバイス名と前記第2のIPアドレスとのうちの少なくとも他方の情報を含む第4の問合応答が受信されない場合に、前記対象デバイス名と前記第2のIPアドレスとを関連付けて登録すべきことを要求する登録要求を前記第1のサーバに送信する登録要求送信部であって、前記第2の問合要求を前記第1のサーバに送信することに応じて、前記第1のサーバから前記第4の問合応答が受信される場合に、前記登録要求は前記第1のサーバに送信されない、前記登録要求送信部と、
を備える、項目6に記載の通信装置。
(項目9)
前記通信装置は、さらに、
前記通信装置のIPアドレスとして前記第1のIPアドレスが前記メモリに記憶される前に、前記割当要求を前記第2のサーバに送信する第2の割当要求送信部と、
前記通信装置のIPアドレスとして前記第1のIPアドレスが前記メモリに記憶される前に、前記割当要求を前記第2のサーバに送信することに応じて、前記第2のサーバから前記第1のIPアドレスを受信する第4のアドレス受信部であって、前記第2のサーバは、前記通信装置から前記割当要求を受信する場合に、前記対象デバイス名と前記第1のIPアドレスとを関連付けて登録すべきことを前記第1のサーバに指示する、前記第4のアドレス受信部と、
前記第2のサーバから前記第1のIPアドレスが受信される場合に、前記通信装置のIPアドレスとして前記第1のIPアドレスを前記メモリに記憶する第4の記憶制御部と、を備え、
前記第1の問合要求送信部は、前記第1のIPアドレスが前記メモリに記憶されてから第1の所定時間が経過するまで待機し、前記第1の所定時間が経過する場合に、前記第1の問合要求を前記第1のサーバに送信し、
前記第2の問合要求送信部は、前記第1のIPアドレスに代えて前記第2のIPアドレスが前記メモリに記憶されてから、前記第1の所定時間よりも長い第2の所定時間が経過するまで待機し、前記第2の所定時間が経過する場合に、前記第2の問合要求を前記第1のサーバに送信する、項目7又は8に記載の通信装置。
(項目10)
前記通信装置は、さらに、
前記通信装置のIPアドレスとして前記第1のIPアドレスが前記メモリに記憶される前に、前記通信装置へのIPアドレスの割り当てを要求する割当要求を第2のサーバに送信する第2の割当要求送信部と、
前記通信装置のIPアドレスとして前記第1のIPアドレスが前記メモリに記憶される前に、前記割当要求を前記第2のサーバに送信することに応じて、前記第2のサーバから前記第1のIPアドレスを受信する第4のアドレス受信部であって、前記第2のサーバは、前記通信装置から前記割当要求を受信する場合に、前記対象デバイス名と前記第1のIPアドレスとを関連付けて登録すべきことを前記第1のサーバに指示する、前記第4のアドレス受信部と、
前記第2のサーバから前記第1のIPアドレスが受信される場合に、前記通信装置のIPアドレスとして前記第1のIPアドレスを前記メモリに記憶する第4の記憶制御部と、
を備える、項目1から8のいずれか一項に記載の通信装置。
(項目11)
前記第1の問合要求送信部は、前記第1のIPアドレスが前記メモリに記憶されてから所定時間が経過するまで待機し、前記所定時間が経過する場合に、前記第1の問合要求を前記第1のサーバに送信する、項目10に記載の通信装置。
(項目12)
前記通信装置は、さらに、
前記第2のサーバから前記第1のIPアドレスが受信される場合に、前記通信装置が所属するネットワークに信号を送信することによって、前記ネットワーク内の他の装置に前記第1のIPアドレスが割り当てられているのか否かを判断する判断部を備え、
前記第4の記憶制御部は、前記他の装置に前記第1のIPアドレスが割り当てられていないと判断される場合に、前記通信装置のIPアドレスとして前記第1のIPアドレスを前記メモリに記憶し、
前記他の装置に前記第1のIPアドレスが割り当てられていると判断される場合に、前記第1のIPアドレスは前記通信装置のIPアドレスとして前記メモリに記憶されない、項目9から11のいずれか一項に記載の通信装置。
(項目13)
前記対象デバイス名と前記第1のIPアドレスとのうちの前記一方の情報は、前記対象デバイス名であり、
前記対象デバイス名と前記第1のIPアドレスとのうちの前記他方の情報は、前記第1のIPアドレスである、項目1から12のいずれか一項に記載の通信装置。
(項目14)
通信装置のためのコンピュータプログラムであって、
前記通信装置のコンピュータを、
前記通信装置のデバイス名として前記通信装置のメモリに記憶されている対象デバイス名と、前記通信装置のIPアドレスとして前記メモリに記憶されている第1のIPアドレスと、のうちの少なくとも一方の情報を含む第1の問合要求を第1のサーバに送信する第1の問合要求送信部であって、前記第1のサーバは、特定の装置からデバイス名とIPアドレスとのうちの一方の情報を含む問合要求を受信する場合に、当該デバイス名と当該IPアドレスとのうち、前記問合要求に含まれる前記一方の情報に関連する他方の情報を含む問合応答を前記特定の装置に送信する、前記第1の問合要求送信部と、
前記第1の問合要求を前記第1のサーバに送信することに応じて、前記第1のサーバから、前記対象デバイス名と前記第1のIPアドレスとのうちの少なくとも他方の情報を含む第1の問合応答が受信されない場合に、前記対象デバイス名と前記通信装置の第2のIPアドレスとを関連付けて前記第1のサーバに登録するための所定要求を所定サーバに送信する所定要求送信部であって、前記第1の問合要求を前記第1のサーバに送信することに応じて、前記第1のサーバから前記第1の問合応答が受信される場合に、前記所定要求は前記所定サーバに送信されない、前記所定要求送信部と、
として機能させる、コンピュータプログラム。
(項目15)
通信装置によって実行される方法であって、
前記通信装置のデバイス名として前記通信装置のメモリに記憶されている対象デバイス名と、前記通信装置のIPアドレスとして前記メモリに記憶されている第1のIPアドレスと、のうちの少なくとも一方の情報を含む第1の問合要求を第1のサーバに送信する第1の問合要求送信ステップであって、前記第1のサーバは、特定の装置からデバイス名とIPアドレスとのうちの一方の情報を含む問合要求を受信する場合に、当該デバイス名と当該IPアドレスとのうち、前記問合要求に含まれる前記一方の情報に関連する他方の情報を含む問合応答を前記特定の装置に送信する、前記第1の問合要求送信ステップと、
前記第1の問合要求を前記第1のサーバに送信することに応じて、前記第1のサーバから、前記対象デバイス名と前記第1のIPアドレスとのうちの少なくとも他方の情報を含む第1の問合応答が受信されない場合に、前記対象デバイス名と前記通信装置の第2のIPアドレスとを関連付けて前記第1のサーバに登録するための所定要求を所定サーバに送信する所定要求送信ステップであって、前記第1の問合要求を前記第1のサーバに送信することに応じて、前記第1のサーバから前記第1の問合応答が受信される場合に、前記所定要求は前記所定サーバに送信されない、前記所定要求送信ステップと、
を備える方法。