説明

通信装置、および通信装置のアドレス取得方法

【課題】PPPoEサーバが動的IPサービスを提供している場合において、PPPoEクライアントの再起動後にインターネット経由でこのPPPoEクライアントにアクセスできない事態が発生するのを防止する。
【解決手段】ルータ1は、PPPoEクライアント機能を有しており、異常発生等による再起動後に、PPPoEサーバとして機能するISP2から受信した生存確認パケットに基づいて、再起動前のPPPoEセッションに関する情報を復元するとともに、この生存確認パケットに対して生存応答パケットを返信することにより、ISP2に再起動前のPPPoEセッションを維持させる。また、ルータ1は、再起動前のPPPoEセッションのセッションIDを伴うアドレス要求パケットをISP2に送信して、ISP2から、再起動前に割り当てられていたIPアドレスを取得する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、通信装置に関し、特にPPPoEクライアント機能を有する通信装置のアドレス取得技術に関する。
【背景技術】
【0002】
PPPoE(Point−to−Point Protocol over Ethernet)は、Ethernet(登録商標)を利用してPPP(Point−to−Point Protocol)の機能を実現するためのプロトコルである。ブロードバンドルータ等のPPPoEクライアントは、Ethernetフレームを使ってISP(Internet Service Provider)等のPPPoEサーバとPPPoEパケットをやり取りする。これにより、PPPoEクライアントは、ADSL、CATV、FTTH等の地域IP網を介してPPPoEサーバとの間にPPPoEセッションを確立し、このPPPoEセッションを介してインターネットに接続する。
【0003】
ここで、PPPoEクライアントは、通常、セッションID等のPPPoEセッションに関する情報を主記憶に記憶する。主記憶には一般に揮発性メモリが用いられるため、PPPoEクライアントが再起動されると、主記憶に保持していたPPPoEセッションに関する情報が失われてしまう。このため、PPPoEクライアントは、再起動後にPPPoEセッションを新たに確立する必要がある。しかし、PPPoEサーバは、PPPoEクライアントに定期的に送信する生存確認パケットに対して、PPPoEクライアントからの生存応答パケットを所定回数連続して受信しなかった場合に、PPPoEクライアントとの間に確立しているPPPoEセッションを解放する。このため、所定時間を経過するまで、再起動前のPPPoEセッションが維持されてしまい、新たなPPPoEセッションを開始するのに長時間を要する。
【0004】
この問題を解決するために、特許文献1に記載のPPPoEクライアントは、再起動後にPPPoEサーバから生存確認パケットを受信したならば、この生存確認パケットで指定されているセッションIDを伴う切断要求パケットをPPPoEサーバに送信して、再起動前のPPPoEセッションを強制的に切断する。これにより、新たなPPPoEセッションを迅速に開始できるようにしている。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2007−116346号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
ところで、PPPoEサーバが動的(非固定)IPサービスを提供している場合、PPPoEクライアントは、再起動後、新たなPPPoEセッションを開始するために、PPPoEサーバに接続要求パケットを送信して、PPPoEサーバからIPアドレスを取得する。このIPアドレスが、再起動前のPPPoEセッションのときに取得したIPアドレスと異なることがある。
【0007】
PPPoEクライアントが取得したIPアドレスは、自身のドメイン名と対応付けられてDNS(Domain Name System)サーバに登録されるが、DNSサーバは、PPPoEクライアントから再起動後の新たなIPアドレスが通知されるまでは、PPPoEクライアントのドメイン名の指定を伴う問合せに対して、PPPoEクライアントの再起動前のIPアドレスを通知するため、インターネット経由でPPPoEクライアントにアクセスできないという問題が生じる。
【0008】
本発明は上記事情に鑑みてなされたものであり、本発明の目的は、PPPoEサーバが動的IPサービスを提供している場合において、PPPoEクライアントの再起動後にインターネット経由でこのPPPoEクライアントにアクセスできない事態が発生するのを防止する技術を提供することにある。
【課題を解決するための手段】
【0009】
上記課題を解決するために、本発明において、PPPoEクライアント機能を有する通信装置は、再起動後にPPPoEサーバから受信した生存確認パケットに基づいて、再起動前のPPPoEセッションに関する情報を復元するとともに、この生存確認パケットに対して生存応答パケットを返信することにより、PPPoEサーバに再起動前のPPPoEセッションを維持させる。それから、再起動前のPPPoEセッションのセッションIDを伴うアドレス要求パケットをPPPoEサーバに送信して、PPPoEサーバから、再起動前に割り当てられていたIPアドレスを取得する。
【0010】
例えば、本発明は、PPPoEクライアント機能を有する通信装置であって、
再起動後にPPPoEサーバから受信した生存確認パケットに基づいて、再起動前のPPPoEセッションに関する情報を復元する復元手段と、
前記復元手段により復元された前記再起動前のPPPoEセッションのセッションIDを伴うアドレス要求パケットを前記PPPoEサーバに送信して、前記PPPoEサーバから再起動前のIPアドレスを取得するIPアドレス取得手段と、を有する。
【発明の効果】
【0011】
本発明によれば、PPPoEサーバが動的IPサービスを提供している場合において、PPPoEクライアントの再起動後にインターネット経由でこのPPPoEクライアントにアクセスできない事態が発生するのを防止することができる。
【図面の簡単な説明】
【0012】
【図1】図1は、本発明の一実施の形態に係る通信システムの概略図である。
【図2】図2は、本発明の一実施の形態に係る通信システムにおいて、ルータ1がISP2とPPPoEセッションを確立中に再起動した場合における動作シーケンスの一例を説明するための図である。
【図3】図3は、ルータ1の概略機能構成図である。
【図4】図4(A)は、PPPoEセッション情報記憶部15の登録内容例を模式的に表した図であり、図4(B)は、アカウント情報記憶部16の登録内容例を模式的に表した図であり、そして、図4(C)は、受信時刻記憶部17の登録内容例を模式的に表した図である。
【図5】図5は、ルータ1の動作フローを説明するため図である。
【発明を実施するための形態】
【0013】
以下に、本発明の一実施の形態について説明する。
【0014】
図1は、本実施の形態に係る通信システムの概略図である。
【0015】
図示するように、本実施の形態に係る通信システムは、LAN9およびADSL、CATV、FTTH等の地域IP網7に接続されたルータ1と、地域IP網7およびインターネット8に接続されたISP2と、LAN9に接続されたWebサーバ3およびファイルサーバ4と、インターネット8に接続されたDNSサーバ5およびインターネット端末6と、を有する。
【0016】
ルータ1は、マルチセッション接続対応のPPPoEクライアント機能を有しており、地域IP網7を介して、PPPoEサーバとして機能するISP2との間にPPPoEセッションを確立し、このPPPoEセッション経由でインターネット8に接続する。
【0017】
ISP2は、上述したように、PPPoEサーバ機能を有しており、ルータ1との間にPPPoEセッションを確立している期間中、PPPoEセッションの生存確認パケットを定期的(例えば60秒毎)にルータ1に送信する。そして、ルータ1からの生存応答パケットを所定回数(例えば5回)連続して受信しなかったならば、このPPPoEセッションを切断する。また、ISP2は、動的IPサービスを提供しており、ルータ1との間にPPPoEセッションが確立される毎に、このPPPoEセッションで使用するIPアドレスをルータ1に割り当てる。
【0018】
DNSサーバ5には、ルータ1のIPアドレスがドメイン名に対応付けられて登録される。そして、DNSサーバ5は、インターネット端末6からのルータ1のドメイン名を伴う問合せに対して、このドメイン名に対応付けられたIPアドレスを通知する。インターネット端末6は、DNSサーバ5から通知されたIPアドレスを用いて、インターネット8経由でルータ1にアクセスすることができる。これにより、LAN9を介してルータ1の配下のWebサーバ3、ファイルサーバ4にアクセスすることが可能となる。
【0019】
また、本実施の形態に係る通信システムにおいて、ルータ1は、異常発生等により再起動した場合に、再起動後にISP2から受信した生存確認パケットに基づいて、再起動前のPPPoEセッションに関する情報(以下、PPPoEセッション情報)を復元する。また、この生存確認パケットに対して生存応答パケットを返信することにより、ISP2に再起動前のPPPoEセッションを維持させる。それから、再起動前のPPPoEセッションのセッションIDを伴うアドレス要求パケットをISP2に送信して、ISP2から、再起動前のPPPoEセッションに対して割り当てられていたIPアドレスを取得する。
【0020】
図2は、本実施の形態に係る通信システムにおいて、ルータ1がISP2との間でPPPoEセッションを確立中に再起動した場合における動作シーケンスの一例を説明するための図である。ここで、ルータ1は、このPPPoEセッションのためにISP2から割り当てられたIPアドレスを、自身のドメイン名に対応付けてDNSサーバ5に登録済みであるとする。
【0021】
ISP2は、ルータ1との間にPPPoEセッションが確立されている間(S10)、所定のインターバル時間t毎に、ルータ1に対してPPPoEセッションの生存確認パケットを送信する(S11−1〜S11−4)。これに対して、ルータ1は、生存確認パケットに含まれているPPPoEセッション情報が主記憶等で管理されているならば、このPPPoEセッションの生存応答パケットをISP2に返信する(S12−1、S12−3、S12−4)。
【0022】
ここで、ルータ1に異常が発生して(S13)、ルータ1が再起動されたものとする(S14)。ルータ1は、再起動中においては、主記憶等で管理していたPPPoEセッション情報がクリアされているため、ISP2から受信した生存確認パケットに対して(S11−2)、生存応答パケットを返信しない。
【0023】
再起動の完了後、ルータ1は、ISP2から生存確認パケットを受信すると(S11−3)、この生存確認パケットに基づいて、再起動前のPPPoEセッション情報を復元して主記憶等で管理する(S15)。また、この生存確認パケットに対して生存応答パケットをISP2に返信する(S12−3)。これにより、ISP2は、ルータ1の再起動前にルータ1との間に確立されたPPPoEセッションを維持する。
【0024】
つぎに、ルータ1は、復元したPPPoEセッション情報に含まれているセッションIDを伴うアドレス要求パケットをISP2に送信して(S16)、ISP2からIPアドレスを取得する(S17、S18)。これにより、ルータ1は、維持されたPPPoEセッションに使用するIPアドレスとして、再起動前と同じIPアドレスを使用する。
【0025】
その後、インターネット端末6が、DNSサーバ5に対して、ルータ1のドメイン名を伴う問合せを行うと(S20)、DNSサーバ5は、このドメイン名に対応付けられたIPアドレスをインターネット端末6に通知する(S21)。ここで、このIPアドレスは、ルータ1が再起動前にDNSサーバ5に登録したものであるが、ルータ1の再起動後も同じIPアドレスがルータ1に割り当てられているため、インターネット端末6は、このIPアドレスを用いてルータ1にアクセスすることができる(S22)。そして、ルータ1の配下のWebサーバ3、ファイルサーバ4にアクセスすることが可能となる。
【0026】
なお、マルチセッション接続によりルータ1およびISP2間にPPPoEセッションが複数確立されている場合は、PPPoEセッション毎に、図2に示す動作シーケンスが実施される。
【0027】
つぎに、本実施の形態に係る通信システムを構成するルータ1について説明する。なお、ルータ1以外の本通信システムを構成する各装置2〜6には一般的な既存の装置を利用することができるため、それらについての詳細な説明を省略する。
【0028】
図3は、ルータ1の概略機能構成図である。
【0029】
図示するように、ルータ1は、LANIF部10と、地域IP網IF部11と、ルーティング処理部12と、PPPoEクライアント処理部13と、生存確認抽出部14と、PPPoEセッション情報記憶部15と、アカウント情報記憶部16と、受信時刻記憶部17と、受信時刻検出部18と、PPPoEセッション情報復元部19と、を有する。
【0030】
LANIF部10は、LAN9を介してWebサーバ3およびファイルサーバ4と通信を行うためのインターフェースである。
【0031】
地域IP網IF部11は、地域IP網7を介してISP2と通信を行うためのインターフェースである。
【0032】
ルーティング処理部12は、PPPoEパケット以外のパケットに対するルーティング処理を行う。
【0033】
PPPoEクライアント処理部13は、PPPoEクライアントに必要な処理を行って、PPPoEサーバとして機能するISP2とPPPoEパケットをやり取りする。
【0034】
生存確認抽出部14は、ISP2から受信したPPPoEパケットのなかから生存確認パケットを抽出する。
【0035】
PPPoEセッション情報記憶部15には、ISP2との間に確立中のPPPoEセッションのPPPoEセッション情報が記憶される。なお、PPPoEクライアント処理部13は、ISP2との間にPPPoEセッションが確立されたならば、このPPPoEセッションのPPPoEセッション情報をPPPoEセッション情報記憶部15に記憶し、PPPoEセッションが解放されたならば、このPPPoEセッションのPPPoEセッション情報をPPPoEセッション情報記憶部15から削除する。これにより、確立中のPPPoEセッションのPPPoEセッション情報を管理する。
【0036】
図4(A)は、PPPoEセッション情報記憶部15の登録内容例を模式的に表した図である。
【0037】
図示するように、PPPoEセッション情報記憶部15には、ISP2との間に確立中のPPPoEセッション毎にレコード150が記憶される。レコード150は、PPPoEセッションのセッションIDを登録するフィールド151と、PPPoEサーバ(ここではISP2)のMACアドレス(以下、PPPoEサーバMACアドレス)を記憶するフィールド152と、PPPoEクライアントのMACアドレス(このPPPoEセッションのためにルータ1が使用するMACアドレス:以下、PPPoEクライアントMACアドレス)を登録するフィールド153と、このPPPoEセッションを確立するためにPPPoEサーバに要求されるアカウント情報(アカウント名、パスワード等)を登録するフィールド154と、PPPoEサーバがこのPPPoEセッションに対して提供する接続サービスのサービス種別(常時接続か、それともオンデマンド接続か)を登録するフィールド155と、を有する。
【0038】
なお、PPPoEセッション情報記憶部15は、一般に揮発性メモリが用いられる主記憶上に構築される。このため、ルータ1が再起動した場合には、PPPoEセッション情報記憶部15の登録内容はクリアされる。
【0039】
アカウント情報記憶部16には、ルータ1がISP2との間にPPPoEセッションを確立するために使用するPPPoEクライアントMACアドレス、アカウント情報、およびこのPPPoEセッションに対して提供される接続サービスのサービス種別が登録されている。
【0040】
図4(B)は、アカウント情報記憶部16の登録内容例を模式的に表した図である。
【0041】
図示するように、アカウント情報記憶部16には、ルータ1がISP2との間にPPPoEセッションを確立するために使用するPPPoEクライアントMACアドレス毎にレコード160が記憶されている。レコード160は、PPPoEクライアントMACアドレスを登録するフィールド161と、このPPPoEセッションを確立するためにPPPoEサーバに要求されるアカウント情報(アカウント名、パスワード等)を登録するフィールド162と、PPPoEサーバがこのPPPoEセッションに対して提供する接続サービスのサービス種別(常時接続か、それともオンデマンド接続か)を登録するフィールド163と、を有する。
【0042】
なお、アカウント情報記憶部16は、一般にHDDあるいは不揮発性メモリが用いられる補助記憶装置上に構築される。このため、ルータ1が再起動した場合でも、アカウント情報記憶部16の登録内容は維持される。
【0043】
受信時刻記憶部17には、ISP2との間に確立中のPPPoEセッションを介して受信した最新のデータパケットの受信時刻が記憶される。
【0044】
図4(C)は、受信時刻記憶部17の登録内容例を模式的に表した図である。
【0045】
図示するように、受信時刻記憶部17は、ISP2との間に確立中のPPPoEセッション毎にレコード170が記憶される。レコード170は、PPPoEセッションのセッションIDを登録するフィールド171と、このPPPoEセッションを介して受信した最新のデータパケットの受信時刻(最新パケット受信時刻)を登録するフィールド172と、を有する。
【0046】
なお、受信時刻記憶部17は、一般にHDDあるいは不揮発性メモリが用いられる補助記憶装置上に構築される。このため、ルータ1が再起動した場合にも、受信時刻記憶部17の登録内容は維持される。
【0047】
受信時刻検出部18は、ISP2との間に確立中のPPPoEセッション毎に、ルーティング処理部12を流れるデータパケットを監視する。そして、データパケットがルーティング処理部12を流れる毎に、このデータパケットを搬送するPPPoEセッションのセッションIDに対応付けられて受信時刻記憶部17に記憶されている最新パケット受信時刻を更新する。
【0048】
PPPoEセッション情報復元部19は、ルータ1の再起動後にISP2から受信した生存確認パケットに基づいて、再起動前のPPPoEセッション情報を復元する。そして、復元したPPPoEセッション情報をPPPoEセッション情報記憶部15に記憶する。但し、生存確認パケットが対象とするPPPoEセッションに対して提供される接続サービスがオンデマンド接続である場合、PPPoEセッション情報復元部19は、このPPPoEセッションを介してデータパケットを最後に受信してからの経過時間が所定時間を超えているならば、PPPoEセッションの情報を復元しない。
【0049】
図5は、ルータ1の動作フローを説明するための図である。
【0050】
まず、LANIF部10は、LAN9からパケットを受信するのを待つ。同様に、地域IP網IF部11は、地域IP網7からパケットを受信するのを待つ(S200)。そして、受信パケットが、LAN9から受信したパケット、あるいは地域IP網7から受信したPPPoEパケット以外のパケットである場合(S201でNO)、LANIF部10あるいは地域IP網IF部11は、受信パケットをルーティング処理部12に渡す。これを受けて、ルーティング処理部12は、受信パケットのルーティング処理を行って、受信パケットをLANIF部10あるいは地域IP網IF部11から出力する(S202)。
【0051】
このとき、受信時刻検出部18は、PPPoEセッション情報記憶部15を参照して、受信パケットがISP2との間に確立中のPPPoEセッション経由でやり取りされたものであるか否かを判断する(S203)。
【0052】
受信パケットがISP2との間に確立中のPPPoEセッション経由でやり取りされたものでないならば(S203でNO)、S200に戻って新たなパケットの受信を待つ。
【0053】
一方、受信パケットがISP2との間に確立中のPPPoEセッション経由でやり取りされたものであるならば(S203でYES)、受信時刻検出部18は、このPPPoEセッションのセッションIDがフィールド171に記憶されているレコード170を受信時刻記憶部17から検索し、検索したレコード170のフィールド172に登録されている最新パケット受信時刻を現在時刻に更新する(S204)。なお、受信時刻記憶部17にそのようなレコード170が記憶されていないならば、受信時刻記憶部17に新たなレコード170を追加し、このレコード170のフィールド171、172に、それぞれ、受信パケットが利用するPPPoEセッションのセッションID、現在時刻を登録する。それから、S200に戻って、新たなパケットの受信を待つ。
【0054】
また、受信パケットが、地域IP網7から受信したPPPoEパケットである場合(S201でYES)、地域IP網IF部11は、このPPPoEパケットを生存確認抽出部14に渡す。これを受けて、生存確認抽出部14は、PPPoEパケットが生存確認パケットであるか否かを判断する(S205)。
【0055】
PPPoEパケットが生存確認パケットでない場合(S205でNO)、生存確認抽出部14は、このPPPoEパケットをPPPoEクライアント処理部13に渡す。これを受けて、PPPoEクライアント処理部13は、PPPoEパケットに応じたPPPoEクライアントの処理を行う(S206)。その後、S200に戻って、新たなパケットの受信を待つ。
【0056】
一方、PPPoEパケットが生存確認パケットである場合(S205でYES)、生存確認抽出部14は、この生存確認パケットをPPPoEセッション情報復元部19に渡す。これを受けて、PPPoEセッション情報復元部19は、この生存確認パケットが対象とするPPPoEセッションのPPPoEセッション情報がPPPoEセッション情報記憶部15に記憶されているか否かを判断する(S207)。具体的には、生存確認パケットに含まれているセッションIDがフィールド151に登録されているレコード150を、PPPoEセッション情報記憶部15から検索する。
【0057】
生存確認パケットが対象とするPPPoEセッションのPPPoEセッション情報がPPPoEセッション情報記憶部15に記憶されている場合(S207でYES)、PPPoEセッション情報復元部19は、この生存確認パケットをPPPoEクライアント処理部13に渡す。これを受けて、PPPoEクライアント処理部13は、生存確認パケットが対象とするPPPoEセッションのPPPoEセッション情報がPPPoEセッション情報記憶部15に記憶されていることを確認して、ISP2に生存応答パケットを返信する(S208)。その後、S200に戻って、新たなパケットの受信を待つ。
【0058】
一方、生存確認パケットが対象とするPPPoEセッションのPPPoEセッション情報がPPPoEセッション情報記憶部15に記憶されていない場合(S207でNO)、PPPoEセッション情報復元部19は、この生存確認パケットからPPPoEクライアントMACアドレスを抽出する(S209)。それから、PPPoEセッション情報復元部19は、このPPPoEクライアントMACアドレスに対応するアカウント情報、サービス種別がアカウント情報記憶部16に記憶されているか否かを判断する(S210)。具体的には、このPPPoEクライアントMACアドレスがフィールド161に登録されているレコード160をアカウント情報記憶部16から検索する。
【0059】
生存確認パケットから抽出したPPPoEクライアントMACアドレスに対応するアカウント情報、サービス種別がアカウント情報記憶部16に記憶されていない場合(S210でNO)、PPPoEセッション情報復元部19は、この生存確認パケットがルータ1のPPPoEセッションに対するものではないものと判断し、この生存確認パケットを破棄する(S211)。その後、S200に戻って、新たなパケットの受信を待つ。
【0060】
一方、生存確認パケットから抽出したPPPoEクライアントMACアドレスに対応するアカウント情報、サービス種別がアカウント情報記憶部16に記憶されている場合(S210でYES)、PPPoEセッション情報復元部19は、このPPPoEクライアントMACアドレスに対応するサービス種別を判断する(S212)。サービス種別がオンデマンド接続である場合(S212でYES)、PPPoEセッション情報復元部19は、受信時刻記憶部17を参照し、生存確認パケットが対象とするPPPoEセッションの最新パケット受信時刻から所定時間(オンデマンド接続されたPPPoEセッションの自動切断基準となる無通信時間)を経過しているか否かを判断する(S213)。具体的には、生存確認パケットに含まれているセッションIDがフィールド171に登録されているレコード170を受信時刻記憶部17から検索し、このレコード170のフィールド172に登録されている最新パケット受信時刻からの経過時間が所定時間以上であるか否かを判断する。
【0061】
生存確認パケットが対象とするPPPoEセッションの最新パケット受信時刻から所定時間を経過した場合(S213でYES)、PPPoEセッション情報復元部19は、この生存確認パケットが対象とするオンデマンド接続されたPPPoEセッションが既に自動切断されているものと判断し、この生存確認パケットを破棄する(S211)。その後、S200に戻って新たなパケットの受信を待つ。
【0062】
一方、生存確認パケットから抽出したPPPoEクライアントMACアドレスに対応するサービス種別が常時接続である場合(S212でNO)、あるいは生存確認パケットから抽出したPPPoEクライアントMACアドレスに対応するサービス種別がオンデマンド接続であり(S212でYES)、かつこの生存確認パケットが対象とするPPPoEセッションの最新パケット受信時刻から所定時間を経過していない場合(S213でNO)、PPPoEセッション情報復元部19は、この生存確認パケットが対象とするPPPoEセッションが確立中であるにもかかわらず、ルータ1の異常発生等による再起動により、PPPoEセッション情報がPPPoEセッション情報記憶部15からクリアされたものと判断する。そして、このPPPoEセッション情報を復元してPPPoEセッション情報記憶部15に記憶する(S214)。
【0063】
具体的には、PPPoEセッション情報記憶部15に新たなレコード150を追加し、このレコード150のフィールド151〜153に、生存確認パケットに含まれているセッションID、PPPoEサーバMACアドレス、PPPoEクライアントMACアドレスを登録する。また、このレコード150のフィールド154、155に、生存確認パケットから抽出したPPPoEクライアントMACアドレスに対応付けられてアカウント情報記憶部16に記憶されているアカウント情報、サービス種別を登録する。
【0064】
それから、PPPoEセッション情報復元部19は、この生存確認パケットをPPPoEクライアント処理部13に渡す。これを受けて、PPPoEクライアント処理部13は、生存確認パケットが対象とするPPPoEセッションのPPPoEセッション情報がPPPoEセッション情報記憶部15に記憶されていることを確認して、ISP2に生存応答パケットを返信する(S215)。
【0065】
つぎに、PPPoEセッション情報復元部19は、PPPoEクライアント処理部13に、この生存確認パケットに含まれているセッションIDを通知して、ISP2に対するアドレス要求を指示する。これを受けて、PPPoEクライアント処理部13は、PPPoEセッション情報復元部19から通知されたセッションIDを伴うアドレス要求パケットをISP2に送信して、ISP2からIPアドレスを取得する(S216)。そして、このIPアドレスを、このセッションIDにより特定されるPPPoEセッションで使用するIPアドレスに設定する。
【0066】
以上、本発明の一実施の形態について説明した。
【0067】
本実施の形態において、ルータ1は、再起動後にISP2から受信した生存確認パケットに基づいて、再起動前のPPPoEセッション情報を復元するとともに、この生存確認パケットに対して生存応答パケットを返信することにより、ISP2に再起動前のPPPoEセッションを維持させる。また、再起動前のPPPoEセッションのセッションIDを伴うアドレス要求パケットをISP2に送信して、ISP2から、再起動前に割り当てられていたIPアドレスを取得する。
【0068】
このため、本実施の形態によれば、ISP2が動的IPサービスを提供している場合でも、ルータ1の再起動の前後において、ISP2からルータ1に割り当てられるIPアドレスが同じになるので、ルータ1の再起動後に、DNSサーバ5に登録されているルータ1のIPアドレスを更新しなくても、インターネット端末6がインターネット8経由でルータ1にアクセスできる。
【0069】
また、本実施の形態において、ルータ1は、ISP2との間にPPPoEセッションを確立するために使用するPPPoEクライアントMACアドレス毎に、アカウント情報を予め記憶している。そして、再起動後にISP2から受信した生存確認パケットと、この生存確認パケットに含まれているPPPoEクライアントMACアドレスに対応付けられて記憶されているアカウント情報とに基づいて、このPPPoEクライアントMACアドレスに対応する再起動前のPPPoEセッション情報を復元している。
【0070】
したがって、本実施の形態によれば、ルータ1がマルチセッション接続に対応している場合でも、ルータ1の再起動前に確立中であったPPPoEセッション毎に、ルータ1の再起動後におけるPPPoEセッションの維持およびルータ1の再起動前と同じIPアドレスのルータ1への割当てを実現できる。
【0071】
また、本実施の形態において、ルータ1は、ISP2との間にPPPoEセッションを確立するために使用するPPPoEクライアントMACアドレス毎に、ISP2がこのPPPoEセッションに対して提供する接続サービスのサービス種別(常時接続か、それともオンデマンド接続か)を予め記憶している。また、ISP2との間に確立中のPPPoEセッション毎に、データパケットの最新の受信時刻を計測している。そして、ルータ1は、再起動後にISP2から受信した生存確認パケットに含まれているPPPoEクライアントMACアドレスに対応付けられて記憶されているサービス種別が、オンデマンド接続である場合に、このPPPoEクライアントMACアドレスに対応するPPPoEセッションについて計測されたデータパケットの最新の受信時刻からの経過時間が所定時間を超えている場合、このPPPoEクライアントMACアドレスに対応する再起動前のPPPoEセッション情報を復元しない。
【0072】
したがって、本実施の形態によれば、ルータ1の再起動後に、タイムアウトにより自動切断されたオンデマンド接続のPPPoEセッション情報が復元されてしまうのを防止することができる。このため、常時接続とオンデマンド接続とが混在するようなマルチセッション接続にルータ1を対応させることができる。
【0073】
なお、本発明は上記の実施の形態に限定されるものではなく、その要旨の範囲内で数々の変形が可能である。
【0074】
例えば、上記の実施の形態において、図3に示すルータ1の機能構成は、ASIC(Application Specific Integrated Circuit)、FPGA(Field Programmable Gate Array)などの集積ロジックICによりハード的に実現されるものでもよいし、あるいはDSP(Digital Signal Processor)などの計算機によりソフトウエア的に実現されるものでもよい。または、CPU、揮発性メモリ等の主記憶、HDD、不揮発性メモリ等の補助記憶装置、およびNIC(Network Interface Card)、モデム等の通信インターフェースを備えたPC(Personal Computer)等の汎用コンピュータにおいて、CPUが所定のプログラムを補助記憶装置から主記憶上にロードして実行することで実現されるものでもよい。
【0075】
また、上記の実施の形態では、ルータ1がPPPoEクライアント機能を有する場合を例にとり説明したが、本発明はこれに限定されない。本発明は、PPPoEクライアント機能を有する様々な通信装置に適用可能である。
【符号の説明】
【0076】
1:ルータ、2:ISP、3:Webサーバ、4:ファイルサーバ、5:DNSサーバ、6:インターネット端末、7:地域IP網、8:インターネット、9:LAN、10:LANIF部、11:地域IP網IF部、12:ルーティング処理部、13:PPPoEクライアント処理部、14:生存確認抽出部、15:PPPoEセッション情報記憶部、16:アカウント情報記憶部、17:受信時刻記憶部、18:受信時刻検出部、19:PPPoEセッション情報復元部

