JP2012156910A - 通信装置 - Google Patents

通信装置 Download PDF

Info

Publication number
JP2012156910A
JP2012156910A JP2011015910A JP2011015910A JP2012156910A JP 2012156910 A JP2012156910 A JP 2012156910A JP 2011015910 A JP2011015910 A JP 2011015910A JP 2011015910 A JP2011015910 A JP 2011015910A JP 2012156910 A JP2012156910 A JP 2012156910A
Authority
JP
Japan
Prior art keywords
address
communication device
communication
specific
printer
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2011015910A
Other languages
English (en)
Other versions
JP5527233B2 (ja
Inventor
Takeshi Saito
健 斉藤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Brother Industries Ltd
Original Assignee
Brother Industries Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Brother Industries Ltd filed Critical Brother Industries Ltd
Priority to JP2011015910A priority Critical patent/JP5527233B2/ja
Publication of JP2012156910A publication Critical patent/JP2012156910A/ja
Application granted granted Critical
Publication of JP5527233B2 publication Critical patent/JP5527233B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Small-Scale Networks (AREA)

Abstract

【課題】 プリンタ10が、PC80とのユニキャスト通信を実行可能な状態になるために、プリンタ10のIPアドレスを主体的に変更し得る技術を提供する。
【解決手段】 プリンタ10は、PC80からブロードキャスト通信によって送信される名前解決パケットNPを受信する。プリンタ10は、名前解決パケットNPが受信される場合に、PINGパケットP1を送信する。プリンタ10は、PINGパケットP1の応答パケットを受信することを監視することによって、PC80とのユニキャスト通信を実行可能であるのか否かを判断する。プリンタ10は、PC80とのユニキャスト通信を実行不可能であると判断される場合に、プリンタ10のIPアドレスを変更する。プリンタ10は、変更後のIPアドレスを用いて、名前解決パケットNPの応答パケットを送信する。
【選択図】 図5

Description

本明細書によって開示される技術は、ローカルエリアネットワークを介して、外部装置と通信する通信装置に関する。
例えば、特許文献1には、PCと複数個のプリンタとがローカルエリアネットワークに接続されているシステムが開示されている。PCは、SNMPのGETコマンドをブロードキャストすることによって、各プリンタから、各プリンタのIPアドレスを取得する。PCは、例えば、PCと異なるネットワークアドレスを含むIPアドレスを有する1個以上のプリンタを表示する。ユーザは、PCの操作部を操作して、1個以上のプリンタの中から特定のプリンタを選択すると共に、IPアドレスを入力する。PCは、ユーザによって入力されたIPアドレスを含むSNMPのSETコマンドをブロードキャストする。これにより、特定のプリンタは、特定のプリンタ自身のIPアドレスを、ユーザによって入力されたIPアドレスに変更する。この結果、特定のプリンタは、PCとのユニキャスト通信を実行可能な状態になり得る。
特開2003−264556号公報
特許文献1の技術では、プリンタは、PCからの指示がなければ、プリンタのIPアドレスを変更しない。即ち、プリンタは、PCとのユニキャスト通信を実行可能な状態になるために、プリンタのIPアドレスを主体的に変更しない。
本明細書では、通信装置が、外部装置とのユニキャスト通信を実行可能な状態になるために、通信装置のIPアドレスを主体的に変更し得る技術を提供する。
本明細書では、ローカルエリアネットワークを介して、特定のIPアドレスを有する外部装置と通信する通信装置を開示する。通信装置は、受信部と、判断部と、変更部と、を備える。受信部は、外部装置からブロードキャスト通信によって送信される特定の信号であって、特定のIPアドレスを含む特定の信号を受信する。判断部は、特定の信号が受信される場合に、通信装置が、通信装置自身の現在のIPアドレスである第1のIPアドレスと、特定の信号に含まれる特定のIPアドレスと、を用いたユニキャスト通信を、外部装置と実行可能であるのか否かを判断する。変更部は、通信装置がユニキャスト通信を外部装置と実行不可能であると判断される特定の場合に、通信装置のIPアドレスを、第1のIPアドレスから、第1のIPアドレスと異なる第2のIPアドレスに変更する。
上記の構成では、通信装置は、外部装置からブロードキャストされる特定の信号を受信する場合に、外部装置とのユニキャスト通信を実行可能であるのか否かを判断する。通信装置は、外部装置とのユニキャスト通信を実行不可能であると判断する場合に、通信装置のIPアドレスを変更する。通信装置のIPアドレスが変更されるために、通信装置と外部装置とがユニキャスト通信を実行可能な状態になり得る。しかも、通信装置は、上記の判断を実行するために、通信装置のIPアドレスを変更する必要があるのか否かを主体的に判断することができる。従って、通信装置は、通信装置のIPアドレスを変更する必要があると判断する場合(即ち、外部装置とのユニキャスト通信を実行不可能であると判断する場合)に、例えば外部装置からの指示を受けなくても、通信装置のIPアドレスを主体的に変更し得る。
変更部は、ユーザからの指示を受けることなく、通信装置のIPアドレスを、第1のIPアドレスから第2のIPアドレスに変更してもよい。この構成によると、通信装置は、ユーザからの指示(例えば外部装置からの指示)を受けなくても、通信装置のIPアドレスを主体的に変更し得る。
外部装置とのユニキャスト通信を実行可能な適切なIPアドレスを通信装置に設定するために、以下の(A)〜(E)のいずれかの手法を採用してもよい。
(A)通信装置は、ローカルエリアネットワークに接続される各デバイスにIPアドレスを割り当てるIPアドレス割当サーバから、第2のIPアドレスを取得する取得部をさらに備えていてもよい。変更部は、特定の場合に、通信装置のIPアドレスを、第1のIPアドレスから、取得済みの第2のIPアドレスに変更してもよい。
(B)通信装置は、特定のIPアドレスの値が、IPアドレスを生成するための所定のアルゴリズムによって生成され得るIPアドレスの値の範囲に含まれる場合に、上記の所定のアルゴリズムを用いて、第2のIPアドレスを生成する第1の生成部をさらに備えていてもよい。変更部は、特定の場合に、通信装置のIPアドレスを、第1のIPアドレスから、生成済みの第2のIPアドレスに変更してもよい。
(C)通信装置は、特定のIPアドレスの全部の値のうちの一部を変更することによって、特定のIPアドレスから第2のIPアドレスを生成する第2の生成部をさらに備えていてもよい。変更部は、特定の場合に、通信装置のIPアドレスを、第1のIPアドレスから、生成済みの第2のIPアドレスに変更してもよい。
(D)通信装置は、通信装置の過去のIPアドレスである第3のIPアドレスを得るために利用されたIPアドレス設定手法を示す手法情報を格納するための手法メモリをさらに備えていてもよい。第3のIPアドレスは、外部装置とのユニキャスト通信を実行可能であったIPアドレスであってもよい。変更部は、特定の場合に、通信装置のIPアドレスを、第1のIPアドレスから、手法メモリ内の手法情報が示すIPアドレス設定手法を利用して得られる第2のIPアドレスに変更してもよい。
(E)通信装置は、通信装置の過去のIPアドレスである第2のIPアドレスを格納するためのアドレスメモリをさらに備えていてもよい。第2のIPアドレスは、外部装置とのユニキャスト通信を実行可能であったIPアドレスであってもよい。変更部は、特定の場合に、通信装置のIPアドレスを、第1のIPアドレスから、アドレスメモリ内の第2のIPアドレスに変更してもよい。
通信装置は、第2のIPアドレスが、ローカルエリアネットワークに接続されている他のデバイスのIPアドレスであるのか否かを確認する確認部をさらに備えていてもよい。変更部は、特定の場合において、第2のIPアドレスが他のデバイスのIPアドレスでないと確認される場合に、通信装置のIPアドレスを、第1のIPアドレスから、第2のIPアドレスに変更し、特定の場合において、第2のIPアドレスが他のデバイスのIPアドレスであると確認される場合に、通信装置のIPアドレスを、第1のIPアドレスから、第1及び第2のIPアドレスと異なるIPアドレスに変更してもよい。この構成によると、通信装置と他のデバイスとの両方に同じIPアドレスが設定されることを抑制することができる。
判断部は、特定のIPアドレスが送信先として含まれる第1の信号であって、第1のIPアドレスが送信元として含まれる第1の信号を送信して、第1の信号の応答信号を受信した場合に、通信装置がユニキャスト通信を外部装置と実行可能であると判断し、第1の信号を送信して、第1の信号の応答信号を受信しなかった場合に、通信装置がユニキャスト通信を外部装置と実行不可能であると判断してもよい。この構成によると、通信装置は、外部装置とのユニキャスト通信を実行可能であるのか否かについて、適切な判断を実行し得る。
判断部は、第1のIPアドレスのネットワークアドレス部の値と、特定のIPアドレスのネットワークアドレス部の値と、が一致する場合に、通信装置がユニキャスト通信を外部装置と実行可能であると判断し、第1のIPアドレスのネットワークアドレス部の値と、特定のIPアドレスのネットワークアドレス部の値と、が一致しない場合に、通信装置がユニキャスト通信を外部装置と実行不可能であると判断してもよい。この構成によると、通信装置は、外部装置とのユニキャスト通信を実行可能であるのか否かについて、適切な判断を実行し得る。
通信装置は、通信装置のIPアドレスが、第1のIPアドレスから第2のIPアドレスに変更された後に、特定のIPアドレスが送信先として含まれる第2の信号であって、第2のIPアドレスが送信元として含まれる第2の信号を送信する送信部をさらに備えていてもよい。この構成によると、通信装置は、特定のIPアドレスと、第2のIPアドレスと、を用いたユニキャスト通信を、外部装置と実行し得る。
なお、上記の通信装置を実現するための制御方法、コンピュータプログラム、及び、当該コンピュータプログラムを格納するコンピュータ読取可能記録媒体も、新規で有用である。
通信システムの構成の一例を示す。 メイン処理のフローチャートを示す。 IPアドレス変更処理のフローチャートを示す。 成功手法処理のフローチャートを示す。 ユニキャスト通信を実行不可能なケースの一例を示す。
(実施例)
(システムの構成)
図1に示されるように、通信システム2は、プリンタ10(PC80の周辺機器)と、PC80と、DHCP(Dynamic Host Configuration Protocol)サーバ90と、を備える。各デバイス10,80,90は、LAN4に接続されている。各デバイス10,80,90は、LAN4を介して、相互に通信可能である。
(プリンタ10の構成)
プリンタ10は、操作部12と、表示部14と、印刷実行部16と、ネットワークインターフェイス18と、制御部20と、を備える。上記の各部12〜20は、バス線19に接続されている。操作部12は、複数のキーによって構成される。ユーザは、操作部12を操作することによって、様々な指示をプリンタ10に入力することができる。表示部14は、様々な情報を表示するためのディスプレイである。印刷実行部16は、インクジェットヘッド方式、レーザ方式等の印刷機構を備え、制御部20からの指示に従って印刷を実行する。ネットワークインターフェイス18は、LAN4に接続されている。
制御部20は、CPU22とメモリ30とを備える。CPU22は、メモリ30に格納されているプログラム(図示省略)に従って、様々な処理を実行する。CPU22が当該プログラムに従って処理を実行することによって、各部50〜64の機能が実現される。メモリ30は、不揮発性メモリ、揮発性メモリ等によって構成される。メモリ30は、設定記憶領域32と、成功手法記憶領域34と、成功IP記憶領域36と、受信IP記憶領域38と、を備える。
設定記憶領域32は、プリンタ10の現在のIPアドレスと、プリンタ10の現在のサブネットマスクと、プリンタ10の現在のIPアドレス設定手法を示す手法情報と、を記憶する。なお、詳しくは後述するが、本実施例では、IPアドレス設定手法として、5種類の手法(「STATIC」、「DHCP」、「BOOTP(Bootstrap Protocol)」、「RARP(Reverse Address Resolution Protocol)」、及び、「APIPA(Automatic Private IP Addressing)」)が存在する。
成功手法記憶領域34は、PC80とのユニキャスト通信を実行可能であったプリンタ10の過去のIPアドレスを得るために利用されたIPアドレス設定手法(以下では「成功手法」と呼ぶ)を示す手法情報を記憶する。本実施例では、成功手法記憶領域34は、最新の1個の成功手法を示す手法情報を記憶する。ただし、変形例では、成功手法記憶領域34は、複数個の成功手法を示す複数個の手法情報を記憶可能であってもよい。
成功IP記憶領域36は、PC80とのユニキャスト通信を実行可能であったプリンタ10の過去のIPアドレス(以下では「成功IPアドレス」と呼ぶ)を記憶する。特に、成功IP記憶領域36は、「STATIC」に従って設定された成功IPアドレスを記憶する。成功IP記憶領域36は、最新の1個の成功IPアドレスを記憶する。ただし、変形例では、成功IP記憶領域36は、複数個の成功IPアドレスを記憶可能であってもよい。なお、成功IP記憶領域36は、成功IPアドレスと同時に利用されていたプリンタ10の過去のサブネットマスクも記憶する。
受信IP記憶領域38は、プリンタ10が過去に受信したパケットに含まれる送信元IPアドレスを記憶する。受信IP記憶領域38が記憶可能なIPアドレスの数は、予め決められている(以下では「所定数」と呼ぶ)。制御部20は、受信IP記憶領域38に上記の所定数のIPアドレスが記憶されている状態で新たなパケットを受信すると、受信IP記憶領域38に記憶されている最も古いIPアドレスを削除し、当該新たなパケットに含まれる送信元IPアドレスを受信IP記憶領域38に記憶させる。
(PC80の構成)
PC80は、図示省略の操作部、表示部、制御部等を備える。PC80には、プリンタ10のためのプリンタドライバがインストールされている。プリンタドライバがPC80にインストールされる際に、プリンタポートが生成される。プリンタポートでは、プリンタ10のノード名が指定されている。ユーザは、PC80の操作部を操作して、印刷対象のデータ(以下では「印刷データ」と呼ぶ)を選択することができる。この場合、PC80の制御部は、印刷データをプリンタ10で印刷させるための処理(後述する)を実行する。
(DHCPサーバ90の構成)
DHCPサーバ90は、LAN4に接続されているデバイス(例えば、プリンタ10、PC80等)からの要求に応じて、上記のデバイスにIPアドレス及びサブネットマスクを割り当てる。例えば、プリンタ10のIPアドレス設定手法が「DHCP」である場合には、プリンタ10の制御部20は、IPアドレスの割り当てを要求するコマンドをDHCPサーバ90に送信する。この場合、DHCPサーバ90は、予め決められているIPアドレスの範囲内から選択されるIPアドレスと、予め決められているサブネットマスクと、をプリンタ10に割り当てる(送信する)。これにより、プリンタ10の制御部20は、DHCPサーバ90からIPアドレス及びサブネットマスクを取得して、プリンタ10の設定値として記憶することができる(即ち設定記憶領域32に記憶させることができる)。同様に、PC80の制御部は、DHCPサーバ90からIPアドレス及びサブネットマスクを取得して、PC80の設定値として記憶することができる。
(プリンタ10のIPアドレス設定手法)
上述したように、プリンタ10のIPアドレス設定手法として、「STATIC」、「DHCP」、「BOOTP」、「RARP」、及び、「APIPA」が存在する。ユーザは、プリンタ10の操作部12を操作することによって、上記の5種類のIPアドレス設定手法の中から、1種類のIPアドレス設定手法を選択する。この場合、制御部20は、ユーザによって選択されたIPアドレス設定手法を示す手法情報(例えば、「STATIC」が選択された場合には、「STATIC」を示す情報)を、設定記憶領域32に記憶させる。
(STATIC)
ユーザは、「STATIC」を選択する場合に、さらに、操作部12を操作して、プリンタ10に設定されるべきIPアドレス及びサブネットマスクをプリンタ10に入力する。制御部20は、ユーザによって入力されたIPアドレス及びサブネットマスクを、プリンタ10の設定値として記憶する(即ち設定記憶領域32に記憶させる)。
(DHCP)
「DHCP」が選択される場合には、制御部20は、IPアドレスの割り当てを要求するコマンドをDHCPサーバ90に送信して、DHCPサーバ90からIPアドレス及びサブネットマスクを取得する。プリンタ10は、DHCPサーバ90から取得されるIPアドレス及びサブネットマスクを、プリンタ10の設定値として記憶する。
(BOOTP)
「BOOTP」が選択される場合には、制御部20は、IPアドレスの割り当てを要求するコマンドをBOOTPサーバ(図示省略)に送信して、BOOTPサーバからIPアドレス及びサブネットマスクを取得する。「BOOTP」は、コマンドの送信先がBOOTPサーバである点を除くと、「DHCP」と同様である。
(RARP)
ユーザは、「RARP」を選択する場合に、RARPサーバ(図示省略)の操作部を操作して、プリンタ10に設定されるべきIPアドレスと、プリンタ10に設定されるべきサブネットマスクと、プリンタ10のMACアドレスと、が対応付けられている情報を、RARPサーバに登録する。プリンタ10は、RARPサーバに自己のMACアドレスを含むコマンドを送信する。RARPサーバは、コマンドに含まれるMACアドレスに対応づけられているIPアドレス及びサブネットマスクを、プリンタ10に送信する。これにより、プリンタ10は、RARPサーバからIPアドレスを取得する。プリンタ10は、RARPサーバから取得されるIPアドレス及びサブネットマスクを、プリンタ10の設定値として記憶する。
(APIPA)
「APIPA」が選択される場合には、制御部20は、APIPAに従ってIPアドレス及びサブネットマスクを生成して、プリンタ10の設定値として記憶する。なお、APIPAで生成され得るIPアドレスの範囲は、予め決められている。具体的には、「169.254.0.0」〜「169.254.255.255」の範囲である。
なお、「STATIC」及び「RARP」では、ユーザが、IPアドレス設定手法を変更したり、IPアドレスを変更したりしない限り、プリンタ10のIPアドレスは変化しない。従って、「STATIC」及び「RARP」は、ユーザによって指定される静的なIPアドレスをプリンタ10に設定するためのIPアドレス設定手法である、と言える。なお、「APIPA」も、静的なIPアドレスをプリンタ10に設定するためのIPアドレス設定手法である、と言える。これに対し、「DHCP」及び「BOOTP」では、プリンタ10の電源がONされる毎に、DHCPサーバ90からプリンタ10に新たなIPアドレスが割り当てられる。従って、「DHCP」及び「BOOTP」は、動的なIPアドレスをプリンタ10に設定するためのIPアドレス設定手法である、と言える。
(メイン処理(図2))
続いて、プリンタ10が実行する処理について説明する。上述したように、PC80のユーザは、PC80の操作部を操作して、印刷データを選択することができる。この場合、PC80の制御部は、NetBIOS(Network Basic Input Output System)の一手法を用いて、プリンタ10のIPアドレスを取得することを試行する(即ち名前解決を実行する)。なお、これは、DNS(Domain Name System)サーバを用いた名前解決とは異なる手法である。具体的に言うと、PC80の制御部は、プリンタポートで指定されているプリンタ10のノード名を含む名前解決パケットを、ブロードキャストする。即ち、名前解決パケットでは、送信先IPアドレスが不特定である。なお、名前解決パケットは、送信元IPアドレスとして、PC80の現在のIPアドレスを含む。
プリンタ10の受信部50(図1参照)は、PC80からブロードキャストされる名前解決パケットを受信する。この場合、判断部52(図1参照)は、名前解決パケットに含まれるノード名がプリンタ10のノード名であるのか否かを判断する。判断部52は、名前解決パケットに含まれるノード名がプリンタ10のノード名である場合に、図2のS10でYESと判断して、S12に進む。一方において、判断部52は、名前解決パケットに含まれるノード名がプリンタ10のノード名でない場合に、図2のS10でNOと判断する。
S12では、判断部52は、PINGパケットを送信する。このPINGパケットは、送信先IPアドレスとして、PC80の現在のIPアドレスを含み、送信元IPアドレスとして、プリンタ10の現在のIPアドレス(即ち設定記憶領域32に現在記憶されているIPアドレス)を含む。
次いで、S14において、判断部52は、S12で送信されたPINGパケットの応答パケットを受信することを監視する。なお、詳しくは後述するが、PINGパケットの応答パケットが受信される場合は、プリンタ10がPC80とユニキャスト通信を実行可能であることを意味し、PINGパケットの応答パケットが受信されない場合は、プリンタ10がPC80とユニキャスト通信を実行不可能であることを意味する。判断部52は、PINGの応答パケットを受信することを監視することによって、プリンタ10がPC80とユニキャスト通信を実行可能であるのか否かについて、適切な判断を実行することができる。
判断部52は、応答パケットを受信する場合(S14でYESの場合)に、S16〜S20をスキップして、S22に進む。一方において、判断部52は、S12でPINGパケットを送信してから所定時間が経過しても、応答パケットを受信しない場合に、S14でNOと判断してS16に進む。
なお、上述したように、S14でYESの場合は、プリンタ10がPC80とユニキャスト通信を実行可能であることを意味する。従って、フローチャート内の処理を図示省略しているが、S14でYESの場合には、制御部20は、設定記憶領域32に現在記憶されている手法情報を、成功手法記憶領域34に記憶させる。また、設定記憶領域32に現在記憶されている手法情報が「STATIC」を示す場合には、制御部20は、さらに、設定記憶領域32に現在記憶されているIPアドレス及びサブネットマスクを、成功IP記憶領域36に記憶させる。
S16では、制御部20は、IPアドレス変更処理(図3参照)を実行する。次いで、S18では、制御部20は、S16のIPアドレス変更処理でIPアドレスが変更されたのか否かを判断する。制御部20は、IPアドレスが変更されたと判断する場合(S18でYESの場合)に、S22に進む。一方において、制御部20は、IPアドレスが変更されなかったと判断する場合(S18でNOの場合)、即ち、後述の図3のS66で元の各設定値に戻された場合に、S20に進む。
S20では、制御部20は、IPアドレス変更処理が実行されたが、PC80とのユニキャスト通信を実行可能なIPアドレスに変更することができなかったことを示すメッセージをユーザに通知する。制御部20は、プリンタ10の表示部14にメッセージを表示させてもよいし、予め決められているデバイスにメッセージを送信してもよい(例えば電子メールを用いて送信してもよい)。S20を終えると、図2の処理が終了する。
S22では、送信部64(図1参照)は、S10で受信された名前解決パケットの応答パケットを送信する。この応答パケットは、送信先IPアドレスとして、PC80の現在のIPアドレスを含み、送信元IPアドレスとして、プリンタ10の現在のIPアドレス(例えば、S16のIPアドレス変更処理が実行された場合には、変更後のIPアドレス)を含む。PC80は、名前解決パケットの応答パケットを受信し、この結果、プリンタ10のIPアドレスを取得することができる(即ち名前解決が成功する)。
次いで、S24では、制御部20は、S16のIPアドレス変更処理でIPアドレスが変更されたのか否かを判断する。制御部20は、IPアドレスが変更されたと判断する場合(S24でYESの場合)に、S26に進む。一方において、制御部20は、IPアドレスが変更されなかったと判断する場合(S24でNOの場合)に、S26をスキップして、図2の処理を終了する。
S26では、制御部20は、IPアドレス変更処理によってIPアドレスが変更されたことを示すメッセージをユーザに通知する。メッセージは、変更前のIPアドレスと、変更後のIPアドレスと、を含む。また、IPアドレス設定手法も変更された場合には、メッセージは、さらに、変更前のIPアドレス設定手法と、変更後のIPアドレス設定手法と、を含んでいてもよい。また、サブネットマスクも変更された場合には、メッセージは、さらに、変更前のサブネットマスクと、変更後のサブネットマスクと、を含んでいてもよい。なお、メッセージの通知先は、上記のS20と同様である。S26を終えると、図2の処理が終了する。
(IPアドレス変更処理)
続いて、図2のS16で実行されるIPアドレス変更処理の内容について、詳しく説明する。
(DHCPの利用)
図3に示されるように、S40において、変更部54(図1参照)は、設定記憶領域32に現在記憶されている手法情報を参照して、プリンタ10の現在のIPアドレス設定手法が「STATIC」であるのか否かを判断する。プリンタ10の現在のIPアドレス設定手法が「STATIC」である場合(S40でYESの場合)には、S42に進み、プリンタ10の現在のIPアドレス設定手法が「STATIC」でない場合(S40でNOの場合)には、S48に進む。
S42では、変更部54は、設定記憶領域32内の手法情報を、「STATIC」を示す手法情報から、「DHCP」を示す手法情報に変更する。次いで、S44において、取得部56(図1参照)は、IPアドレスの割り当てを要求するコマンドをDHCPサーバ90に送信して、DHCPサーバ90からIPアドレス及びサブネットマスクを取得する。次いで、S46において、変更部54は、設定記憶領域32内のIPアドレス及びサブネットマスクを、S44で取得されたIPアドレス及びサブネットマスクに変更する。この構成によると、PC80とのユニキャスト通信を実行可能な適切なIPアドレスを、プリンタ10に新たに設定し得る。S46を終えると、S60に進む。
(APIPAの利用)
S48では、変更部54は、PC80の現在のIPアドレスが、APIPAで生成され得るIPアドレスの範囲、即ち、「169.254.0.0」〜「169.254.255.255」に含まれるのか否かを判断する。PC80の現在のIPアドレスが上記の範囲に含まれる場合(S48でYESの場合)には、S50に進み、PC80の現在のIPアドレスが上記の範囲に含まれない場合(S48でNOの場合)には、S56に進む。
S50では、変更部54は、設定記憶領域32内の手法情報を、「APIPA」を示す手法情報に変更する。なお、S50が実行される時点において、設定記憶領域32内の手法情報が、「APIPA」を示す手法情報である場合には、S50がスキップされる。次いで、S52において、第1の生成部58(図1参照)は、APIPAのアルゴリズムを用いて、IPアドレスを生成する。即ち、第1の生成部58は、「169.254.0.0」〜「169.254.255.255」の中から、1個のIPアドレスを選択することによって、IPアドレスを生成する。なお、S52では、さらに、第1の生成部58は、APIPAで予め決められているサブネットマスク「255.255.0.0」を生成する。次いで、S54において、変更部54は、設定記憶領域32内のIPアドレス及びサブネットマスクを、S52で生成されたIPアドレス及びサブネットマスクに変更する。この構成によると、PC80とのユニキャスト通信を実行可能な適切なIPアドレスを、プリンタ10に新たに設定し得る。S54を終えると、S60に進む。
(成功手法の利用)
S56では、変更部54は、成功手法を示す手法情報(以下では「成功手法情報」と呼ぶ)が成功手法記憶領域34に記憶されているのか否かを判断する。成功手法情報が成功手法記憶領域34に記憶されている場合(S56でYESの場合)には、S58に進み、成功手法情報が成功手法記憶領域34に記憶されていない場合(S56でNOの場合)には、図4のS90に進む。
S58では、制御部20は、成功手法処理を実行する。図4に示されるように、成功手法処理では、S80において、変更部54は、成功手法情報が示す成功手法が「STATIC」であるのか否かを判断する。成功手法が「STATIC」である場合(S80でYESの場合)には、S82に進み、成功手法が「STATIC」でない場合(S80でNOの場合)には、S86に進む。
成功手法が「STATIC」である場合には、通常、成功IP記憶領域36に成功IPアドレス及びサブネットマスクが記憶されている。S82では、確認部62(図1参照)は、成功IP記憶領域36に記憶されている成功IPアドレスを含むARPパケットをブロードキャストする。
次いで、S84において、確認部62は、ARPパケットの応答パケットを受信することを監視する。例えば、ARPパケットに含まれる成功IPアドレスが、LAN4に接続されている他のデバイスに現在設定されている場合には、当該他のデバイスは、ARPパケットの応答パケットを送信する。この場合、確認部62は、ARPパケットの応答パケットを受信して、S84でYESと判断し、S90に進む。一方において、ARPパケットに含まれる成功IPアドレスが、LAN4に接続されているいずれのデバイスにも現在設定されていない場合には、確認部62は、ARPパケットの応答パケットを受信せず、S84でNOと判断し、S86に進む。S82及びS84でARPパケットが利用されるために、他のデバイスのIPアドレスと同じIPアドレスが、プリンタ10に設定されるのを抑制することができる。
S86では、変更部54は、成功手法に対応するIPアドレスを取得可能であるのか否かを判断する。例えば、S84でNOの場合に実行されるS88では、成功手法が「STATIC」であり、成功IPアドレス及びサブネットマスクが成功IP記憶領域36に記憶されている。従って、この場合、変更部54は、成功手法に対応するIPアドレス(即ち成功IPアドレス)を取得可能であるために、S86でYESと判断して、S88に進む。
また、S80でNOと判断される場合には、成功手法は、「DCHP」、「BOOTP」、「RARP」、及び、「APIPA」のいずれかである。例えば、成功手法が「DHCP」又は「BOOTP」である場合には、S86において、取得部56は、IPアドレスの割り当てを要求するコマンドをDHCPサーバ90又はBOOTPサーバに送信して、IPアドレス及びサブネットマスクを取得することを試行する。また、例えば、成功手法が「RARP」である場合には、変更部54は、プリンタ10のMACアドレスを含むコマンドをRARPサーバに送信して、IPアドレス及びサブネットマスクを取得することを試行する。変更部54は、上記の試行が成功した場合(即ちコマンドの送信先のサーバからIPアドレス及びサブネットマスクが取得された場合)に、S86でYESと判断して、S88に進み、上記の試行が成功しなかった場合に、S86でNOと判断して、S90に進む。なお、例えば、成功手法が「APIPA」である場合には、S86において、第1の生成部58は、APIPAのアルゴリズムを用いて、IPアドレスを生成する。この場合、変更部54は、成功手法に対応するIPアドレスを取得可能であるために、S86でYESと判断して、S88に進む。
S88では、変更部54は、設定記憶領域32内の手法情報を、成功手法記憶領域34に記憶されている成功手法情報に変更する。なお、S88が実行される時点において、設定記憶領域32内の手法情報と、成功手法情報と、が一致する場合には、S88がスキップされる。S88を終えると、S98に進む。
S90では、第2の生成部60(図1参照)は、PC80の現在のIPアドレスの一部の値を変更することによって、候補のIPアドレスを生成する。なお、第2の生成部60は、受信IP記憶領域38に記憶されている複数のIPアドレスのいずれにも一致しない候補のIPアドレスを生成する。S90の具体例として、以下の(第1の例)及び(第2の例)を挙げることができる。
(S90の具体例:第1の例)
例えば、プリンタ10の現在のサブネットマスクが、先頭の16ビットをマスクするものである場合(即ち「255.255.0.0」である場合)には、第2の生成部60は、PC80の現在のサブネットマスクが、先頭の24ビットをマスクするものであると仮定する(即ち仮のサブネットマスク=「255.255.255.0」)。次いで、第2の生成部60は、PC80の現在のIPアドレス(例えば「192.168.1.2」)と、仮のサブネットマスク(例えば「255.255.255.0」)と、を用いて、ネットワークアドレス部の値(例えば「192.168.1」)を決定する。次いで、第2の生成部60は、PC80の現在のIPアドレスに含まれる最後の8ビットの値(例えば「2」)と異なる値(例えば「3」)を、候補の値として決定する。次いで、第2の生成部60は、ネットワークアドレス部の値(例えば「192.168.1」)と、候補の値(例えば「3」)と、を用いて(即ち論理和を算出して)、候補のIPアドレス(例えば「192.168.1.3」)を生成する。
(S90の具体例:第2の例)
例えば、プリンタ10の現在のサブネットマスクが、先頭の24ビットをマスクするものである場合(即ち「255.255.255.0」である場合)には、第2の生成部60は、PC80の現在のサブネットマスクが、先頭の28ビットをマスクするものであると仮定する(即ち仮のサブネットマスク=「255.255.255.240」と仮定する)。後の処理は、上記の第1の例と同様である。
上記のS90の処理は、以下のように表現することができる。即ち、第2の生成部60は、PC80の現在のIPアドレスのうちの第1の部分(第1の例では先頭の24ビット、第2の例では先頭の28ビット)をマスクして、PC80の現在のIPアドレスのうちの第1の部分と異なる第2の部分の値を変更することによって、候補のIPアドレスを生成する。第1の部分の桁数は、プリンタ10の現在のサブネットマスクのマスク部分の桁数(第1の例では先頭の16ビット、第2の例では先頭の24ビット)よりも大きい。
S90を終えると、S92において、確認部62は、S90で生成された候補のIPアドレスを含むARPパケットをブロードキャストする。次いで、S94において、確認部62は、ARPパケットの応答パケットを受信することを監視する。ARPパケットの応答パケットが受信される場合(S94でYESの場合)は、他のデバイスに候補のIPアドレスが現在設定されていることを意味する。従って、第2の生成部60は、S90において、前回の候補のIPアドレスと異なる新たな候補のIPアドレスを再び生成する。一方において、ARPパケットの応答パケットが受信されない場合(S94でNOの場合)は、他のデバイスに候補のIPアドレスが現在設定されていないことを意味する。この場合、S96に進む。S92及びS94でARPパケットが利用されるために、他のデバイスのIPアドレスと同じIPアドレスが、プリンタ10に設定されるのを抑制することができる。
S96では、変更部54は、設定記憶領域32内の手法情報を、「STATIC」を示す手法情報に変更する。なお、S96が実行される時点において、設定記憶領域32内の手法情報が、「STATIC」を示す手法情報である場合には、S96がスキップされる。S96を終えると、S98に進む。
S98では、変更部54は、設定記憶領域32内のIPアドレス及びサブネットマスクを変更する。例えば、S84でNOの場合に実行されるS98では、変更部54は、設定記憶領域32内のIPアドレス及びサブネットマスクを、成功IP記憶領域36に記憶されている成功IPアドレス及びサブネットマクスに変更する。また、S80でNOと判断され、かつ、S86でYESと判断される場合に実行されるS98では、変更部54は、設定記憶領域32内のIPアドレス及びサブネットマスクを、S86で取得されたIPアドレス及びサブネットマクスに変更する。また、S96を経て実行されるS98では、変更部54は、設定記憶領域32内のIPアドレス及びサブネットマスクを、S90で生成された候補のIPアドレス及び仮のサブネットマスクに変更する。この構成によると、PC80とのユニキャスト通信を実行可能な適切なIPアドレスを、プリンタ10に新たに設定し得る。S98を終えると、成功手法処理が終了する。
(図3のS60以降の処理)
成功手法処理が終了すると、図3のS60に進む。S60では、制御部20は、PINGパケットを送信する。このPINGパケットは、送信先IPアドレスとして、PC80の現在のIPアドレスを含み、送信元IPアドレスとして、プリンタ10の変更後のIPアドレス(即ち設定記憶領域32に現在記憶されているIPアドレス)を含む。
次いで、S62において、制御部20は、S60で送信されたPINGパケットの応答パケットを受信すること監視する。制御部20は、応答パケットを受信する場合(S62でYESの場合)に、S64及びS66をスキップして、図3の処理を終了する。一方において、制御部20は、S60でPINGパケットを送信してから所定時間が経過しても、応答パケットを受信しない場合に、S62でNOと判断してS64に進む。
S64では、制御部20は、設定記憶領域32に記憶されているIPアドレスが変更された回数(以下では「リトライ回数」と呼ぶ)が、所定値に達したのか否かを判断する。、制御部20は、リトライ回数が所定値に達していない場合(S64でNOの場合)に、S40に戻り、リトライ回数が所定値に達した場合(S64でYESの場合)に、S66に進む。S66では、変更部54は、設定記憶領域32内の各設定値(IPアドレス、サブネットマスク、IPアドレス設定手法)を、図3のIPアドレス変更処理が実行される前の各設定値に戻す。S66を終えると、図3の処理が終了する。
以上のように、本実施例によると、プリンタ10は、PC80からの指示、又は、操作部12を介した指示を受けなくても、上記の種々の方法を用いて、プリンタ10のIPアドレスを主体的に変更することができる。即ち、ユーザがプリンタ10のIPアドレスを変更するための作業を行なわなくても、プリンタ10のIPアドレスを変更可能である。
(具体的なケース(図5))
図5に示されるように、PC80では、IPアドレス設定手法が「DHCP」であり、IPアドレスが「192.168.1.2」であり、サブネットマスクが「255.255.255.0」である。従って、PC80のIPアドレスのネットワークアドレス部の値は、「192.168.1」である。
図5では、ユーザが、プリンタ10のIPアドレス設定手法を、「DHCP」から「STATIC」に変更する場合を想定している。上述したように、PC80のIPアドレス設定手法は、「DHCP」である。従って、プリンタ10のIPアドレス設定手法が「DHCP」から「STATIC」に変更される前には、プリンタ10及びPC80のそれぞれに、DHCPサーバ90からIPアドレス及びサブネットマスクが割り当てられる。この場合、プリンタ10及びPC80は、通常、適切にユニキャスト通信を実行し得る。ただし、プリンタ10のIPアドレス設定手法が「DHCP」から「STATIC」に変更される場合には、プリンタ10のIPアドレス及びサブネットマスクが、ユーザによって指定される。
図5は、ユーザによって指定されたプリンタ10のIPアドレス及びサブネットマスクを示す。即ち、プリンタ10では、IPアドレス設定手法が「STATIC」であり、IPアドレスが「192.168.2.3」であり、サブネットマスクが「255.255.0.0」である。従って、プリンタ10のIPアドレスのネットワークアドレス部の値は、「192.168」である。上述したように、PC80のIPアドレスのネットワークアドレス部の値は、「192.168.1」である。従って、プリンタ10とPC80との間でネットワークアドレスが異なる。
上述したように、PC80は、プリンタ10のノード名「AAA」を含む名前解決パケットNPをブロードキャストする。なお、名前解決パケットNPは、送信元IPアドレスとして、PC80の現在のIPアドレス「192.168.1.2」を含む。
プリンタ10の受信部50は、名前解決パケットNPを受信する(図2のS10参照)。プリンタ10の制御部20は、通常、パケットが受信される毎に、当該パケットが妥当であるのか否かを判断する。制御部20は、妥当であると判断されるパケットについて、当該パケットに従った処理を実行し、妥当でないと判断されるパケットについて、当該パケットに従った処理を実行せずに、当該パケットを破棄する。パケットの妥当性は、当該パケットがプリンタ10と同じネットワークから送信されたものであるのか否かに基づいて、判断される。具体的に言うと、制御部20は、名前解決パケットNPに含まれる送信元IPアドレス「192.168.1.2」が、プリンタ10のネットワークアドレス「192.168」を含むのか否かを判断する。この例では、制御部20は、名前解決パケットNPが妥当であると判断する。即ち、プリンタ10とPC80との間でネットワークアドレスが異なるにも関わらず、制御部20は、名前解決パケットNPが妥当であると判断して、名前解決パケットNPを破棄しない。
次いで、プリンタ10の判断部52は、PINGパケットP1を送信する(図2のS12参照)。なお、PINGパケットP1は、送信先IPアドレスとして、PC80の現在のIPアドレス「192.168.1.2」を含み、送信元IPアドレスとして、プリンタ10の現在のIPアドレス「192.168.2.3」を含む。
PC80は、PINGパケットP1が妥当であるのか否かを判断する。即ち、PC80は、PINGパケットP1に含まれる送信元IPアドレス「192.168.2.3」が、PC80のネットワークアドレス「192.168.1」を含むのか否かを判断する。この例では、PC80は、PINGパケットP1が妥当でないと判断して、PINGパケットP1を破棄する。即ち、PC80は、PINGパケットP1の応答パケットを送信しない。従って、このような状況では、プリンタ10は、プリンタ10のIPアドレス「192.168.2.3」と、PC80のIPアドレス「192.168.1.2」と、を用いて、PC80とのユニキャスト通信を実行不可能である。
図5の例では、PC80からPINGパケットP1の応答パケットが送信されないために、プリンタ10の判断部52は、PC80とのユニキャスト通信を実行不可能であると判断して、図2のS14でNOと判断する。即ち、図2のS14の判断処理は、PC80とのユニキャスト通信を実行可能であるのか否かを判断することに等しい。より具体的に言うと、図2のS14の判断処理は、プリンタ10のIPアドレスのネットワークアドレス部の値と、PC80のIPアドレスのネットワークアドレス部の値と、が一致するのか否かを判断することに等しい。
PC80とのユニキャスト通信を実行不可能であると判断される場合(図2のS14でNOの場合)には、制御部20は、IPアドレス変更処理を実行する(図2のS16参照)。図5の例では、プリンタ10のIPアドレス設定手法が「STATIC」である。従って、図3のS40でYESと判断されるために、S42において、変更部54は、プリンタ10のIPアドレス設定手法を、「STATIC」から「DHCP」に変更する。さらに、S44において、取得部56は、DHCPサーバ90から、IPアドレス「192.168.1.3」及びサブネットマスク「255.255.255.0」を取得する。PC80が利用しているDHCPサーバ90から、IPアドレス及ぶサブネットマスクが取得されるために、当該IPアドレスのネットワークアドレス部の値「192.168.1」は、PC80のIPアドレスのネットワークアドレス部の値に一致する。次いで、S46において、変更部54は、設定記憶領域32内のIPアドレス及びサブネットマスクを、「192.168.2.3」及び「255.255.0.0」から、「192.168.1.3」及び「255.255.255.0」に変更する。
次いで、S60において、制御部20は、PINGパケットP2(図5参照)を送信する。なお、PINGパケットP2は、送信先IPアドレスとして、PC80の現在のIPアドレス「192.168.1.2」を含み、送信元IPアドレスとして、プリンタ10の変更後のIPアドレス「192.168.1.3」を含む。
PINGパケットP2に含まれる送信元IPアドレス「192.168.1.3」が、PC80のネットワークアドレス「192.168.1」を含むために、PC80は、PINGパケットP2が妥当であると判断する。このために、PC80は、PINGパケットP2の応答パケットR1を送信する。従って、プリンタ10の制御部20は、S62でYESと判断し、図3のIPアドレス変更処理(即ち図2のS16)を終了する。このように、IPアドレス変更処理が実行されることにより、プリンタ10とPC80とがユニキャスト通信を実行可能な状態が構築される。
次いで、図2のS22において、送信部64は、名前解決パケットNPの応答パケットR2を送信する。この応答パケットR2は、送信先IPアドレスとして、PC80の現在のIPアドレス「192.168.1.2」を含み、送信元IPアドレスとして、プリンタ10の変更後のIPアドレス「192.168.1.3」を含む。
PC80は、応答パケットR2を受信することによって、プリンタ10のIPアドレス「192.168.1.3」を取得することができる。この場合、PC80は、プリンタ10のIPアドレス「192.168.1.3」を送信先IPアドレスとして、印刷データPDを送信する。これにより、プリンタ10の制御部20は、印刷データPDに従って、印刷実行部16に印刷を実行させる印刷処理を実行する。
(本実施例の効果)
本実施例によると、プリンタ10は、PC80からブロードキャストされる名前解決パケットNPを受信する場合に、PC80とのユニキャスト通信を実行可能であるのか否かを判断する(図2のS14参照)。プリンタ10は、PC80とのユニキャスト通信を実行不可能であると判断する場合(図2のS14でNOの場合)に、プリンタ10のIPアドレスを変更する(図2のS16参照)。プリンタ10のIPアドレスが変更されるために、プリンタ10とPC80とがユニキャスト通信を実行可能な状態になり得る。しかも、プリンタ10は、上記の判断を実行して、プリンタ10のIPアドレスを変更する必要があるのか否かを主体的に決定する。そして、プリンタ10は、プリンタ10のIPアドレスを変更する必要があると判断する場合(即ち、PC80とのユニキャスト通信を実行不可能であると判断する場合)に、PC80からの指示を受けなくても、プリンタ10のIPアドレスを主体的に変更する。即ち、プリンタ10は、PC80からの印刷データに従って印刷処理を実行可能な状態に自動的に復帰する。ユーザは、PC80において、プリンタ10のIPアドレスを変更するための作業を行なう必要がない。従って、ユーザの作業負担を軽減することができる。
(対応関係)
プリンタ10、PC80が、それぞれ、「通信装置」、「外部装置」の一例である。名前解決パケットNP、PINGパケットP1、応答パケットR2が、それぞれ、「特定の信号」、「第1の信号」、「第2の信号」の一例である。また、図5に示される各IPアドレス、即ち、「192.168.1.2」、「192.168.2.3」、「192.168.1.3」が、それぞれ、「特定のIPアドレス」、「第1のIPアドレス」、「第2のIPアドレス」の一例である。なお、図3のS52で生成されるIPアドレス、図4のS86で取得されるIPアドレス、及び、図4のS90で生成されるIPアドレスも、「第2のIPアドレス」の一例である。さらに、図4のS94でYESの場合にS90で再び生成されるIPアドレスが、「第1及び第2のIPアドレスと異なるIPアドレス」の一例である。また、成功手法記憶領域34、成功IP記憶領域36が、それぞれ、「手法メモリ」、「アドレスメモリ」の一例である。DHCPサーバ90及びBOOTPサーバが、「IPアドレス割当サーバ」の一例である。また、APIPAが、「所定のアルゴリズム」の一例である。
以上、本発明の具体例を詳細に説明したが、これらは例示にすぎず、特許請求の範囲を限定するものではない。特許請求の範囲に記載の技術には、以上に例示した具体例を様々に変形、変更したものが含まれる。上記の実施例の変形例を以下に列挙する。
(1)上記の実施例では、プリンタ10が「通信装置」の一例であるが、「通信装置」は、例えば、PC、サーバ、スキャナ、FAX、電話機、多機能機、携帯電話、PDA等であってもよい。
(2)上記の実施例では、図5に示されるように、PC80がPINGパケットP1の応答パケットを送信しない状況として、プリンタ10とPC80との間でネットワークアドレスが異なる場合を想定している。ただし、例えば、PC80は、IPアドレスのフィルタリング機能を備えていてもよい。即ち、PC80は、フィルタリングの対象のIPアドレス(例えばユーザによって予め指定されたIPアドレス)を送信元IPアドレスとして含むパケットを破棄してもよい。このような状況では、例えば、プリンタ10のIPアドレスがフィルタリングの対象のIPアドレスである場合には、プリンタ10とPC80との間でネットワークアドレスが同じであっても、PC80は、PINGパケットP1の応答パケットを送信しない。即ち、一般的に言うと、「ユニキャスト通信を外部装置と実行不可能である」は、通信装置と外部装置との間でネットワークアドレスが異なる場合のみならず、外部装置が通信装置のIPアドレスをフィルタリングしている場合を含む。
(3)上記の実施例では、判断部52は、PINGパケットP1の応答パケットを受信することを監視することによって、PC80とのユニキャスト通信を実行可能であるのか否かを判断する。即ち、一般的に言うと、判断部は、第1の信号の応答信号を受信することを監視することによって、通信装置がユニキャスト通信を外部装置と実行可能であるのか否かを判断する。ただし、判断部は、外部装置のIPアドレス及びサブネットマスクを取得可能である場合には、外部装置のIPアドレス及びサブネットマスクを用いて、外部装置のIPアドレスのネットワークアドレス部の値を特定してもよい。これに代えて、判断部は、通信装置のIPアドレス及びサブネットマスクを用いて、外部装置のIPアドレスのネットワークアドレス部の値を推定してもよい。そして、判断部は、特定済み又は推定済みのネットワークアドレス部の値を用いて、通信装置と外部装置との間でIPアドレスのネットワークアドレス部の値が同じであるのか否かを判断することによって、通信装置がユニキャスト通信を外部装置と実行可能であるのか否かを判断してもよい。即ち、一般的に言うと、「ユニキャスト通信を外部装置と実行可能であるのか否かを判断する」は、第1の信号(例えばPINGパケットP1)を送信して判断する場合も、第1の信号(例えばPINGパケットP1)を送信せずに判断する場合も含む。
(4)上記の実施例では、プリンタ10のIPアドレスが変更される場合に、プリンタ10が変更後のIPアドレスを利用し続けることを想定している。しかしながら、プリンタ10は、変更後のIPアドレスを一時的に利用してもよい。例えば、プリンタ10は、PC80から印刷データを受信して印刷処理を実行すると、プリンタ10のIPアドレスを、変更前のIPアドレスに戻してもよい。一般的に言うと、通信装置は、第2のIPアドレスを永続的に利用してもよいし、第2のIPアドレスを一時的に利用してもよい。
(5)上記の実施例では、CPU22がプログラムに従った処理を実行することによって、各部50〜64の機能が実現される。ただし、各部50〜64のうちの少なくとも1つは、論理回路等のハードウェアによって実現されてもよい。
また、本明細書または図面に説明した技術要素は、単独であるいは各種の組合せによって技術的有用性を発揮するものであり、出願時請求項記載の組合せに限定されるものではない。また、本明細書または図面に例示した技術は複数目的を同時に達成するものであり、そのうちの一つの目的を達成すること自体で技術的有用性を持つものである。
2:通信システム、10:プリンタ、80:PC、90:DHCPサーバ、NP:名前解決パケット、P1,P2:PINGパケット、R1,R2:応答パケット、PD:印刷データ

Claims (12)

  1. ローカルエリアネットワークを介して、特定のIPアドレスを有する外部装置と通信する通信装置であって、
    前記外部装置からブロードキャスト通信によって送信される特定の信号であって、前記特定のIPアドレスを含む前記特定の信号を受信する受信部と、
    前記特定の信号が受信される場合に、前記通信装置が、前記通信装置自身の現在のIPアドレスである第1のIPアドレスと、前記特定の信号に含まれる前記特定のIPアドレスと、を用いたユニキャスト通信を、前記外部装置と実行可能であるのか否かを判断する判断部と、
    前記通信装置が前記ユニキャスト通信を前記外部装置と実行不可能であると判断される特定の場合に、前記通信装置のIPアドレスを、前記第1のIPアドレスから、前記第1のIPアドレスと異なる第2のIPアドレスに変更する変更部と、
    を備える通信装置。
  2. 前記変更部は、ユーザからの指示を受けることなく、前記通信装置の前記IPアドレスを、前記第1のIPアドレスから前記第2のIPアドレスに変更する、請求項1に記載の通信装置。
  3. 前記ローカルエリアネットワークに接続される各デバイスにIPアドレスを割り当てるIPアドレス割当サーバから、前記第2のIPアドレスを取得する取得部をさらに備え、
    前記変更部は、前記特定の場合に、前記通信装置の前記IPアドレスを、前記第1のIPアドレスから、取得済みの前記第2のIPアドレスに変更する、請求項2に記載の通信装置。
  4. 前記特定のIPアドレスの値が、IPアドレスを生成するための所定のアルゴリズムによって生成され得るIPアドレスの値の範囲に含まれる場合に、前記所定のアルゴリズムを用いて、前記第2のIPアドレスを生成する第1の生成部をさらに備え、
    前記変更部は、前記特定の場合に、前記通信装置の前記IPアドレスを、前記第1のIPアドレスから、生成済みの前記第2のIPアドレスに変更する、請求項2に記載の通信装置。
  5. 前記特定のIPアドレスの全部の値のうちの一部を変更することによって、前記特定のIPアドレスから前記第2のIPアドレスを生成する第2の生成部をさらに備え、
    前記変更部は、前記特定の場合に、前記通信装置の前記IPアドレスを、前記第1のIPアドレスから、生成済みの前記第2のIPアドレスに変更する、請求項2に記載の通信装置。
  6. 前記通信装置の過去のIPアドレスである第3のIPアドレスを得るために利用されたIPアドレス設定手法を示す手法情報を格納するための手法メモリをさらに備え、
    前記第3のIPアドレスは、前記外部装置とのユニキャスト通信を実行可能であったIPアドレスであり、
    前記変更部は、前記特定の場合に、前記通信装置の前記IPアドレスを、前記第1のIPアドレスから、前記手法メモリ内の前記手法情報が示す前記IPアドレス設定手法を利用して得られる前記第2のIPアドレスに変更する、請求項2に記載の通信装置。
  7. 前記通信装置の過去のIPアドレスである前記第2のIPアドレスを格納するためのアドレスメモリをさらに備え、
    前記第2のIPアドレスは、前記外部装置とのユニキャスト通信を実行可能であったIPアドレスであり、
    前記変更部は、前記特定の場合に、前記通信装置の前記IPアドレスを、前記第1のIPアドレスから、前記アドレスメモリ内の前記第2のIPアドレスに変更する、請求項2に記載の通信装置。
  8. 前記第2のIPアドレスが、前記ローカルエリアネットワークに接続されている他のデバイスのIPアドレスであるのか否かを確認する確認部をさらに備え、
    前記変更部は、
    前記特定の場合において、前記第2のIPアドレスが前記他のデバイスのIPアドレスでないと確認される場合に、前記通信装置の前記IPアドレスを、前記第1のIPアドレスから、前記第2のIPアドレスに変更し、
    前記特定の場合において、前記第2のIPアドレスが前記他のデバイスのIPアドレスであると確認される場合に、前記通信装置の前記IPアドレスを、前記第1のIPアドレスから、前記第1及び第2のIPアドレスと異なるIPアドレスに変更する、請求項1,2及び5から7のいずれか一項に記載の通信装置。
  9. 前記判断部は、
    前記特定のIPアドレスが送信先として含まれる第1の信号であって、前記第1のIPアドレスが送信元として含まれる前記第1の信号を送信して、前記第1の信号の応答信号を受信した場合に、前記通信装置が前記ユニキャスト通信を前記外部装置と実行可能であると判断し、
    前記第1の信号を送信して、前記第1の信号の前記応答信号を受信しなかった場合に、前記通信装置が前記ユニキャスト通信を前記外部装置と実行不可能であると判断する、請求項1から8のいずれか一項に記載の通信装置。
  10. 前記判断部は、
    前記第1のIPアドレスのネットワークアドレス部の値と、前記特定のIPアドレスのネットワークアドレス部の値と、が一致する場合に、前記通信装置が前記ユニキャスト通信を前記外部装置と実行可能であると判断し、
    前記第1のIPアドレスの前記ネットワークアドレス部の前記値と、前記特定のIPアドレスの前記ネットワークアドレス部の前記値と、が一致しない場合に、前記通信装置が前記ユニキャスト通信を前記外部装置と実行不可能であると判断する、請求項1から9のいずれか一項に記載の通信装置。
  11. 前記通信装置の前記IPアドレスが、前記第1のIPアドレスから前記第2のIPアドレスに変更された後に、前記特定のIPアドレスが送信先として含まれる第2の信号であって、前記第2のIPアドレスが送信元として含まれる前記第2の信号を送信する送信部をさらに備える、請求項1から10のいずれか一項に記載の通信装置。
  12. ローカルエリアネットワークを介して、特定のIPアドレスを有する外部装置と通信する通信装置のためのコンピュータプログラムであって、
    前記通信装置に搭載されるコンピュータに、
    前記外部装置からブロードキャスト通信によって送信される特定の信号であって、前記特定のIPアドレスを含む前記特定の信号を受信する受信処理と、
    前記特定の信号が受信される場合に、前記通信装置が、前記通信装置自身の現在のIPアドレスである第1のIPアドレスと、前記特定の信号に含まれる前記特定のIPアドレスと、を用いたユニキャスト通信を、前記外部装置と実行可能であるのか否かを判断する判断処理と、
    前記通信装置が前記ユニキャスト通信を前記外部装置と実行不可能であると判断される特定の場合に、前記通信装置のIPアドレスを、前記第1のIPアドレスから、前記第1のIPアドレスと異なる第2のIPアドレスに変更する変更処理と、
    を実行させるコンピュータプログラム。
JP2011015910A 2011-01-28 2011-01-28 通信装置 Active JP5527233B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011015910A JP5527233B2 (ja) 2011-01-28 2011-01-28 通信装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011015910A JP5527233B2 (ja) 2011-01-28 2011-01-28 通信装置

Publications (2)

Publication Number Publication Date
JP2012156910A true JP2012156910A (ja) 2012-08-16
JP5527233B2 JP5527233B2 (ja) 2014-06-18

Family

ID=46838150

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011015910A Active JP5527233B2 (ja) 2011-01-28 2011-01-28 通信装置

Country Status (1)

Country Link
JP (1) JP5527233B2 (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014060570A (ja) * 2012-09-18 2014-04-03 Sanken Electric Co Ltd 情報通信方法および情報通信システム
JP2016005092A (ja) * 2014-06-16 2016-01-12 三菱電機ビルテクノサービス株式会社 通信アドレス管理システム、ビル管理システム及び通信アドレス管理プログラム
JP2019205058A (ja) * 2018-05-23 2019-11-28 コニカミノルタ株式会社 画像処理装置、ネットワーク接続方法およびネットワーク接続プログラム
CN112187964A (zh) * 2020-08-31 2021-01-05 北京三快在线科技有限公司 Ip地址修改方法、装置、电子设备和计算机可读介质
KR102298731B1 (ko) * 2021-03-24 2021-09-06 퍼시픽 센츄리 주식회사 무선통신장치 및 그 장치의 구동방법

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003046519A (ja) * 2001-08-03 2003-02-14 Fujitsu Ltd アドレス自動設定方法
JP2006015730A (ja) * 2004-05-31 2006-01-19 Seiko Epson Corp プリンタ及びプリンタシステム
JP2008236543A (ja) * 2007-03-22 2008-10-02 Hitachi Ltd 通信経路制御方法、通信経路制御プログラムおよび通信装置
JP2009266202A (ja) * 2008-04-04 2009-11-12 Canon Inc セッション管理システム、その制御方法、及びクライアント端末

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003046519A (ja) * 2001-08-03 2003-02-14 Fujitsu Ltd アドレス自動設定方法
JP2006015730A (ja) * 2004-05-31 2006-01-19 Seiko Epson Corp プリンタ及びプリンタシステム
JP2008236543A (ja) * 2007-03-22 2008-10-02 Hitachi Ltd 通信経路制御方法、通信経路制御プログラムおよび通信装置
JP2009266202A (ja) * 2008-04-04 2009-11-12 Canon Inc セッション管理システム、その制御方法、及びクライアント端末

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014060570A (ja) * 2012-09-18 2014-04-03 Sanken Electric Co Ltd 情報通信方法および情報通信システム
JP2016005092A (ja) * 2014-06-16 2016-01-12 三菱電機ビルテクノサービス株式会社 通信アドレス管理システム、ビル管理システム及び通信アドレス管理プログラム
JP2019205058A (ja) * 2018-05-23 2019-11-28 コニカミノルタ株式会社 画像処理装置、ネットワーク接続方法およびネットワーク接続プログラム
JP7024602B2 (ja) 2018-05-23 2022-02-24 コニカミノルタ株式会社 画像処理装置、ネットワーク接続方法およびネットワーク接続プログラム
CN112187964A (zh) * 2020-08-31 2021-01-05 北京三快在线科技有限公司 Ip地址修改方法、装置、电子设备和计算机可读介质
KR102298731B1 (ko) * 2021-03-24 2021-09-06 퍼시픽 센츄리 주식회사 무선통신장치 및 그 장치의 구동방법

Also Published As

Publication number Publication date
JP5527233B2 (ja) 2014-06-18

Similar Documents

Publication Publication Date Title
JP5093277B2 (ja) 通信装置及びコンピュータプログラム
JP5527233B2 (ja) 通信装置
EP2888863B1 (en) Method and apparatus for configuring dhcp client
US7912958B2 (en) Method and apparatus for automatic IP allocation bootstrapping of embedded network management cards used in networked uninterruptible power supplies and other supported devices
JP5820106B2 (ja) 通信装置、および、その制御方法
JP2006246356A (ja) データ受信システム及びそのデータ出力方法、受信装置、並びに制御プログラム
JP5882855B2 (ja) ホストデバイスを保護するための方法、システム及びプログラム
JP4775437B2 (ja) ソフトウェアをインストールするためのコンピュータプログラム
US8516141B2 (en) Method and system for modifying and/or changing a MAC ID utilizing an IPv6 network connection
JP6037446B2 (ja) ネットワーク装置およびネットワーク装置の制御方法
JP5338597B2 (ja) Ipアドレス決定装置、端末装置、及び、コンピュータプログラム
US20140122680A1 (en) Information processing apparatus and method, and non-transitory computer readable medium
JP6088959B2 (ja) 電子機器
US10574837B2 (en) Information processing apparatus for data communication with external apparatus and control method for the same, and storage medium
JP6119187B2 (ja) 管理装置、アドレス情報管理プログラム及びアドレス情報管理システム
JP2012203660A (ja) 情報提供サーバ
KR100977399B1 (ko) 동적 아이피 주소 할당시 네트워크 부하 감소를 위한 dhcp 패킷 처리 방법 및 장치
JP2015195533A (ja) 通信装置
JP6460346B2 (ja) 電子機器および電力制御プログラム
US9525596B2 (en) Information processing apparatus and method, and non-transitory computer readable medium
US8953614B2 (en) Data communication system and address setting method for setting an IP address
JP5454463B2 (ja) 通信装置
JP5533735B2 (ja) 通信装置
JP2015195532A (ja) 通信装置
KR20140130855A (ko) 프린터와 네트워크로 연결된 컴퓨팅 디바이스 및 그 제어 방법

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130325

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20131211

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20131217

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140213

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20140318

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140331

R150 Certificate of patent or registration of utility model

Ref document number: 5527233

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150