[index]
CentreCOM VX811R コマンドリファレンス 1.0.00
PPP/概要・基本設定
- 基本設定
- 物理層のセットアップ
- PPPインターフェースの作成
- 上位層とのインターフェース
- PPPインターフェースの設定変更
- PPPインターフェースの各種オプション
- オンデマンド接続
- PPPリンクの状態監視
- LCP Echoパケット
- その他オプション
- ユーザー認証
- 認証を受けるための設定
- 認証するための設定
- IPアドレスの割り当て
- IPアドレスの割り当てを要求する
- DNSサーバーアドレスの要求
- PPPの状態確認
PPP(Point-to-Point Protocol)は、2点間でさまざまなネットワーク層プロトコルパケットを受け渡すためのデータリンク層プロトコルです。もともとはWANなどのシリアル回線上で使用するために開発されましたが、最近ではxDSLなどのブロードバンドサービスの普及に伴い、Ethernet上などでも利用されています(PPPoE = PPP over Ethernet)。ここでは、PPPの概要と基本設定について説明します。
PPPの基本設定について説明します。
PPPを使用するためには、最初に物理回線のセットアップが必要です。使用できる回線には次のものがあります。物理層のセットアップについては、それぞれ該当する章をご覧ください。
- Ethernet(PPPoEの場合です。特に設定は必要ありません)
- L2TPトンネル(IP上にPPPを通すトンネリングプロトコルです。ADD L2TP CALLコマンドでL2TPコールを定義します。詳細は「L2TP」の章をご覧ください)
インターフェース間の関係については、「インターフェース」の章もご覧ください。
物理層のセットアップが完了したら、その上にPPPインターフェースを作成します。PPPインターフェースは、CREATE PPPコマンドで作成します。
PPPインターフェースの作成にあたって最小源必要な情報は次のとおりです。
- PPPインターフェース番号
- 物理(下位)インターフェース名
インターフェース番号は0〜511の範囲で重ならないよう任意に割り当てます。物理インターフェースは使用する回線を指定するもので、次のように指定します。
表 1:物理インターフェースの指定方法
回線 |
指定方法 |
例 |
Ethernet |
Ethernetインターフェース名の後に「-servicename」を付ける。servicenameは、PPPoEサービス名。サービス名が指定されていないときは、任意の文字列またはキーワード「any」を指定できる。 |
eth1-isp(PPPoEサービス名が「isp」の場合) |
L2TPトンネル |
L2TPコール名の前に「TNL-」を付ける |
TNL-remote(L2TPコール名が「remote」の場合) |
■ Ethernet上でPPPを使用する場合(PPPoE)は、物理インターフェースとしてEthernetインターフェース名とPPPoEサービス名を「ETHn-servicename」の形式で指定します。「n」はEthernetインターフェースの番号、「servicename」はISP等から指定されたPPPoEサービス名です。サービス名が指定されていない場合は、任意の文字列またはキーワード「any」を指定します。たとえば、Ethernetインターフェースeth0上にPPPインターフェース「0」を作成するには、次のようにします。
CREATE PPP=0 OVER=eth0-pppoe ↓
これは、xDSLなどのブロードバンド接続サービスにおけるWAN側インターフェースの設定になります。常時接続を仮定しているため、「IDLE=ON」は付けていません。ベストエフォート型のサービスでは、網側から不定期にセッションが切断されることがありますが、IDLE=OFF(デフォルト)に設定されたPPPoEインターフェースは、リンクダウンしても自動的に再接続を試みますPPPoEセッションキープアライブ機能)。
Note
- リンクダウンを検出するには「ECHO=ON」の設定が必要です。
■ L2TPトンネル上でPPPを使用する場合は、物理インターフェースとしてL2TPコール(L2TPトンネル接続情報)を指定します。たとえば、L2TPコール「tunnel」上にPPPインターフェース「0」を作成するには、次のようにします。
CREATE PPP=0 OVER=TNL-tunnel ↓
L2TP(Layer Two Tunnelling Protocol)は、IPネットワーク上に仮想回線(L2TPトンネル)を構築し、その上でPPPを走らせるVPNプロトコルです。詳細は「L2TP」の章をご覧ください。
作成したPPPインターフェースは、第2層(データリンク層)インターフェースとして扱われ、上位にネットワーク層(IP)インターフェースを作成できます。このとき、PPPインターフェースは「PPPn」の形式で指定します。nはインターフェース番号です。
■ PPPインターフェース「0」上にIPインターフェースを作成するには、ADD IP INTERFACEコマンドを使います。
ADD IP INT=ppp0 IP=192.168.100.1 MASK=255.255.255.0 ↓
PPPインターフェースは、IPアドレスを割り当てないUnnumberedインターフェースとして設定することもできます。その場合、IPアドレスとして「0.0.0.0」を指定します。
ADD IP INT=ppp0 IP=0.0.0.0 ↓
また、端末型ダイヤルアップのように、接続時にIPアドレスを動的に取得する場合は、ENABLE IP REMOTEASSIGNコマンドでリモート側から提供されたアドレスを使用できるよう設定した上で、PPPインターフェースに0.0.0.0を指定します。また、PPPインターフェースの設定で「IPREQUEST=ON」を指定しておく必要もあります。
SET PPP=0 IPREQUEST=ON ↓
ENABLE IP REMOTEASSIGN ↓
ADD IP INT=ppp0 IP=0.0.0.0 ↓
この場合、ISPとの接続が完了するまでIPアドレスは未定となります。
■ CREATE PPPコマンドで作成したPPPインターフェースの設定オプションを変更するには、SET PPPコマンドを使います。
SET PPPコマンドを実行するときには、変更するオプションがPPPインターフェース全体にかかわるグローバルなものであるか、PPPインターフェース(マルチリンクバンドル)を構成する特定のリンクだけにかかわるものかによって、OVERパラメーターの指定が必要なときとそうでないときがあります。
- OVERパラメーターがいらないオプション
- DESCRIPTION
- IDLE
- IPPOOL
- IPREQUEST
- PASSWORD
- USERNAME
- OVERパラメーターが必須のオプション
- AUTHENTICATION
- CONFIGURE
- ECHO
- RECHALLENGE
- TERMINATE
■ PPPインターフェースを削除するには、DESTROY PPPコマンドを使用します。IPなどの上位モジュールがアタッチされている場合は、最初にDELETE IP INTERFACEコマンドで削除してからDESTROY PPPコマンドを実行してください。
DELETE IP INT=ppp0 ↓
DESTROY PPP=0 ↓
PPPインターフェースには、さまざまな設定オプションがあります。ここでは、おもなものについて説明します。詳細はコマンドリファレンスをご覧ください。
オンデマンド接続は、上位層(IPなど)からの要求に応じてPPPのリンクを開き、一定時間無通信状態が続くとリンクを閉じる機能です。
■ オンデマンド接続を使用するには、CREATE PPPコマンド、SET PPPコマンドのIDLEパラメーターにONを指定します。これにより、必要に応じて自動接続し、60秒間無通信状態が続くと自動的に回線を切断するようになります。省略時はIDLE=OFFで、その場合はルーターが起動するとただちにPPPリンクを確立しようとします。また、無通信時の切断タイマーが無効であるため、いつまでも接続したままとなりますのでご注意ください。
CREATE PPP=0 OVER=eth0-any IDLE=ON ↓
■ IDLEパラメーターに秒数を指定することで、切断タイマーの値を変更することもできます。次の例では切断までの時間を175秒に変更しています。
Note
- オンデマンド接続を使用しているとき、上位層(IPなど)から見たPPPインターフェースの状態はつねに「Up」となります。SHOW IP INTERFACEコマンドでは「Down」状態のインターフェース名の前に「#」が付きます。オンデマンド接続のPPPインターフェースの場合でも、回線が切断されると「#」が付きます。
■ オンデマンド接続のPPPインターフェース上にIPインターフェースを作成している場合、LAN側のMicrosoft Networkクライアントが発するパケットによって、不用意な接続が起こることがあります。これを防ぐには、ファイアウォールでLAN側から発生する135、137〜139、445番ポート宛てのパケットを遮断します。
ファイアウォールルールによる設定
ENABLE FIREWALL ↓
CREATE FIREWALL POLICY=net ↓
ADD FIREWALL POLICY=net INTERFACE=vlan1 TYPE=PRIVATE ↓
ADD FIREWALL POLICY=net INTERFACE=ppp0 TYPE=PUBLIC ↓
ADD FIREWALL POLICY=net RULE=1 ACTION=DENY INT=vlan1 PROTO=TCP PORT=135 ↓
ADD FIREWALL POLICY=net RULE=2 ACTION=DENY INT=vlan1 PROTO=UDP PORT=135 ↓
ADD FIREWALL POLICY=net RULE=3 ACTION=DENY INT=vlan1 PROTO=TCP PORT=137-139 ↓
ADD FIREWALL POLICY=net RULE=4 ACTION=DENY INT=vlan1 PROTO=UDP PORT=137-139 ↓
ADD FIREWALL POLICY=net RULE=5 ACTION=DENY INT=vlan1 PROTO=TCP PORT=445 ↓
PPPリンクは、物理回線の状態などによって不定期に切断される可能性があります。本製品には、リンクの状態を監視し、障害検出時に対処を行うための機能として、以下の方法が用意されています。
LCP Echoパケット
LCP Echo(Echo-Request)パケットは、接続相手にエコー応答を要求するLCPの標準機能です。
■ LCP Echoパケットはデフォルト10秒間隔で送信されます。3回連続でEcho-Replyが戻ってこなかった場合は、リンクがダウンしたと判断してトリガーイベントを発生します。インターフェーストリガーでこのイベントを捕捉することにより、リンクダウン時に自動的な対応をとることができます。
すでに紹介したもの以外にも、PPPにはさまざまなオプションがあります。
PPPでは、リンク確立時(LCP)にユーザー認証方式のネゴシエーションを行うことができます。認証を行うことで合意した場合、LCPの完了後かつNCPの開始前に、合意した認証方式で互いの認証(一方のみもあり)を行います。また、CHAPではリンク確立後も不定期に認証を行うケースもあります。
PPPで使用される認証方式には、PAP(Password Authentication Protocol)とCHAP(Challenge Handshake Authentication Protocol)があります。PAPは平文パスワードとユーザー名による認証方式、CHAPは一方向性ハッシュ関数を使用したチャレンジ・レスポンス型の安全な認証方式です。
認証を受けるための設定
ISPへの接続時のように相手側から認証を受ける場合は、PPP接続時にユーザー名とパスワード(またはパスワードをもとにしたハッシュ値)を相手側に送る必要があります。これらの情報は、CREATE PPPコマンド、SET PPPコマンドのUSERNAME、PASSWORDパラメーターで指定します。本製品は、PAP、CHAPどちらの認証要求に対しても応答します。
■ ppp0のリンク確立時に相手に送るユーザー名「myname」とパスワード「mypasswd」を設定します。
SET PPP=0 USERNAME=myname PASSWORD=mypasswd ↓
■ USERNAMEパラメーターを省略した場合、もしルーターにシステム名(sysName)が設定されていれば、それがPPPユーザー名として相手に送られます。システム名はSET SYSTEM NAMEコマンドで設定します。一方、パスワードはPASSWORDパラメーターで指定するしか方法がありません。
認証するための設定
接続相手にユーザー名とパスワードを要求するには、CREATE PPPコマンド、SET PPPコマンドのAUTHENTICATIONパラメーターで認証方式を指定する必要があります。指定できる値はCHAP、PAP、EITHERのいずれかです。同パラメーターのデフォルト値NONEは認証を要求しないことを意味します。EITHERはCHAP、PAPのどちらでもよいことを示します。
■ ppp0のリンク確立時に相手側にCHAP認証を要求する(チャレンジを送信する)場合は次のようにします。
CREATE PPP=0 OVER=eth0-remote IDLE=ON AUTHENTICATION=CHAP ↓
■ 認証を要求する場合は、接続相手のユーザー名とパスワードをユーザー認証データベースに登録しておく必要があります。PPPユーザーはルーターにログインする必要がないので、LOGIN=NOを指定します。
ADD USER=hisname PASSWORD=hispasswd LOGIN=NO ↓
■ CHAP認証を行うよう設定している場合、デフォルトでは5(300秒)〜15分(900秒)の範囲のランダムな間隔で相手を再認証します。しかし、相手がCHAPの再認証をサポートしていない場合は再認証時にリンクが切断されてしまうため、CREATE PPPコマンド/SET PPPコマンドのRECHALLENGEパラメーターで再認証を行わないよう設定してください。
SET PPP=0 RECHALLENGE=OFF ↓
PPPでは、NCPネゴシエーションによってネットワーク層プロトコルの各種パラメーターを相手から取得したり、相手側に通知したりすることができます。IPアドレスの自動割り当てもその1つです(IPCP)。
IPアドレスの割り当てを要求する
■ IPアドレスの自動割り当てを要求するには、CREATE PPPコマンド、SET PPPコマンドのIPREQUESTパラメーターにONを指定します。端末型でISPに接続する場合は、通常この設定になります。デフォルトはOFFです。
CREATE PPP=0 OVER=eth0-ppp1 IDLE=ON USERNAME=isp PASSWORD=isppasswd IPREQUEST=ON ↓
Note
- IPを自動取得するためには、上記設定に加え、ENABLE IP REMOTEASSIGNコマンドを実行してIPアドレスの動的設定を有効にし、ADD IP INTERFACEコマンドでPPPインターフェースに0.0.0.0を設定しておく必要があります。
DNSサーバーアドレスの要求
本製品は、IPCPネゴシエーションでDNSサーバーアドレスを要求します。これは自動的に行われます。
■ PPPの状態はSHOW PPPコマンドで確認できます。
表 2:CP(Control Protocol)の状態一覧
状態 |
内容 |
INITIAL |
初期状態。OPENイベント未発生で物理層もDOWN状態 |
STARTING |
OPENイベントが発生したが物理層はまだDOWN状態 |
CLOSED |
物理層はUPしているがOPENイベントは未発生 |
STOPPED |
物理層はUPしているがDOWNまたはTIMEOUTイベントが発生 |
CLOSING |
リンクはUPしているがCLOSEイベントが発生しリンクを閉じようとしている状態 |
STOPPING |
リンクはOPENしているがリモート側がリンクを閉じようとしている状態 |
REQ SENT |
Configure-Requestを送信し、応答を待っている状態 |
ACK RCVD |
Configure-Requestを送信し、Ackを受信した状態 |
ACK SENT |
Configure-Requestを受信し、Ackを送信した状態 |
OPENED |
Ackを送受信し、リンクが確立した状態 |
■ PPPインターフェースの設定とネゴシエーションによって決定されたパラメーターはSHOW PPP CONFIGコマンドで確認します。
SHOW PPP CONFIG ↓
SHOW PPP=0 CONFIG ↓
■ PPPインターフェースの統計カウンターはSHOW PPP COUNTERコマンドで確認できます。
SHOW PPP COUNTER ↓
SHOW PPP=0 COUNTER ↓
SHOW PPP=0 COUNTER=LCP ↓
Copyright (C) 2007 アライドテレシス株式会社
PN: 613-000415 Rev.B