【特許請求の範囲】
【請求項1】
PPPoEクライアント機能を有する通信装置であって、
再起動後にPPPoEサーバから受信した生存確認パケットに基づいて、再起動前のPPPoEセッションに関する情報を復元する復元手段と、
前記復元手段により復元された前記再起動前のPPPoEセッションのセッションIDを伴うアドレス要求パケットを前記PPPoEサーバに送信して、前記PPPoEサーバから再起動前のIPアドレスを取得するIPアドレス取得手段と、を有する
ことを特徴とする通信装置。
【請求項2】
請求項1に記載の通信装置であって、
前記PPPoEクライアント機能は、マルチセッション接続に対応しており、
PPPoEセッション毎に、当該PPPoEセッションに割り当てるMACアドレス、およびアカウント情報が記憶されたアカウント情報記憶手段をさらに有し、
前記復元手段は、
再起動後に前記PPPoEサーバから受信した生存確認パケットと、当該生存確認パケットに含まれているPPPoEクライアントのMACアドレスに対応付けられて前記アカウント情報記憶手段に記憶されているアカウント情報とに基づいて、当該MACアドレスに対応する前記再起動前のPPPoEセッションに関する情報を復元する
ことを特徴とする通信装置。
【請求項3】
請求項2に記載の通信装置であって、
PPPoEセッション毎に、データパケットの最新の受信時刻を計測する受信時刻計測手段をさらに有し、
前記アカウント情報記憶手段は、
PPPoEセッションに毎に、当該PPPoEセッションに割り当てられる前記MACアドレスおよび前記アカウント情報に加えて、当該PPPoEセッションに対して提供される接続サービスが、常時接続であるか、それともオンデマンド接続であるかを示すサービス種別を記憶しており、
前記復元手段は、
再起動後に前記PPPoEサーバから受信した生存確認パケットに含まれているPPPoEクライアントのMACアドレスに対応付けられて前記アカウント情報記憶手段に記憶されているサービス種別が、オンデマンド接続である場合に、当該MACアドレスに対応するPPPoEセッションについて前記受信時刻計測手段により計測されたデータパケットの最新の受信時刻からの経過時間が所定時間を超えているならば、当該MACアドレスに対応する前記再起動前のPPPoEセッションに関する情報を復元しない
ことを特徴とする通信装置。
【請求項4】
PPPoEクライアント機能を有する通信装置のアドレス取得方法であって、
再起動後にPPPoEサーバから受信した生存確認パケットに基づいて、再起動前のPPPoEセッションに関する情報を復元し、
前記生存確認パケットに対して生存応答パケットを前記PPPoEサーバに返信することにより、前記PPPoEサーバに前記再起動前のPPPoEセッションを維持させ、
前記再起動前のPPPoEセッションのセッションIDを伴うアドレス要求パケットを前記PPPoEサーバに送信して、前記PPPoEサーバから、再起動前に割り当てられていたIPアドレスを取得する
ことを特徴とする通信装置のアドレス取得方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate


【公開番号】特開2012−80259(P2012−80259A)
【公開日】平成24年4月19日(2012.4.19)
【国際特許分類】
【出願番号】特願2010−222458(P2010−222458)
【出願日】平成22年9月30日(2010.9.30)
【出願人】(000134707)株式会社ナカヨ通信機 (522)
【Fターム(参考)】