(57)【要約】【課題】ＩＰｖ４とＩＰｖ６アドレスとの通信ができる通信仲介装置が無く、通信対象デバイスが、ＩＰｖ４通信とＩＰｖ６通信とを、排他的に切り替えても、引き続き通信対象デバイスと通信することができる通信方法を提供することを目的とする。【解決手段】複数の通信プロトコルを有するネットワーク経由の通信方法であって、クライアント内に，通信対象デバイスのＭＡＣアドレスと、ＩＰアドレスとを関連付けて保持する保持工程と、保持している通信対象デバイスのＩＰアドレスが有効でない場合に、デバイスの通信プロトコルが変更されたと判断する判断工程と、通信プロトコル毎に異なるＩＰアドレス特定方法によって特定されたＩＰアドレスを用いて通信を試みる通信試み工程とを有することを特徴とする通信方法である。【選択図】図９
2009272826.tif 000002
【特許請求の範囲】
【請求項１】
複数の通信プロトコルを有するネットワーク経由の通信方法であって、
クライアント内に、通信対象デバイスのＭＡＣアドレスと、ＩＰアドレスとを関連付けて保持する保持工程と；
保持している通信対象デバイスのＩＰアドレスが有効でない場合に、デバイスの通信プロトコルが変更されたと判断する判断工程と；
通信プロトコル毎に異なるＩＰアドレス特定方法によって特定されたＩＰアドレスを用いて通信を試みる通信試み工程と；
を有することを特徴とする通信方法。
【請求項２】
請求項１において、
上記ＩＰアドレス特定方法は、第１のアドレス特定方法と第２のアドレス特定方法とであり、
第１のアドレス特定方法は、通信対象デバイスのＭＡＣアドレスに基づいて、ＩＰアドレスを予測作成する方法であり、
第２のアドレス特定方法は、ｂｒｏａｄｃａｓｔ又はｕｎｉｃａｓｔによって発行した所定コマンドの応答を用いて、ＩＰアドレスを特定する方法であることを特徴とする通信方法。
【請求項３】
情報通信処理装置において、
複数のＩＰバージョンとして、ＩＰｖ４とＩＰｖ６とを用いて、ネットワーク経由で通信する通信手段と；
通信対象デバイスのＭＡＣアドレスとＩＰアドレスとを関連付けて保持する通信デバイス情報保持手段と；
上記通信デバイス情報保持手段が保持している上記通信対象デバイスのＩＰアドレスが有効でない場合、上記通信対象デバイスのＩＰバージョンが変更されたと判断する判断手段と；
上記通信対象デバイスのＩＰバージョンが、ＩＰｖ４に変更されたと、上記判断手段が判断すると、変更後のＩＰｖ４アドレスを特定するＩＰｖ４アドレス特定手段と；
上記通信対象デバイスのＩＰバージョンが、ＩＰｖ６に変更されたと、上記判断手段が判断すると、変更後のＩＰｖ６アドレスを、上記ＩＰｖ４アドレス特定手段とは異なる方法で特定するＩＰｖ６アドレス特定手段と；
上記通信対象デバイスのＩＰバージョンが、変更されたと、上記判断手段が判断すると、ＩＰｖ４特定手段又はＩＰｖ６特定手段によって特定された変更後のＩＰアドレスを用い、上記通信対象デバイスとの通信を試みる通信試み手段と；
を有することを特徴とする情報通信処理装置。
【請求項４】
請求項３において、
ＩＰｖ６アドレス特定方法は、通信対象デバイスのＭＡＣアドレスに基づいて、ＩＰアドレスを予測作成する方法であり、
ＩＰｖ４アドレス特定方法は、ｂｒｏａｄｃａｓｔやｕｎｉｃａｓｔによって発行した所定コマンドの応答を用いて、ＩＰアドレスを特定する方法であることを特徴とする情報通信処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、動作通信プロトコルを、排他的に切り替えるデバイスと通信する通信方法及び情報通信処理装置に関する。
【背景技術】
【０００２】
従来、通信プロトコルとして、インターネットでの通信に用いられるインターネットプロトコル（ＩＰ）が知られ、近年、情報インフラの普及に伴いＩＰアドレスの枯渇化等が問題になっている。既存のインターネットプロトコルであるＩＰｖ４（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ  ｖｅｒｓｉｏｎ  ４）に代わり、新しいバージョンのインターネットプロトコルが採用されつつある。新しいバージョンのインターネットプロトコルは、ＩＰｖ６（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ  ｖｅｒｓｉｏｎ  ６）である。
【０００３】
現在は、ＩＰｖ６への移行期であり、ＩＰｖ４によって動作する端末と、ＩＰｖ６によって動作する端末とが混在しているネットワーク環境が多く存在している。このために、現在では、ＩＰｖ４とＩＰｖ６との両プロトコルによって通信可能な通信仲介装置（たとえばゲートウェイやサーバ、ルータ等である）が考案されている（たとえば、特許文献１、特許文献２参照）。
【０００４】
特許文献１記載の発明は、２種類の通信プロトコル（Ｐ１、Ｐ２）と、ＩＰアドレス（Ａ１、Ａ２）とが混在するネットワークにおいて、サーバが、ＩＰアドレスＡ２が付与されているｎｏｄｅに、ＩＰアドレスＡ１を動的に割り当てる発明である。管理サーバは、ＩＰアドレスＡ１とＡ２とを関連付けて管理し、ＩＰアドレスＡ１宛ての通信を、ＩＰアドレスＡ２宛ての通信に変換した後に、転送する。
【０００５】
ＩＰｖ６の通信要求を受けたら、受信側ＩＰアドレスを一時的に仮想アドレス（ＩＰｖ４）に書き換え、ＩＰｖ４での送信処理を行う通信中継手段の発明が知られている（たとえば、特許文献２参照）。送信直前に、次の［ａ］又は［ｂ］の処理を行う。［ａ］受信側が、仮想ＩＰアドレスである場合、ＩＰｖ６アドレスに復元し、ＩＰｖ６デバイスから送信する。［ｂ］受信側が、ＩＰｖ４である場合、ＩＰｖ４デバイスから送信する。
【０００６】
また、ＩＰｖ４のみに関しては、通信対象デバイスのＩＰｖ４アドレスが変更されても、それに追従して、引き続き通信を行う方法が考案されている（たとえば、特許文献４参照）。
【０００７】
特許文献４記載の発明は、ネットワークセットアップの発明であり、レジストリにポートインスタンス情報４０６として、ポート名称とＭＡＣアドレス及びＩＰアドレスとを関連付け、保持する発明である。
【０００８】
上記特許文献１、２記載の通信仲介装置を介して、ＩＰｖ４によって動作する端末と、ＩＰｖ６によって動作する端末とが混在するネットワーク環境でも、ＩＰｖ４で動作する装置とＩＰｖ６で動作する装置との間で、通信することができる。
【０００９】
しかし、上記のような通信仲介装置が存在しない環境では、ＩＰｖ４で動作しているデバイスと、ＩＰｖ６で動作しているデバイスとが互いに通信することができないという問題がある。この問題は、デバイスがＩＰｖ４とＩＰｖ６との同時動作ができない環境で、顕著に表れる。
【００１０】
次に、ＩＰｖ４／ＩＰｖ６の同時動作が可能なＰＣと、ＩＰｖ４通信とＩＰｖ６通信とを排他的に切り替えて動作する通信対象デバイスとが、ＩＰｖ４で通信している例について説明する。
【００１１】
ＰＣは、デバイスと通信するためのＰＣドライバを備え、ＰＣドライバには、通信対象デバイスのＩＰｖ４アドレスが予め登録されている。この結果、ＰＣドライバは、登録済みのＩＰアドレスに基づいて、デバイスとの通信が確立済みであるとする。
【００１２】
この状況下で、通信対象デバイスの稼動ＩＰバージョンが、ＩＰｖ６に切り替えられるとする。ＰＣドライバは、ＩＰｖ４アドレスに基づいて、通信対象デバイスとの通信を試みるが、通信できないという問題が生じる。
【００１３】
また、通信対象デバイスの稼動ＩＰバージョンが、ＩＰｖ６からＩＰｖ４に切り替えられた場合も、上記と同様の問題が生じる。
【００１４】
Ｂｒｏａｄｃａｓｔ通信が遮断される環境において、通信対象デバイスのＩＰｖ４アドレスが変更されても、ｕｎｉｃａｓｔ通信を使用し、通信対象デバイスのＩＰアドレスの変更に追従し、通信を継続する方法が考案されている（たとえば、特許文献３参照）。
【００１５】
特許文献３記載の発明は、Ｂｒｏａｄｃａｓｔ通信がブロックされる環境において、デバイスのＩＰｖ４アドレスが（ＤＨＣＰによって）変更になっても、変更前のＩＰｖ４アドレスの近隣に、ｕｎｉｃａｓｔを行う発明である。これによって、変更後のＩＰｖ４アドレスを特定する発明である。
【特許文献１】特開２０００−１８３８７４号公報
【特許文献２】特開２００２−１５２２４８公報
【特許文献３】特開２００６−３４０２８６号公報
【特許文献４】特開２００６−３３８３５８号公報
【発明の開示】
【発明が解決しようとする課題】
【００１６】
しかし、上記特許文献３記載の手法では、ＩＰｖ６に適用できない。つまり、ＩＰｖ４の通信とＩＰｖ６アドレスの通信とができる通信仲介装置が無ければ、通信対象デバイスが、ＩＰｖ４通信とＩＰｖ６通信とを、切り替えると、稼動ＩＰバージョン（ＩＰｖ４又はＩＰｖ６）が突然切り替えられ、通信できないという問題がある。
【００１７】
本発明は、ＩＰｖ４とＩＰｖ６アドレスとの通信ができる通信仲介装置が無く、通信対象デバイスが、ＩＰｖ４通信とＩＰｖ６通信とを、排他的に切り替えても、引き続き通信対象デバイスと通信することができる通信方法を提供することを目的とする。
【課題を解決するための手段】
【００１８】
本発明は、複数の通信プロトコルを有するネットワーク経由の通信方法であって、クライアント内に，通信対象デバイスのＭＡＣアドレスと、ＩＰアドレスとを関連付けて保持する保持工程と、保持している通信対象デバイスのＩＰアドレスが有効でない場合に、デバイスの通信プロトコルが変更されたと判断する判断工程と、通信プロトコル毎に異なるＩＰアドレス特定方法によって特定されたＩＰアドレスを用いて通信を試みる通信試み工程とを有することを特徴とする通信方法である。
【発明の効果】
【００１９】
本発明によれば、ＩＰｖ４アドレスの通信とＩＰｖ６アドレスの通信とができる通信仲介装置が無い場合、通信対象デバイスが、ＩＰｖ４通信とＩＰｖ６通信とを、排他的に切り替えても、引き続き通信対象デバイスと通信することができるという効果を奏する。
【発明を実施するための最良の形態】
【００２０】
発明を実施するための最良の形態は、次の実施例である。
【実施例１】
【００２１】
図１は、本発明の実施例１におけるネットワーク印刷環境１００を示す概念図である。
【００２２】
実施例１は、Ｎｅｔｗｏｒｋ経由の印刷処理である。
【００２３】
ネットワーク印刷環境１００は、ＬＡＮ１０１と、ルータ１０２と、ＰＣ１０３と、ネットワークプリンタ１０４とを有する。ＬＡＮ１０１に、ルータ１０２、ＰＣ１０３、ネットワークプリンタ１０４が接続されている。
【００２４】
ルータ１０２は、ＩＰｖ６とＩＰｖ４との両者で通信可能な一般に販売されている通信仲介装置であり、接続されているネットワーク内において、ＩＰアドレスの解決等を行う。ルータ１０２は、無線通信機能を具備し、アクセスポイントと称されるものもある。
【００２５】
実施例１は、有線ＬＡＮケーブルであるＬＡＮ１０１によって構成されているネットワークであるが、無線ＬＡＮであってもよく、有線ＬＡＮと無線ＬＡＮとが混在するネットワークであってもよい。
【００２６】
なお、図１には、１台のＰＣのみを示しているが、複数のＰＣが、１つのルータ１０２に接続可能であり、１つのネットワークプリンタ１０４を、複数のＰＣで共有して印刷することが可能である。
【００２７】
実施例１において、ＰＣ１０３とネットワークプリンタ１０４とは、ルータ１０２によって適切なＩＰアドレスが割り当てられ、ＬＡＮ１０１経由での通信が可能である。
【００２８】
図２は、実施例１で使用するＰＣ１０３の概略構成を示すブロック図である。
【００２９】
ＰＣ１０３は、情報通信処理装置の例であり、ＣＰＵ２０１と、ＲＡＭ２０２と、ＲＯＭ２０３と、ネットワークＩ／Ｆ２０４と、ＵＳＢ  Ｉｎｔｅｒｆａｃｅ（Ｉ／Ｆ）２０５と、ディスクコントローラ２０６と、キーボードコントローラ２０７とを有する。また、ＰＣ１０３は、ディスプレイコントローラ２０８と、プリンタコントローラ２０９と、ネットワークコネクタ２１１と、ＵＳＢコネクタ２１２と、ディスク２１３と、ディスプレイ２１５とを有する。
【００３０】
ＣＰＵ２０１は、ＲＯＭ２０３のプログラム用ＲＯＭ又はディスク２１３に記憶されている文書処理プログラム等に基づいて、図形や、イメージ、文字、表（表計算等を含む）等が混在している文書を処理する。ディスク２１３は、外部メモリであり、ハードディスク（ＨＤ）やフレキシブルディスク（ＦＤ）等で構成されている。
【００３１】
また、ＣＰＵ２０１は、システムバス２１０に接続されている各デバイスを総括的に制御する。
【００３２】
ＲＯＭ２０３のプログラム用ＲＯＭ又はディスク２１３には、ＣＰＵ２０１の制御プログラムであるＯｐｅｒａｔｉｏｎ  Ｓｙｓｔｅｍ  ｐｒｏｇｒａｍ（ＯＳ）等が記憶されている。ＲＯＭ２０３のフォント用ＲＯＭ又はディスク２１３には、上記文書処理の際に使用するフォントデータ等が記憶されている。ＲＯＭ２０３のデータ用ＲＯＭ又はディスク２１３には、上記文書処理等を行う際に使用する各種データが記憶されている。
【００３３】
ＲＡＭ２０２は、ＣＰＵ２０１の主メモリやワークエリア等として機能する。
【００３４】
ディスクコントローラ２０６は、ディスク２１３とのアクセスを制御する。
【００３５】
ディスク２１３は、ブートプログラム、各種アプリケーション、フォントデータ、ユーザファイル、編集ファイル、及びプリンタ制御コマンド生成プログラム（以下、「プリンタドライバ」という）等を記憶する。
【００３６】
キーボードコントローラ２０７は、キーボード２１４や不図示のポインティングデバイスからのキー入力を制御する。
【００３７】
ディスプレイコントローラ２０８は、ディスプレイ２１５の表示を制御する。
【００３８】
プリンタコントローラ２０９は、ＵＳＢ  Ｉｎｔｅｒｆａｃｅ（Ｉ／Ｆ）２０５、ＵＳＢコネクタ２１２、又は、ネットワークＩ／Ｆ２０４、ネットワークコネクタ２１１を介して接続するプリンタとの通信制御処理を実行する。
【００３９】
ＵＳＢ  Ｉ／Ｆ２０５は、ＵＳＢコネクタ２１２に接続される図示しないＵＳＢケーブルを介してネットワークプリンタ１０４と通信することができる。
【００４０】
ネットワークＩ／Ｆ２０４は、ネットワークコネクタ２１１に接続され、図示しないＰＣＭＣＩＡカードタイプの無線ＬＡＮカード又はＬＡＮケーブルを介して、ネットワーク経由で、プリンタと通信する。上記無線ＬＡＮ通信に関連する部位が、ＰＣに内蔵されていてもよい。
【００４１】
なお、ＣＰＵ２０１は、たとえばＲＡＭ２０２上に設定されている表示情報のアウトラインフォントへの展開（ラスタライズ）処理を実行し、ディスプレイ２１５上でのＷＹＳＩＷＹＧを可能としている。また、ＣＰＵ２０１は、ディスプレイ２１５上に表示されているマウスカーソル等で指示されたコマンドに基づいて、登録された種々のウインドウを開き、種々のデータ処理を実行する。
【００４２】
これによって、ユーザは、印刷を実行する際、印刷の設定に関するウインドウを開き、ネットワークプリンタ１０４の設定や、印刷モードの選択を含むプリンタドライバに対する印刷処理方法の設定を行うことができる。
【００４３】
また、一般的に、ＰＣでは何らかのＯＳが動作し、このＯＳ環境で印刷する場合、印刷用ソフト（プリンタドライバ）が必要である。プリンタドライバは、ＯＳメーカ又はプリンタメーカから提供され、ＰＣに予めインストールし、ＣＤ等の形式で提供される。プリンタで印刷するためには、何らかの形でプリンタドライバをインストールする必要があり、実施例１は、プリンタドライバがインストール済みであるとする。
【００４４】
図３は、実施例１で使用するネットワークプリンタ１０４の概略を示すブロック図である。
【００４５】
プリンタ用ＣＰＵ３０１は、印刷部Ｉ／Ｆ３０７を経由して、システムバス３１０に接続される印刷部３１４に、出力情報としての画像信号を出力する。ＣＰＵ３０１は、これらの処理を、ＲＯＭ３０３のプログラム用ＲＯＭに記憶されている制御プログラム等、又はディスク３１３に記憶されている制御プログラム等に基づいて実行する。
【００４６】
ＲＯＭ３０３のプログラム用ＲＯＭには、ＣＰＵ３０１の制御プログラム等が記憶されている。ＲＯＭ３０３のフォント用ＲＯＭには、上記出力情報を生成する際に使用するフォントデータ等が記憶されている。ＲＯＭ３０３のデータ用ＲＯＭには、ハードディスク等のディスク３１３を用いないネットワークプリンタ１０４である場合、ＰＣ１０３上で利用される情報等が記憶されている。
【００４７】
ＣＰＵ３０１は、ネットワークプリンタ１０４内の情報等を、ＰＣ１０３に通知可能に構成されている。ＲＡＭ３０２は、ＣＰＵ３０１の主メモリやワークエリア等として機能する。またＲＡＭ３０２は、図示しない増設ポートに接続されているオプションＲＡＭによって、メモリ容量を拡張することができる。
【００４８】
ＵＳＢ  Ｉ／Ｆ３０５は、ＵＳＢコネクタ３１２に接続されている図示しないＵＳＢケーブルを介して、ＰＣ１０３と通信する。
【００４９】
ネットワークＩ／Ｆ３０４は、ネットワークコネクタ３１１に接続される図示しないＰＣＭＣＩＡカードタイプの無線ＬＡＮカード又はＬＡＮケーブルを介して、ＰＣ１０３とネットワークとを経由し、通信することができる。上記無線ＬＡＮ通信に関連する部位を、ＰＣに内蔵するようにしてもよい。
【００５０】
ＲＡＭ３０２は、出力情報展開領域や、環境データ格納領域、ＮＶＲＡＭ等に用いられる。ハードディスク（ＨＤ）や、ＩＣカード等のディスク３１３は、メモリコントローラ３０６によって、アクセスを制御される。ディスク３１３は、オプションとして接続され、フォントデータや、エミュレーションプログラム、フォームデータ等を記憶する。さらに、操作パネル３１５には、操作のためのスイッチ及びＬＥＤ表示器等が配されている。
【００５１】
また、ディスク３１３は、少なくとも１個以上、具備され、内蔵フォントに加えて、オプションフォントカード、言語系の異なるプリンタ制御言語を解釈するプログラムを格納した外部メモリを複数接続できるように構成されていてもよい。さらに、図示しない不揮発性であるＮＶＲＡＭを有し、操作パネル３１５からのプリンタモード設定情報を記憶するようにしてもよい。
【００５２】
図４は、実施例１におけるＰＣ１０３の機能の概略を示すブロック図である。
【００５３】
ネットワーク通信部４０１は、一般の通信に必要な機能である、ＩＰアドレスの取得や、各種ネットワーク設定等を具備し、ＬＡＮ１０１との間で通信する。またネットワーク通信部４０１には、ＩＰｖ６通信部４０２と、ＩＰｖ４通信部４０３とが含まれ、同時動作を含み、任意のＩＰバージョンで通信可能である。
【００５４】
ＰＣドライバ４０４は、印刷アプリ群４０５から、ネットワークプリンタを使用するためのドライバであり、ポートインスタンス情報４０６を通信し、図示しないデバイスドライバ等との間で通信する。また、ＰＣドライバ４０４は、ネットワーク通信部４０１のネットワーク情報として、ＩＰアドレスやサブネットマスクの値、デフォルトゲートウェイアドレス、ＭＡＣ（Ｍｅｄｉａ  Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌ）アドレス情報を取得することができる。さらに、ＰＣドライバ４０４は、ネットワーク通信部４０１を経由し、ＬＡＮ１０１と、ＵＳＢ通信部４０７とを経由し、ＵＳＢケーブル接続されたデバイスとの間で通信が可能である。
【００５５】
印刷アプリ群４０５は、ＰＣ内で印刷するために必要な各種機能の総称である。Ｗｉｎｄｏｗｓ（登録商標）であれば、各種アプリケーション、プリンタドライバ、Ｇｒａｐｈｉｃｓ  ｄｅｖｉｃｅ  ｉｎｔｅｒｆａｃｅ（ＧＤＩ）、ｓｐｏｏｌｅｒ等を含んでいる。また、印刷アプリ群は、後述するポートインスタンス情報４０６から、印刷処理の対象であるプリンタのポート名称を取得し、ポート名称と共に、印刷ジョブを、ＰＣドライバ４０４へ送信する。ＰＣドライバ４０４は、ポートインスタンス情報４０６から対象プリンタのＩＰアドレスを取得し、ネットワーク通信部４０１を経由し、ネットワークプリンタ１０４との間で通信する。
【００５６】
図５は、実施例１で使用するポートインスタンス情報４０６の一例として、ネットワークプリンタ１０４が、ＩＰｖ４で動作する際の構成例を示す概念図である。
【００５７】
ＰＣ１０３から、ネットワークプリンタ１０４に、通信を開始するための情報として、ポート名称、ＭＡＣアドレス、ＩＰｖ４アドレスが関連付けられている。
【００５８】
ポートインスタンス情報４０６は、ＰＣ１０３にインストールされているＯＳが標準で備えるデータベース上に保存されている。Ｗｉｎｄｏｗｓ（登録商標）  ＶｉｓｔａやＷｉｎｄｏｗｓ（登録商標）  ＸＰ等のＯＳでは、この標準データベースを、一般的にレジストリと称している。ポートインスタンス情報４０６の格納場所は、不揮発性である個所が望ましいが、ＰＣドライバ４０４へ適切な情報を提供できる構成であれば、特に限定する必要はない。
【００５９】
また、ネットワークプリンタ１０４を、ＰＣ１０３から利用することに先立ち、ネットワークセットアップが行われ、その中でポートインスタンス情報４０６が生成される。ネットワークセットアップにおいて、ＰＣ１０３とネットワークプリンタ１０４とを、ＵＳＢケーブルで接続し、ＰＣ１０３は、ネットワークプリンタ１０４に対して、ネットワーク情報取得コマンドを発行する。このネットワーク情報取得コマンドは、該当プリンタのＮＩＣの基本的なネットワーク情報を問い合わせるコマンドであり、その応答によって、該当プリンタＮＩＣのネットワーク情報を取得可能である。なお、上記ＮＩＣは、Ｎｅｔｗｏｒｋ  Ｉｎｔｅｒｆａｃｅ  Ｃｏｎｔｒｏｌｌｅｒである。
【００６０】
ネットワーク情報には、ＮＩＣが具備するネットワークＩ／Ｆのタイプ、そして各ネットワーク通信部に付加されているＭＡＣアドレスや、現在稼動中のＩＰバージョンに準じたＩＰアドレスが含まれている。ＭＡＣアドレスは、機器メーカが重複することのない独自の番号で管理し、この結果、世界で唯一のアドレスが割り当てられるので、このＭＡＣアドレス情報を利用することによって、固有のプリンタを特定することができる。
【００６１】
その後に、取得したＩＰアドレスに対して、ネットワーク経由で、ネットワーク情報取得コマンドを発行し、応答されたＭＡＣアドレスが、上記ＵＳＢ通信経由で取得したＭＡＣアドレスと合致していることを確認する。合致していれば、ＰＣ１０３とネットワークプリンタ１０４とのネットワーク通信が可能であるので、ポートインスタンス情報４０６に、ポート名称、ＭＡＣアドレス、ＩＰアドレスを記憶する。ＰＣ１０３には、複数のプリンタが接続可能であるので、ポートごとに、機器を識別するための名称として、ポート名称を設けている。
【００６２】
上記の通り、実施例１では、ポートインスタンス情報４０６として、ポート名称に通信対象プリンタのＭＡＣアドレスとＩＰアドレスとが関連付けられ、記憶されている必要がある。ただし、上記実施例は、ネットワークセットアップ方法に関するものではないので、上記内容に限定されるものではない。
【００６３】
たとえば、ネットワークプリンタ１０４が、無線ＬＡＮで動作している場合、ＵＳＢケーブル経由で、プリンタのネットワーク設定を変更することが可能である。また、ネットワークプリンタ１０４のネットワーク設定が完了していることを想定し、ＵＳＢケーブルを使用せずに、ネットワーク経由で、通信可能なネットワークプリンタを列挙し、そのなかから、ユーザが任意のプリンタを選択する形式であってもよい。
【００６４】
ＰＣドライバ４０４は、ポートインスタンス情報４０６が保持しているＩＰアドレスが有効性を判定する手段を有する。また、ＰＣドライバ４０４は、ポートインスタンス情報４０６で示されたプリンタのＩＰアドレス宛てに、上記プリンタのネットワーク情報取得コマンドを発行することができる。通信を行う際に、必要に応じて、ネットワーク情報取得コマンドを利用する。これによって、ＰＣドライバ４０４は、該当ポートインスタンス情報４０６のＭＡＣアドレスと、実際に接続されているネットワーク通信部４０１のＭＡＣアドレス及びＩＰアドレスの対応付けが可能である。この結果、ポートインスタンス情報４０６のＩＰアドレスの有効性を識別することができる。なお、ＩＰアドレスの有効性を識別する動作については、後述する。
【００６５】
図６は、実施例１に関するネットワークプリンタの機能構成の概略を示すブロック図である。
【００６６】
ネットワークプリンタ１０４は、ＬＡＮ１０１と通信するネットワーク通信部６０１を有する。ネットワーク通信部６０１には、ＩＰｖ６通信部６０２と、ＩＰｖ４通信部６０３とが含まれ、ＩＰｖ６通信部６０２とＩＰｖ４通信部６０３とは、同時に動作することができず、稼動ＩＰバージョン切替部からの制御に従い、どちらか一方のみが稼動する。
【００６７】
稼動ＩＰバージョン切替部６０４は、本体操作パネル３１５が具備する稼動ＩＰバージョン設定部６０５を介して、ユーザ操作が可能であり、任意のタイミングで、ＩＰバージョンを変更操作することができる。また、ネットワーク通信部６０１は、データ解析部６０６を介して、ＮＩＣ部６０８と印刷データ解析処理部６０９との間で、データ通信が可能である。上記通信データには、ＮＩＣ制御用データや印刷データ、印刷制御データ、印刷ステータス取得データ等が含まれている。
【００６８】
データ解析部６０６は、ネットワーク通信部６０１、ＵＳＢ通信部６０７、ＮＩＣ部６０８、印刷データ解析処理部６０９との間におけるデータ通信を制御する。
【００６９】
ＵＳＢ通信部６０７は、ＵＳＢ通信を制御し、ネットワークプリンタ１０４は、ＵＳＢケーブル経由で他のデバイスとの通信が可能である。ＮＩＣ部６０８は、ネットワーク通信部６０１に関するネットワーク情報を管理している。ネットワーク情報として、搭載しているＩ／Ｆ種類、ＭＡＣアドレス、稼動しているＩＰバージョン、ＩＰアドレスが含まれている。なお、ネットワーク通信部６０１が、無線Ｉ／Ｆを搭載していれば、各種無線情報として、ＳＳＩＤやＷＥＰキー等のセキュリティ関連情報を含めることができる。
【００７０】
印刷データ解析処理部６０９は、予め定義されている仕様に基づいて、受信したデータを、各種印刷関連データに変換する。この変換後のデータを、プリントエンジン部６１０との間で送受することによって、印刷処理が実行される。
【００７１】
図７は、実施例１において、本体操作パネル３１５が具備する稼動ＩＰバージョン設定部６０５の操作概略として、ＩＰｖ４が選択された状態を示すイメージ図である。
【００７２】
図８は、実施例１において、本体操作パネル３１５が具備する稼動ＩＰバージョン設定部６０５の操作概略として、ＩＰｖ６が選択された状態を示すイメージ図である。
【００７３】
なお、図８において、図７と同一のアイテムには、同一の符号を付けてある。
【００７４】
実施例１では、本体操作パネル３１５が、タッチパネル式の液晶ディスプレイ（ＬＣＤ）を備え、ＬＣＤ上の操作画面を指で触れることによって、設定操作が行われる。
【００７５】
まず、ＬＣＤに対して所定の操作を行うと、稼動ＩＰバージョン設定用の操作画面７０１が表示される。操作画面７０１には、説明文７０２、二者択一で選択可能な選択肢７０３、７０４が表示される。表示された時点の選択状態は、ネットワーク通信部６０１の状態を反映し、ここでは選択肢７０３が選択された状態（図７に示す状態）であるとする。この状態で、選択肢７０４を指で触れると、選択肢７０４が選択された状態（図８に示す状態）になり、選択肢７０３を選択すれば、７０３が選択された状態（図７に示す状態）になる。
【００７６】
操作画面７０１において、ＯＫボタン７０５が押されると、操作画面７０１の選択状態に応じた信号が、稼動ＩＰバージョン切替部６０４へ通知され、必要に応じて、稼動ＩＰバージョンを変更する制御が、ネットワーク通信部６０１に対して行われる。ネットワーク通信部６０１は、操作画面７０１において、ＯＫボタン７０５が押された時点で、選択肢７０３が選択されている場合、ＩＰｖ４のみで動作するように設定され、選択肢７０４が選択されている場合、ＩＰｖ６のみで動作するように設定される。
【００７７】
操作画面７０１において、ＮＧボタン７０６が押されると、稼動ＩＰバージョン切替部６０４には、何も通知されず、ネットワーク通信部６０１においても稼動ＩＰバージョンが変更されない。
【００７８】
なお、稼動ＩＰバージョン設定部６０５の構成に関して、上記内容に限定する必要はない。他の構成例として、ネットワークプリンタ１０４内部に、ＩＰバージョンを設定可能なＷＥＢサーバを具備し、このＷＥＢサーバにアクセスすることによって、ＩＰアドレスバージョンを変更するようにしてもよい。勿論、設定専用のユーティリティを用いた構成であってもよい。
【００７９】
次に、実施例１において、ネットワーク経由の印刷処理を例にとって、ＰＣドライバ４０４の挙動について説明する。
【００８０】
図９は、実施例１において、ＰＣドライバ４０４が具備するネットワーク通信時のＩＰアドレス特定処理の流れを示すフローチャートである。
【００８１】
なお、ＵＳＢ通信部４０７は、ＵＳＢ経由で通信する通信手段の例である。ネットワーク通信部４０１は、ネットワーク経由で通信する通信手段の例である。
【００８２】
ＲＡＭ２０２は、通信対象デバイスのＭＡＣアドレスとＩＰアドレスとを関連付けて保持する通信デバイス情報保持手段の例である。
【００８３】
ＣＰＵ２０１は、上記通信デバイス情報保持手段が保持している上記通信対象デバイスのＩＰアドレスが有効でない場合、上記通信対象デバイスのＩＰバージョンが変更されたと判断する判断手段の例である。
【００８４】
ＰＣドライバ４０４は、通信対象デバイスのＩＰバージョンが、ＩＰｖ４に変更されたと、上記判断手段が判断すると、変更後のＩＰｖ４アドレスを特定するＩＰｖ４アドレス特定手段の例である。
【００８５】
ＰＣドライバ４０４は、上記通信対象デバイスのＩＰバージョンが、ＩＰｖ６に変更されたと、上記判断手段が判断すると、変更後のＩＰｖ６アドレスを、上記ＩＰｖ４アドレス特定手段とは異なる方法で特定するＩＰｖ６アドレス特定手段の例である。
【００８６】
ネットワーク通信部４０１は、通信試み手段の例である。この通信試み手段は、上記通信対象デバイスのＩＰバージョンが、変更されたと、上記判断手段が判断すると、上記ＩＰｖ４特定手段又は上記ＩＰｖ６特定手段によって特定された変更後のＩＰアドレスを用い、上記通信対象デバイスとの通信を試みる。なお、ＩＰバージョンが変更される前であっても、ネットワーク通信部４０１を介して、ネットワーク経由の通信が行われる。
【００８７】
また、上記ＩＰｖ６アドレス特定方法は、通信対象デバイスのＭＡＣアドレスに基づいて、ＩＰアドレスを予測作成する方法である。そして、上記ＩＰｖ４アドレス特定方法は、ｂｒｏａｄｃａｓｔやｕｎｉｃａｓｔによって発行した所定コマンドの応答を用いて、ＩＰアドレスを特定する方法である。
【００８８】
＜プリンタのＩＰバージョンがＩＰｖ４状態での印刷＞
まず、プリンタの稼動ＩＰバージョンが、ＩＰｖ４で固定されている場合におけるネットワーク印刷について説明する。
【００８９】
稼動ＩＰバージョン設定部６０５は、図７に示す状態、すなわち、ネットワークプリンタ１０４がＩＰｖ４でのみ、ＰＣと通信可能な状態になっている。この時点では、ネットワークプリンタ１０４のネットワーク情報は、ＭＡＣアドレス＝００００８５１２３４５６、ＩＰｖ４アドレス＝１９２．１６８．１．２である。
【００９０】
Ｓ１で、ＰＣドライバ４０４は、印刷アプリ群４０５からの通信要求を受ける。具体的には、印刷ジョブと対象プリンタのポート名称とを受ける。
【００９１】
Ｓ２で、ＰＣドライバ４０４は、ポートインスタンス情報４０６から、ポート名称を検索し、関連付けられているＩＰアドレスとＭＡＣアドレスとを取得する。このときに、ポートインスタンス情報４０６は、図５に示す構成であり、ＭＡＣアドレス＝００００８５１２３４５６、ＩＰｖ４アドレス＝１９２．１６８．１．２を取得できる。
【００９２】
Ｓ３で、ＩＰアドレスの有効性を判定する。ネットワーク通信部４０１経由で、Ｓ２で取得したプリンタのＩＰアドレス「１９２．１６８．１．２」宛てに、ネットワーク情報取得コマンドを発行する。ネットワーク情報取得コマンドを受信したネットワークプリンタ１０４は、ネットワーク情報として、プリンタ自身が具備するＭＡＣアドレスとＩＰアドレスとを返却する。
【００９３】
ネットワーク情報が返却されたら、ＰＣドライバ４０４は、ネットワーク情報と、Ｓ２で取得したポートインスタンス情報４０６に保持されているＭＡＣアドレスとを比較し、両者が互いに合致していれば、ＩＰアドレスが有効であると判定する。実施例１では、ネットワークプリンタ１０４のネットワーク情報として、ＭＡＣアドレス＝００００８５１２３４５６、ＩＰｖ４アドレス＝１９２．１６８．１．２が返却されるので、ＩＰアドレスが有効であると判定される。このように、ポートインスタンス情報４０６にＭＡＣアドレスとＩＰアドレスとを関連付けて保持しておくことで、ＰＣ１０３は、通信対象であるネットワークプリンタ１０４を確実に特定することができる。
【００９４】
Ｓ４で、ＩＰアドレスが有効であると判定されれば、デバイスとの通信が可能な状態であることが確認され、Ｓ１２で、デバイスと通信可能な状態になる。以後、ＰＣ１０３は、ネットワークプリンタ１０４との間で、通信コネクションを確立し、ネットワーク経由の印刷を実行することができる。通信コネクションを確立するために、セッション開始コマンドを、Ｕｓｅｒ  Ｄａｔａｇｒａｍ  Ｐｒｏｔｏｃｏｌ（ＵＤＰ）通信で発行する。また、印刷関連データの送受信を、Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌ（ＴＣＰ）通信で発行する。印刷が完了すれば、セッション終了コマンドを、ＵＤＰ通信で発行し、通信コネクションを終了する。実際の印刷処理の詳細な説明は、上記実施例の主旨から外れるので、割愛する。
【００９５】
＜プリンタのＩＰバージョンが、ＩＰｖ４からＩＰｖ６に変更された場合＞
上記＜プリンタのＩＰバージョンがＩＰｖ４状態での印刷＞の後に、ユーザ操作によって、プリンタの稼動ＩＰバージョンが、ＩＰｖ６へ排他的に切り替えられた場合の挙動について、その相違点を中心に説明する。
【００９６】
この場合における構成は、図１〜図６に示す構成と同一である。また、稼動ＩＰバージョン設定部６０５は、図７に示す状態、すなわち、ネットワークプリンタ１０４が、ＩＰｖ４でのみ通信可能な状態である。
【００９７】
この状態で、ユーザが、稼動ＩＰバージョン設定部６０５の操作を介して、稼動ＩＰバージョンを、ＩＰｖ６（図８に示す状態）に設定すると、その旨が、稼動ＩＰバージョン切替部６０４を介して、ネットワーク通信部６０１へ通知される。ネットワークプリンタ１０４がＩＰｖ６でのみ通信可能な状態となるべく、ネットワーク通信部６０１は、ＩＰｖ４通信部６０３の動作を停止し、この代わりに、ＩＰｖ６通信部６０２の動作を開始する。ＩＰｖ６通信部６０２が、ＩＰｖ６アドレスを取得すると、ネットワーク通信部６０１は、データ解析部６０６を介して、ＮＩＣ部６０８へＩＰｖ６アドレスを通知する。この時点で、ネットワークプリンタ１０４のネットワーク情報は、ＭＡＣアドレス＝００００８５１２３４５６、ＩＰｖ６アドレス＝ＦＥ８０：：・・・：３４５６（ＩＰｖ６リンクローカルアドレス）へ変化する。ＩＰｖ４アドレスが無くなったので、ネットワークプリンタ１０４は、ＩＰｖ４では通信不可能になるが、ＰＣ１０３は、そのことを知る術がない。すなわち、ポートインスタンス情報４０６は、図５に示す状態のままの値である。
【００９８】
次に、この状態から、ＰＣ１０３からネットワークプリンタ１０４を再び利用し、ネットワーク印刷を実行しようとする場合のＰＣドライバ４０４の挙動を、図９を用いて説明する。
【００９９】
Ｓ１で、印刷要求を受けると、Ｓ２で、ＰＣドライバ４０４は、ポートインスタンス情報４０６から、ネットワークプリンタ１０４のネットワーク情報として、ＭＡＣアドレス＝００００８５１２３４５６、ＩＰｖ４アドレス＝１９２．１６８．１．２を取得する。
【０１００】
Ｓ３で、ＩＰアドレスの有効性を判定するために、Ｓ２で取得したプリンタのＩＰアドレス「１９２．１６８．１．２」宛てに、ネットワーク情報取得コマンドを発行する。
【０１０１】
しかし、ネットワークプリンタ１０４は、ＩＰｖ４では既に通信できないので、ＰＣドライバ４０４は、ネットワークプリンタ１０４からネットワーク情報を取得できない。このために、ＭＡＣアドレスが合致しないので、ＰＣドライバ４０４は、ポートインスタンス情報４０６に記載されているＩＰアドレスが有効であると判定することができない。なお、Ｓ３で、ＩＰｖ４用アドレス特定処理を実行することによって、ＩＰｖ４アドレスを検出する確率を高めることができ、これについて、以下に説明する。
【０１０２】
「ＩＰｖ４用アドレス特定処理」
続いて、ＰＣドライバ４０４は、上記特許文献３に記載されているＩＰｖ４の範囲内でのアドレス変更を想定したＩＰｖ４用のアドレス特定処理を行う。ここでは、ポートインスタンス情報４０６に保持されているＩＰアドレスに基づいて、同一サブネット内へのｂｒｏａｄｃａｓｔ通信と、近隣アドレスへのｕｎｉｃａｓｔ通信とによって、ネットワーク情報取得コマンドを発行する。ネットワークプリンタ１０４が、ＬＡＮ１０１経由で接続されていれば、ネットワーク情報を返却する。Ｕｎｉｃａｓｔ通信を併用していることで、ｆｉｒｅｗａｌｌによってｂｒｏａｄｃａｓｔ通信が遮断される環境であっても、ＰＣドライバ４０４は、ネットワーク情報を取得することができる。これらの処理によって、ＭＡＣアドレスの合致する応答を受信した場合、そのＩＰアドレスをポートインスタンス情報４０６に上書きし、ＩＰアドレスが有効であると判定することができる。
【０１０３】
しかし、上記ＩＰｖ４用アドレス特定処理を行っても、ＩＰｖ４アドレス宛てにネットワーク情報取得コマンドを送信している限り、実施例１では、ネットワークプリンタ１０４からネットワーク情報が返却されることが無い。処理を終えても、ＭＡＣアドレスが合致しないので、ＩＰアドレスが無効であると判定される。
【０１０４】
Ｓ４で、ＩＰアドレスが無効であると既に判定されているので、ＰＣドライバ４０４は、ネットワークプリンタ１０４のＩＰバージョンが変更されたと判断し、Ｓ５以降の処理を行う。
【０１０５】
Ｓ５では、Ｓ４で無効と判定されたＩＰアドレスのＩＰバージョンを識別する。実施例１では、ＩＰｖ４アドレスが無効と判定されているので、Ｓ６で、ＩＰｖ６アドレスでの通信を試みる。なお、従来例では、Ｓ４でＩＰアドレスが無効であると判定された場合、ＰＣドライバ４０４の処理が終了するので、ネットワークプリンタ１０４との通信ができない。
【０１０６】
Ｓ６で、ポートインスタンス情報４０６にＩＰｖ６アドレスが記載されているか否かを確認する。ＩＰｖ６アドレスが存在していれば、該当アドレス宛てに通信を試みることができるが、実施例１では、図５に示すように、ＩＰｖ６アドレスが存在しないので、ＰＣドライバ４０４がＩＰｖ６アドレスを生成する必要がある。Ｓ８で、ＩＰｖ６用アドレス特定処理を行う。
【０１０７】
「ＩＰｖ６用アドレス特定処理」
Ｓ２でポートインスタンス情報４０６を取得した時点で、ＰＣドライバ４０４は、ネットワークプリンタ１０４のＭＡＣアドレスを認識している。認識済みのＭＡＣアドレスから、ネットワークプリンタ１０４のＩＰｖ６リンクローカルアドレスを予想作成することによって、ネットワークプリンタ１０４との間におけるＩＰｖ６での通信を図る。仮に、ネットワークプリンタ１０４に、ＩＰｖ６グローバルアドレスが割り当てられていたとしても、ＩＰｖ６リンクローカルアドレスでの通信が可能であるので、理論上は、ＩＰｖ６アドレスの通信が成功する。
【０１０８】
図１０は、実施例１において、ポートインスタンス情報４０６を、プリンタの稼動ＩＰバージョンへ変更する対応が完了したときにおける構成例を示す概念図である。
【０１０９】
上記ＩＰｖ６用アドレス特定処理が完了すると、ポートインスタンス情報４０６に、ＩＰｖ６アドレスを追記する。この結果、ポートインスタンス情報４０６は、図１０に示す構成になる。
【０１１０】
Ｓ１０で、ＩＰアドレスの有効性を判定する。上記ＩＰアドレス特定処理において特定されたＩＰアドレスに対して、ネットワーク情報取得コマンドを発行し、Ｓ３と同様に、ＭＡＣアドレスとの合致判定を行う。
【０１１１】
Ｓ１１で、ＩＰアドレスが有効であると判定されれば、Ｓ１２で、デバイスとの通信が可能な状態であることが確認される。ＩＰアドレスが無効であると判定されれば、Ｓ１３で、デバイスとの通信が不可能な状態であることが判明する。
【０１１２】
つまり、Ｓ１２に到達すると、デバイスと通信可能な状態である。以後、印刷関連の各通信が可能である。Ｓ１３に到達すると、デバイスと通信不能な状態である。デバイスと通信不能な状態である原因として、ネットワークプリンタ１０４の電源が入っていない状態、ネットワークプリンタ１０４がＬＡＮ１０１に接続されていない状態が想定される。
【０１１３】
なお、Ｓ１２への到達以降に、ネットワークプリンタ１０４の稼動ＩＰバージョンが変更されても、ポートインスタンス情報４０６に記載されている各ＩＰアドレスを用いることによって、引き続き通信が可能である。上記のように、ポートインスタンス情報４０６にＭＡＣアドレスとＩＰアドレスとを関連付けて保持しておく。これによって、「ＩＰｖ４用アドレス特定処理」「ＩＰｖ６用アドレス特定処理」のいずれの処理においても、ネットワークプリンタ１０４のＩＰアドレスを特定することが可能となる。
【実施例２】
【０１１４】
次に、実施例２について説明する。
【０１１５】
＜プリンタのＩＰバージョンが、ＩＰｖ６からＩＰｖ４に変更された場合＞
実施例２において、ＩＰｖ６で稼動していたネットワークプリンタ１０４の稼動ＩＰバージョンが、ＩＰｖ４へ排他的に切り替えられた場合の挙動について、その相違点を中心にして説明する。
【０１１６】
実施例２の構成は、図１〜図４と図６とに示す構成と同一であり、ＬＡＮ１０１に、ルータ１０２、ＰＣ１０３、ネットワークプリンタ１０４が接続されている。ただし、実施例１とは異なり、ＰＣ１０３とネットワークプリンタ１０４とは、ＩＰｖ６によって通信可能な状態で、ネットワークセットアップされている。すなわち、稼動ＩＰバージョン設定部６０５は、図８に示す状態、つまり、ネットワークプリンタ１０４は、ＩＰｖ６でのみ通信可能な状態である。
【０１１７】
図１１は、実施例２において、ポートインスタンス情報４０６において、プリンタがＩＰｖ６動作時における構成例を示す概念図である。
【０１１８】
同時に、ポートインスタンス情報４０６は、図１１で示すように、ＭＡＣアドレス＝００００８５１２３４５６、ＩＰｖ６アドレス＝ＦＥ８０：：・・・：３４５６の構成である。
【０１１９】
この状態で、ユーザが、稼動ＩＰバージョン設定部６０５を操作し、稼動ＩＰバージョンをＩＰｖ４（図７に示す状態）に設定すると、この旨が、稼動ＩＰバージョン切替部６０４を介して、ネットワーク通信部６０１へ通知される。ネットワークプリンタ１０４が、ＩＰｖ４でのみ通信可能な状態となるべく、ネットワーク通信部６０１は、ＩＰｖ６通信部６０２の動作を停止し、この代わりに、ＩＰｖ４通信部６０３の動作を開始する。ＩＰｖ４通信部６０３が、ＩＰｖ４アドレスを取得すると、ネットワーク通信部６０１は、データ解析部６０６を介して、ＮＩＣ部６０８へＩＰｖ４アドレスを通知する。この時点で、ネットワークプリンタ１０４のネットワーク情報は、ＭＡＣアドレス＝００００８５１２３４５６、ＩＰｖ４アドレス＝１９２．１６８．１．２へと変化する。ＩＰｖ６アドレスが無くなったので、ネットワークプリンタ１０４は、ＩＰｖ６では通信不可能となるが、ＰＣ１０３は、これを知る術がない。すなわち、ポートインスタンス情報４０６は、図１１に示されたままの値である。
【０１２０】
次に、この状態で、ＰＣ１０３からネットワークプリンタ１０４を利用し、ネットワーク印刷を再び実行しようとする場合におけるＰＣドライバ４０４の挙動を、図９を用いて説明する。
【０１２１】
Ｓ１で、印刷要求を受けると、Ｓ２で、ＰＣドライバ４０４は、ポートインスタンス情報４０６から、ネットワークプリンタ１０４のネットワーク情報として、ＭＡＣアドレスと、ＩＰｖ６アドレスとを取得する。この場合、ＭＡＣアドレス＝００００８５１２３４５６、ＩＰｖ６アドレス＝ＦＥ８０：：・・・：３４５６である。
【０１２２】
Ｓ３で、ＩＰアドレスの有効性を判定するために、Ｓ２で取得したプリンタのＩＰアドレス「ＦＥ８０：：・・・：３４５６」宛てに、ネットワーク情報取得コマンドを発行する。しかし、ネットワークプリンタ１０４は、既にＩＰｖ６では通信ができないので、ＰＣドライバ４０４は、ネットワークプリンタ１０４からネットワーク情報を取得できない。このために、ＭＡＣアドレスも合致せずに、ＰＣドライバ４０４は、ポートインスタンス情報４０６に記載されているＩＰアドレスが無効であると判定される。
【０１２３】
Ｓ４で、ＩＰアドレスが無効であると既に判定されているので、ＰＣドライバ４０４は、ネットワークプリンタ１０４のＩＰバージョンが変更されたと判断し、Ｓ５以降の処理を実行する。
【０１２４】
Ｓ５では、Ｓ４で無効と判定されたＩＰアドレスのＩＰバージョンを識別する。実施例２では、ＩＰｖ６アドレスが無効と判定されているので、以降の処理で、ＩＰｖ４アドレスでの通信を試みる。そして、Ｓ７で、ポートインスタンス情報４０６にＩＰｖ４アドレスが記載されているか否かを確認する。ＩＰｖ４アドレスが存在していれば、該当アドレス宛てに通信を試みることができるが、実施例２では、図１１に示すように、ＩＰｖ４アドレスが存在しないのでＰＣドライバ４０４がＩＰｖ４アドレスを生成する必要がある。
【０１２５】
そして、Ｓ９で、ＩＰｖ４用アドレス特定処理を実行する。ネットワーク通信部４０１が保持するＩＰｖ４デフォルトゲートウェイアドレスの値を基準に、上記ＩＰｖ４用アドレス特定処理を実行する。ＰＣ１０３とネットワークプリンタ１０４とが、同一のサブネット内に存在していれば、ＰＣドライバ４０４は、ネットワークプリンタ１０４からネットワーク情報を取得することが可能である。ＭＡＣアドレスの合致によって、ＩＰアドレスを特定することができる。
【０１２６】
ＩＰｖ４用アドレス特定処理が完了すると、ポートインスタンス情報４０６に、ＩＰｖ４アドレスを追記する。この結果、ポートインスタンス情報４０６は、図１０に示す構成になる。
【０１２７】
Ｓ１０で、ＩＰアドレスの有効性を判定する。上記ＩＰアドレス特定処理において特定されたＩＰアドレスについて、ネットワーク情報取得コマンドを発行し、Ｓ３と同様に、ＭＡＣアドレスとの合致判定を行う。
【０１２８】
Ｓ１１で、ＩＰアドレスが有効であると判定されれば、デバイスとの通信が可能な状態であることが確認される。そして、Ｓ１２で、デバイスと通信可能な状態になる。以後、印刷関連の各通信が可能である。
【実施例３】
【０１２９】
＜ポートインスタンス情報処理が異なる場合＞
実施例３は、ポートインスタンス情報４０６の構成が異なる実施例であり、上記＜プリンタのＩＰバージョンがＩＰｖ４からＩＰｖ６に変更された場合＞に準じた実施例である。
【０１３０】
次に、相違点を中心に説明する。
【０１３１】
実施例３の構成は、図１〜図４と図６とに示す構成と同一である。稼動ＩＰバージョン設定部６０５は、図７に示す状態、すなわちネットワークプリンタ１０４が、ＩＰｖ４でのみ通信可能な状態で、ネットワークセットアップが完了している。
【０１３２】
図１２は、実施例３において、ポートインスタンス情報４０６に稼動ＩＰバージョンが含まれている場合、プリンタがＩＰｖ４動作時の構成例を示す概念図である。
【０１３３】
ポートインスタンス情報４０６の構成は、図１２に示すように、図５に示す構成において、稼動ＩＰバージョン＝ＩＰｖ４が追加されている。
【０１３４】
「稼動ＩＰバージョン」は、最近のネットワーク通信において利用されたＩＰバージョンを保持するものであり、実施例３で、ＩＰｖ４でのネットワークセットアップが完了したことを意味している。また、ＰＣドライバ４０４が、ポートインスタンス情報４０６に記載されている「稼動ＩＰバージョン」での通信を優先的に試みることが、実施例３の特徴である。
【０１３５】
この状態で、ユーザが、ネットワークプリンタ１０４の電源をＯＦＦにし、翌日、ネットワークプリンタ１０４の電源をＯＮにし忘れたまま、ＰＣ１０３からネットワーク印刷を実行する場合の挙動を、図９を用いて説明する。
【０１３６】
まず、Ｓ１で、印刷要求を受けると、Ｓ２で、ＰＣドライバ４０４は、ポートインスタンス情報４０６から、ネットワークプリンタ１０４のネットワーク情報として、ＭＡＣアドレスと、ＩＰｖ４アドレスとを取得する。この場合、ＭＡＣアドレス＝００００８５１２３４５６、ＩＰｖ４アドレス＝１９２．１６８．１．２である。
【０１３７】
Ｓ３で、ＩＰアドレスの有効性を判定するために、Ｓ２で取得したプリンタのＩＰアドレス「１９２．１６８．１．２」宛てに、ネットワーク情報取得コマンドを発行する。しかし、ネットワークプリンタ１０４は、電源がＯＦＦであり通信ができないので、ＰＣドライバ４０４は、ネットワークプリンタ１０４からネットワーク情報を取得できない。このために、ＭＡＣアドレスが合致せず、ＰＣドライバ４０４は、ポートインスタンス情報４０６に記載されているＩＰアドレスは無効であると判定される。
【０１３８】
Ｓ４で、ＩＰアドレスが無効であると既に判定されているので、ＰＣドライバ４０４は、ネットワークプリンタ１０４のＩＰバージョンが変更されたと判断し、Ｓ５以降の処理を実行する。
【０１３９】
Ｓ５では、Ｓ４で無効であると判定されたＩＰアドレスのＩＰバージョンを識別する。実施例３では、ＩＰｖ４アドレスが無効であると判定されているので、以降の処理で、ＩＰｖ６アドレスでの通信を試みる。そして、Ｓ６で、ポートインスタンス情報４０６に、ＩＰｖ６アドレスが記載されているか否かを確認する。ＩＰｖ６アドレスが存在していれば、該当アドレス宛てに通信を試みることが可能であるが、実施例３では、図１２に示すように、ＩＰｖ６アドレスが存在しないので、ＰＣドライバ４０４がＩＰｖ６アドレスを生成する必要がある。
【０１４０】
そして、Ｓ８で、上記ＩＰｖ６用アドレス特定処理を行う。ＩＰｖ６用アドレス特定処理が完了すると、ポートインスタンス情報４０６に、ＩＰｖ６アドレスを追記する。
【０１４１】
図１３は、実施例３において、ポートインスタンス情報４０６に、稼動ＩＰバージョンが含まれている場合、プリンタの稼動ＩＰバージョン変更への対応完了時における構成例を示す概念図である。
【０１４２】
この結果、ポートインスタンス情報４０６は、図１３に示す構成になる。
【０１４３】
Ｓ１０で、ＩＰアドレスの有効性を判定する。上記ＩＰアドレス特定処理において特定されたＩＰアドレスについて、ネットワーク情報取得コマンドを発行し、Ｓ３と同様に、ＭＡＣアドレスとの合致判定を行う。
【０１４４】
Ｓ１１で、ＩＰアドレスが有効であると判定されれば、デバイスとの通信が可能な状態であることが確認されるが、プリンタ電源がＯＦＦであるので、ＩＰｖ６アドレスを用いても、ネットワークプリンタ１０４との通信ができない。
【０１４５】
Ｓ１３で、結局、ネットワークプリンタ１０４との通信ができないが、プリンタの電源がＯＮになれば、明示的にＩＰｖ６での通信から開始できるので、アドレス特定処理に費やす時間を省略することができる。
【０１４６】
なお、上記＜プリンタのＩＰバージョンが、ＩＰｖ４からＩＰｖ６に変更された場合＞と同様に、ネットワークプリンタ１０４がＩＰｖ６で稼動していれば、Ｓ１１で、ＩＰアドレスが有効であると判定される。そして、稼動ＩＰバージョン＝ＩＰｖ６と情報とを更新することができる。
【０１４７】
また、上記＜プリンタのＩＰバージョンが、ＩＰｖ６からＩＰｖ４に変更された場合＞に、実施例３を適用することもできる。この場合、Ｓ１１で、ＩＰｖ４アドレスを解決できないが、ＰＣ１０３のＩＰｖ４デフォルトゲートウェイアドレス、又は、それと同一サブネット内のＩＰｖ４アドレスを、仮アドレスとして記載することによって、実施例３の適用が可能である。
【０１４８】
実施例３は、ネットワークプリンタへのネットワーク経由印刷通信である。近年の多機能プリンタにおいて、ネットワークスキャン機能を具備しているデバイスも存在するが、上記実施例は、その本質を損なうことなく、ネットワーク経由スキャン通信にも適用可能である。また、印刷又はスキャンのような画像データの送受を行わない通信を行う際にも、上記実施例を適用可能である。
【０１４９】
また、実施例３は、有線ＬＡＮ環境を前提にした実施例であるが、無線ＬＡＮであっても、有線ＬＡＮと無線ＬＡＮとが混在するネットワークであっても、同様である。具体的には、ネットワークプリンタ１０４が具備するネットワーク通信部６０１が、無線Ｉ／Ｆを搭載している場合、そのネットワーク情報として、無線であるＳＳＩＤ、ＷＥＰキー等のセキュリティ関連情報を含めることができる。実施例３は、無線Ｉ／Ｆを搭載している場合でも、その本質を変更することなく適用可能である。
【０１５０】
上記実施例によれば、ＩＰｖ４とＩＰｖ６アドレスとの通信を可能とする通信仲介装置が無い環境で、通信対象デバイスの稼動ＩＰバージョンが切り替えられると、ＰＣドライバは、通信対象デバイスのＩＰバージョンが変更されたことを認識することができる。通信対象デバイスのＩＰバージョンが変更された場合、通信に利用するＩＰバージョンを切り替えることができるので、ＰＣドライバは、変更後のＩＰバージョンで、稼動している通信対象デバイスとの通信が可能である。
【０１５１】
また、ＩＰｖ４用とＩＰｖ６用とで異なるＩＰアドレス特定処理を具備することによって、通信対象デバイスの稼動ＩＰバージョンが、ＩＰｖ４からＩＰｖ６へ、又は、ＩＰｖ６からＩＰｖ４へ変更されても、引き続き通信が可能である。
【０１５２】
つまり、上記実施例は、複数の通信プロトコルを有するネットワーク経由の通信方法であって、クライアント内に、通信対象デバイスのＭＡＣアドレスと、ＩＰアドレスとを関連付けて保持する保持工程を有する。また、上記実施例は、保持している通信対象デバイスのＩＰアドレスが有効でない場合に、デバイスの通信プロトコルが変更されたと判断する判断工程を有する。さらに、上記実施例は、通信プロトコル毎に異なるＩＰアドレス特定方法によって特定されたＩＰアドレスを用いて通信を試みる通信試み工程を有する。
【０１５３】
この場合、上記ＩＰアドレス特定方法は、第１のアドレス特定方法と第２のアドレス特定方法とである。また、上記第１のアドレス特定方法は、通信対象デバイスのＭＡＣアドレスに基づいて、ＩＰアドレスを予測作成する方法である。上記第２のアドレス特定方法は、ｂｒｏａｄｃａｓｔ又はｕｎｉｃａｓｔによって発行した所定コマンドの応答を用いて、ＩＰアドレスを特定する方法である。
【図面の簡単な説明】
【０１５４】
【図１】本発明の実施例１におけるネットワーク印刷環境１００を示す概念図である。
【図２】実施例１で使用するＰＣ１０３の概略構成を示すブロック図である。
【図３】実施例１で使用するネットワークプリンタ１０４の概略を示すブロック図である。
【図４】実施例１におけるＰＣ１０３の機能の概略を示すブロック図である。
【図５】実施例１で使用するポートインスタンス情報４０６の一例として、ネットワークプリンタ１０４が、ＩＰｖ４で動作する際の構成例を示す概念図である。
【図６】実施例１に関するネットワークプリンタの機能構成の概略を示すブロック図である。
【図７】実施例１において、本体操作パネル３１５が具備する稼動ＩＰバージョン設定部６０５の操作概略として、ＩＰｖ４が選択された状態を示すイメージ図である。
【図８】実施例１において、本体操作パネル３１５が具備する稼動ＩＰバージョン設定部６０５の操作概略として、ＩＰｖ６が選択された状態を示すイメージ図である。
【図９】実施例１において、ＰＣドライバ４０４が具備するネットワーク通信時のＩＰアドレス特定処理の流れを示すフローチャートである。
【図１０】実施例１において、ポートインスタンス情報４０６を、プリンタの稼動ＩＰバージョンへ変更する対応が完了したときにおける構成例を示す概念図である。
【図１１】実施例２において、ポートインスタンス情報４０６において、プリンタがＩＰｖ６動作時における構成例を示す概念図である。
【図１２】実施例３において、ポートインスタンス情報４０６に稼動ＩＰバージョンが含まれている場合、プリンタがＩＰｖ４動作時の構成例を示す概念図である。
【図１３】実施例３において、ポートインスタンス情報４０６に、稼動ＩＰバージョンが含まれている場合、プリンタの稼動ＩＰバージョン変更への対応完了時における構成例を示す概念図である。
【符号の説明】
【０１５５】
１０１…ＬＡＮ、
１０２…ルータ、
１０３…ＰＣ、
１０４…ネットワークプリンタ、
４０１…ネットワーク通信部、
４０４…ＰＣドライバ、
４０５…印刷アプリ群、
４０６…ポートインスタンス情報、
６０１…ネットワーク通信部、
６０４…稼動ＩＰバージョン切替部、
６０５…稼動ＩＰバージョン設定部、
６０８…Ｎｅｔｗｏｒｋ  Ｉｎｔｅｒｆａｃｅ  Ｃｏｎｔｒｏｌｌｅｒ（ＮＩＣ）部。
【図１】
2009272826.tif 000003
【図２】
2009272826.tif 000004
【図３】
2009272826.tif 000005
【図４】
2009272826.tif 000006
【図５】
2009272826.tif 000007
【図６】
2009272826.tif 000008
【図７】
2009272826.tif 000009
【図８】
2009272826.tif 000010
【図９】
2009272826.tif 000011
【図１０】
2009272826.tif 000012
【図１１】
2009272826.tif 000013
【図１２】
2009272826.tif 000014
【図１３】
2009272826.tif 000015