<前頁
次頁>
<<
>>
↓
目次 (番号順
(詳細)・
回線別
(詳細)・
機能別
(詳細))
CentreCOM AR300/AR700 シリーズ 設定例集 2.3 #134
PPPoEによる端末型インターネット接続(PPPoE 2セッション。ドメインごとにDNSリレー先を設定)
PPPoEマルチセッションの設定例です。ここでは、PPPoEのセッションを2本使って、グローバルインターネットと、サービス事業者のプライベートネットワークに同時接続します。各ネットワークへのパケット振り分けはスタティックな経路制御により行います。また、DNSリレー機能を利用して、プライベートドメインの名前解決にはサービス事業者のDNSサーバーを使い、その他(インターネット)の名前解決にはインターネットサービスプロバイダー(ISP)のグローバルなDNSサーバーを使うよう設定します。
インターネットサービスプロバイダー(ISP)からは、次の情報を提供されているものとします。
表 1:ISPから提供された情報
PPPユーザー名 |
user@isp |
PPPパスワード |
isppasswd |
PPPoEサービス名 |
指定なし |
IPアドレス |
グローバルアドレス1個(動的割り当て) |
DNSサーバー |
接続時に通知される |
プライベートネットワーク上でなんらかのサービスを提供している業者(以下、サービス事業者)からは、次の情報を提供されているものとします。
表 2:サービス事業者から提供された情報
PPPユーザー名 |
user@svc |
PPPパスワード |
svcpasswd |
PPPoEサービス名 |
指定なし |
IPアドレス |
プライベートアドレス1個(動的割り当て) |
プライベートネットワークのアドレス範囲 |
10.0.0.0/8 |
プライベートネットワーク上で使われているドメイン |
〜.rect |
DNSサーバー |
接続時に通知される |
ルーターには、次のような方針で設定を行います。
- スタティックルーティングにより、サービス事業者のプライベートネットワーク宛てパケットと、それ以外のパケット(インターネット宛て)の転送先を振り分けます。
- ファイアウォールを利用して、外部からの不正アクセスを遮断しつつ、内部からは自由にWAN側へのアクセスができるようにします。
- ファイアウォールのダイナミックENAT機能を使用して、LAN側ネットワークのプライベートIPアドレスを、WAN側インターフェースに設定されたアドレスに変換します。インターネット宛てのパケットはISPから与えられたグローバルIPアドレスに、プライベートネットワーク宛てのパケットはサービス事業者から与えられたプライベートIPアドレスに変換します。これにより、LANに接続された複数のコンピューターから、インターネット、プライベートネットワークへの同時アクセスが可能になります。
- トリガー機能を使ってPPPインターフェースを監視し、PPPoEのセッションが局側から切断されたような場合に、自動的に再接続するよう設定します。
- ルーターをDHCPサーバーとして動作させ、LANに接続されたコンピューターにIPアドレス、サブネットマスク、デフォルトゲートウェイ、DNSサーバーアドレスの情報を提供します。
- ルーターのDNSリレー機能をオンにして、LAN側コンピューターからのDNSリクエストを、ISPのDNSサーバーあるいはサービス事業者のDNSサーバーに転送します。プライベートネットワーク上のドメインに対するリクエストはサービス事業者のDNSサーバーへ、その他のドメインに対するリクエストはISPのDNSサーバーに転送します。また、DNSサーバーへの問い合わせを減らすため、DNSキャッシュ機能も併用します。さらに、上記DHCPサーバーの設定により、LAN側コンピューターに対しては、DNSサーバーアドレスとしてルーター自身のIPアドレスを教えます。
以下、ルーターの基本設定とDNSリレー、DHCPサーバーの設定についてまとめます。
表 3:ルーターの基本設定
WAN側物理インターフェース |
eth1 |
WAN側(ppp0)IPアドレス(1) |
接続時にISPから取得する |
WAN側(ppp1)IPアドレス(2) |
接続時にサービス事業者から取得する |
LAN側(eth0)IPアドレス |
192.168.10.1/24 |
DNSリレー機能 |
有効 |
DNSキャッシュ機能 |
有効(250エントリー。保持時間60分) |
DHCPサーバー機能 |
有効 |
表 4:ルーターのDNSリレーの設定
解決対象のドメイン |
リレー先のDNSサーバー |
rectドメイン |
サービス事業者のサーバー(接続時に通知される) |
その他ドメイン |
ISPのサーバー(接続時に通知される) |
表 5:ルーターのDHCPサーバーの設定
DHCPポリシー名 |
BASE |
使用期限 |
7200(秒) |
サブネットマスク |
255.255.255.0 |
デフォルトルート |
192.168.10.1 |
DNSサーバー |
192.168.10.1 |
DHCPレンジ名 |
LOCAL |
提供するIPアドレスの範囲 |
192.168.10.100〜192.168.10.131(32個) |

Note
- 本設定例では、PPPインターフェースのリンクアップ・ダウンによって、トリガーの状態が動的に変化します。そのため、以下の設定コマンドはルーターのWAN側インターフェース(eth1)にケーブルを接続していない状態(PPPインターフェースがリンクアップしない状態)で入力してください。詳細については章末の「メモ」をご覧ください。
- WAN側Ethernetインターフェース(eth1)上にインターネット(ISP)接続用のPPPインターフェース「0」を作成します。「OVER=eth1-XXXX」の「XXXX」の部分には、ISPから通知されたPPPoEの「サービス名」を記述します。ISPから指定がない場合は、どのサービス名タグでも受け入れられるよう、「any」を設定します。
CREATE PPP=0 OVER=eth1-any ↓
- ISPから通知されたPPPユーザー名とパスワードを指定し、接続時にIPアドレス割り当ての要求を行うように設定します。LQRはオフにし、代わりにLCP Echoパケットを使ってPPPリンクの状態を監視するようにします。また、ISDN向けの機能であるBAPはオフにします。
SET PPP=0 OVER=eth1-any BAP=OFF IPREQUEST=ON USER=user@isp PASSWORD=isppasswd LQR=OFF ECHO=ON ↓
- WAN側Ethernetインターフェース(eth1)上にプライベートネットワーク(サービス事業者)接続用のPPPインターフェース「1」を作成します。「OVER=eth1-XXXX」の「XXXX」の部分には、サービス事業者から通知されたPPPoEの「サービス名」を記述します。ISPから指定がない場合は、どのサービス名タグでも受け入れられるよう、「any」を設定します。
CREATE PPP=1 OVER=eth1-any ↓
- サービス事業者から通知されたPPPユーザー名とパスワードを指定し、接続時にIPアドレス割り当ての要求を行うように設定します。LQRはオフにし、代わりにLCP Echoパケットを使ってPPPリンクの状態を監視するようにします。また、ISDN向けの機能であるBAPはオフにします。
SET PPP=1 OVER=eth1-any BAP=OFF IPREQUEST=ON USER=user@svc PASSWORD=svcpasswd LQR=OFF ECHO=ON ↓
- IPモジュールを有効にします。
- IPCPネゴシエーションで与えられたIPアドレスをPPPインターフェースで使用するように設定します。
- LAN側(eth0)インターフェースにIPアドレスを設定します。
ADD IP INT=eth0 IP=192.168.10.1 MASK=255.255.255.0 ↓
Note
- サービス事業者のネットワークとアドレスが重ならないようご注意ください。
- インターネット接続用のWAN側(ppp0)インターフェースにIPアドレス「0.0.0.0」を設定します。ISPとの接続が確立するまで、IPアドレスは確定しません。
ADD IP INT=ppp0 IP=0.0.0.0 ↓
- プライベートネットワーク接続用のWAN側(ppp1)インターフェースにIPアドレス「0.0.0.0」を設定します。サービス事業者との接続が確立するまで、IPアドレスは確定しません。
ADD IP INT=ppp1 IP=0.0.0.0 ↓
- デフォルトルートをインターネット(ISP)側に向けます。
ADD IP ROUTE=0.0.0.0 INT=ppp0 NEXTHOP=0.0.0.0 ↓
- プライベートネットワーク(サービス事業者)への経路をスタティックに登録します。
ADD IP ROUTE=10.0.0.0 MASK=255.0.0.0 INT=ppp1 NEXTHOP=0.0.0.0 ↓
- DNSリレー機能を有効にします。
- DNSリレーの中継先を指定します。最初に、インターネット上のドメイン名解決に使用するデフォルトのDNSサーバーとして、ISPのDNSサーバーを指定します。通常、中継先にはDNSサーバーのアドレスを指定しますが、IPCPでアドレスを取得するまでは不明であるため、ここではインターネット接続用のインターフェース名(ppp0)を指定します。
- プライベートネットワーク上のドメイン名「〜.rect」に対するDNSリクエストは、サービス事業者のDNSサーバーに中継します。通常、中継先にはDNSサーバーのアドレスを指定しますが、IPCPでアドレスを取得するまでは不明であるため、ここではプライベートネットワーク接続用のインターフェース名(ppp1)を指定します。
ADD IP DNS DOMAIN=rect INT=ppp1 ↓
- DNSキャッシュ機能を有効にします。エントリー数は最大250、保持時間は60分とします。
SET IP DNS CACHE SIZE=250 TIMEOUT=60 ↓
- ファイアウォール機能を有効にします。
- ファイアウォールの動作を規定するファイアウォールポリシー「net」を作成します。
CREATE FIREWALL POLICY=net ↓
- ICMPパケットはPing(Echo/Echo Reply)と到達不可能(Unreachable)のみ双方向で許可します。
ENABLE FIREWALL POLICY=net ICMP_F=PING,UNREACH ↓
Note
- デフォルト設定では、ICMPはファイアウォールを通過できません。
- ルーターのidentプロキシー機能を無効にし、外部のメール(SMTP)サーバーなどからのident要求に対して、ただちにTCP RSTを返すよう設定します。
DISABLE FIREWALL POLICY=net IDENTPROXY ↓
- ファイアウォールポリシーの適用対象となるインターフェースを指定します。
- LAN側(eth0)インターフェースをPRIVATE(内部)に設定します。
ADD FIREWALL POLICY=net INT=eth0 TYPE=PRIVATE ↓
- インターネット接続用のWAN側(ppp0)インターフェースをPUBLIC(外部)に設定します。
ADD FIREWALL POLICY=net INT=ppp0 TYPE=PUBLIC ↓
- プライベートネットワーク接続用のWAN側(ppp1)インターフェースをPUBLIC(外部)に設定します。
ADD FIREWALL POLICY=net INT=ppp1 TYPE=PUBLIC ↓
- LAN側ネットワークに接続されているすべてのコンピューターがENAT機能を使用できるよう設定します。インターネット宛てパケットの場合は、NATアドレスとしてppp0のIPアドレスを使用します。プライベートネットワーク宛てパケットの場合は、NATアドレスとしてppp1のIPアドレスを使用します。
ADD FIREWALL POLICY=net NAT=ENHANCED INT=eth0 GBLINT=ppp0 ↓
ADD FIREWALL POLICY=net NAT=ENHANCED INT=eth0 GBLINT=ppp1 ↓
Note
- ファイアウォールのダイナミックENATでは、パケットがINTからGBLINTに転送されたときに、パケットの始点アドレスをGBLINTのアドレスに書き換えます。
- LAN側PCのためにDHCPサーバー機能を有効にします。
- DHCPポリシー「BASE」を作成します。IPアドレスの使用期限は7,200秒(2時間)とします。
CREATE DHCP POLICY=BASE LEASETIME=7200 ↓
- DHCPクライアントに提供する情報を設定します。ここでは、DNSサーバーアドレスとして、ルーターのLAN側インターフェースのIPアドレスを指定しています。
ADD DHCP POLICY=BASE SUBNET=255.255.255.0 ROUTER=192.168.10.1 DNSSERVER=192.168.10.1 ↓
- DHCPクライアントに提供するIPアドレスの範囲を設定します。
CREATE DHCP RANGE=LOCAL POLICY=BASE IP=192.168.10.100 NUMBER=32 ↓
- PPPoEセッションを自動再接続するためのトリガースクリプトを作成します。
- ppp0をリセットするスクリプトreset0.scpを作成します。
ADD SCRIPT=reset0.scp TEXT="RESET PPP=0" ↓
- ppp1をリセットするスクリプトreset1.scpを作成します。
ADD SCRIPT=reset1.scp TEXT="RESET PPP=1" ↓
- トリガー「1」を無効状態にするスクリプトup0.scpを作成します。
ADD SCRIPT=up0.scp TEXT="DISABLE TRIGGER=1" ↓
- トリガー「2」を無効状態にするスクリプトup1.scpを作成します。
ADD SCRIPT=up1.scp TEXT="DISABLE TRIGGER=2" ↓
- トリガー「1」を有効状態にするスクリプトdown0.scpを作成します。
ADD SCRIPT=down0.scp TEXT="ENABLE TRIGGER=1" ↓
- トリガー「2」を有効状態にするスクリプトdown1.scpを作成します。
ADD SCRIPT=down1.scp TEXT="ENABLE TRIGGER=2" ↓
Note
- ADD SCRIPTコマンドは、コンソールなどからログインした状態で、コマンドラインから実行するコマンドです。そのため、EDITコマンド(内蔵フルスクリーンエディター)等を使って設定スクリプトファイル(.CFG)にこのコマンドを記述しても意図した結果にならない場合がありますのでご注意ください。
- トリガー機能を有効にします。
- PPPoEセッションを自動再接続するためのトリガーを作成します。
- 3分ごとにreset0.scpを実行する定期トリガー「1」を作成します。このトリガーは、ppp0インターフェースがダウンすると同時に有効になり(トリガー「5」による)、アップすると無効になります(トリガー「3」による)。
CREATE TRIGGER=1 PERIODIC=3 SCRIPT=reset0.scp ↓
- 3分ごとにreset1.scpを実行する定期トリガー「2」を作成します。このトリガーは、ppp1インターフェースがダウンすると同時に有効になり(トリガー「6」による)、アップすると無効になります(トリガー「4」による)。
CREATE TRIGGER=2 PERIODIC=3 SCRIPT=reset1.scp ↓
- ppp0のアップ時にup0.scpを実行するインターフェーストリガー「3」を作成します。
CREATE TRIGGER=3 INTERFACE=ppp0 EVENT=UP CP=IPCP SCRIPT=up0.scp ↓
- ppp1のアップ時にup1.scpを実行するインターフェーストリガー「4」を作成します。
CREATE TRIGGER=4 INTERFACE=ppp1 EVENT=UP CP=IPCP SCRIPT=up1.scp ↓
- ppp0のダウン時にdown0.scpを実行するインターフェーストリガー「5」を作成します。
CREATE TRIGGER=5 INTERFACE=ppp0 EVENT=DOWN CP=IPCP SCRIPT=down0.scp ↓
- ppp1のダウン時にdown1.scpを実行するインターフェーストリガー「6」を作成します。
CREATE TRIGGER=6 INTERFACE=ppp1 EVENT=DOWN CP=IPCP SCRIPT=down1.scp ↓
- 設定は以上です。設定内容をファイルに保存し、SET CONFIGコマンドで起動時設定ファイルに指定します。
CREATE CONFIG=router.cfg ↓
SET CONFIG=router.cfg ↓
Note
- WAN側のケーブルを抜いた状態でここまでの設定を行った場合は、ファイル保存後にケーブルを接続してください。
■ 本構成例では、PPPリンクのアップ・ダウンによってトリガー「1」「2」の状態(有効・無効)が動的に変化します。そのため、WAN側インターフェースにケーブルを接続したまま設定を行うと、コマンド入力時と設定保存時でトリガー「1」「2」の状態が変わってしまうことがあります。その場合、PPP の自動再接続機能が働かなくなりますので、必ず次のいずれかの方法で設定を行ってください。
- WAN側インターフェースのケーブルを抜いた状態でコマンドを入力し、設定保存後にケーブルを接続する。
- PC上で設定ファイルを作成し、ZMODEMかTFTPでルーターに転送する。
- ルーターのEDITコマンドで設定ファイルを作成する。
設定が正しく保存されているかどうかを確認するには、SHOW FILEコマンドかSHOW SCRIPTコマンドで設定ファイルを表示し、トリガー「1」「2」の設定内容を確認してください。正しく保存されている場合、トリガー「1」「2」の設定は次のようになります。
create trigger=1 periodic=3 script=reset0.scp
create trigger=2 periodic=3 script=reset1.scp
|
手順が正しくなかった場合は、次のように「state=disabled」というパラメーターが付きます。この設定では、ルーター起動直後に再接続機能が働きません。
create trigger=1 periodic=3 state=disabled script=reset0.scp
create trigger=2 periodic=3 state=disabled script=reset1.scp
|
この場合は、EDITコマンドで設定ファイルを開き、「state=disabled」を削除して上書き保存してください。
■ 本設定では、ルーター起動直後にPPPoEセッションが確立され、以後常時接続された状態となります。したがって、PPPoEセッションの切断、再接続は手動で行う必要があります。
- セッションを切断するには、次のコマンドでPPPインターフェースをディセーブルにします。
- 再接続するには次のコマンドでPPPインターフェースをイネーブルにします。
■ 常時接続ではなく、LAN側からWAN側に対して通信要求が発生したときに自動的にPPPoEセッションを確立し、無通信状態が60秒続いたときにPPPoEセッションを切断するには、次のコマンドを入力します。
SET PPP=0 OVER=eth1-any IDLE=60 ↓
SET PPP=1 OVER=eth1-any IDLE=60 ↓
この場合、自動再接続のためのトリガー設定は意味を持ちませんので、手順26〜33は不要になります。
■ DNSリクエストの転送先インターフェースを指定するコマンド(手順13〜14)は、実在するインターフェースに対して適用する必要があります。この例では、手順8〜9が手順13〜14よりも前に実行されるようにしてください。
ADD IP INT=ppp0 IP=0.0.0.0(手順8) ↓
ADD IP INT=ppp1 IP=0.0.0.0(手順9) ↓
ADD IP DNS INT=ppp0(手順13) ↓
ADD IP DNS DOMAIN=rect INT=ppp1(手順14) ↓
特に、設定ファイル(*.cfg)を直接「EDIT」で編集する場合や、作成済みの設定ファイルをダウンロード(LOAD)する場合、手順が入れ替わらないように注意してください。コマンド順序の違いによるトラブルは、わかりにくいため注意が必要です。
■ PPP接続時にIPCPで取得したDNSサーバーアドレスは、SHOW PPP CONFIGコマンドで確認できます。「Primary DNS Address」、「Secondary DNS Address」欄をご覧ください。
または
SHOW PPP=0 CONFIG ↓
SHOW PPP=1 CONFIG ↓
■ DNSキャッシュ機能のエントリーテーブルを確認するには、SHOW IP DNS CACHEコマンドを使います。
■ あらかじめDNSサーバーアドレスがわかっている場合は、手順13〜14の代わりに、次のようにしてDNSサーバーを設定しておいてもかまいません。ただし、この場合は、ISP側の都合でアドレスが変更されると、手動で設定を変更する必要があります。
ADD IP DNS PRIMARY=12.34.11.11 SECONDARY=12.34.11.22 ↓
ADD IP DNS DOMAIN=rect PRIMARY=10.10.10.5 SECONDARY=10.10.20.5 ↓
■ ファイアウォールで遮断されたパケットのログをとるには、次のコマンドを実行します。
ENABLE FIREWALL POLICY=net LOG=DENY ↓
記録されたログを見るには、次のコマンドを実行します。ここでは、「TYPE=FIRE」により、ファイアウォールが出力したログメッセージだけを表示させています。
■ インターネット側からのPING(ICMP Echo Requestパケット)を拒否するには、次のようなIPフィルターをWAN側インターフェースに設定します。この例では、「LOG=HEADER」により、フィルターで拒否したパケットをログに記録しています。
ADD IP FILTER=0 SO=0.0.0.0 PROTO=ICMP ICMPTYPE=ECHO LOG=HEADER ACTION=EXCLUDE ↓
ADD IP FILTER=0 SO=0.0.0.0 ACTION=INCLUDE ↓
SET IP INT=ppp0 FILTER=0 ↓
記録されたログを見るには、次のコマンドを実行します。ここでは、「TYPE=IPFIL」により、IPフィルターが出力したログメッセージだけを表示させています。
ルーターのコンフィグ
[テキスト版]
CREATE PPP=0 OVER=eth1-any ↓
SET PPP=0 OVER=eth1-any BAP=OFF IPREQUEST=ON USER=user@isp PASSWORD=isppasswd LQR=OFF ECHO=ON ↓
CREATE PPP=1 OVER=eth1-any ↓
SET PPP=1 OVER=eth1-any BAP=OFF IPREQUEST=ON USER=user@svc PASSWORD=svcpasswd LQR=OFF ECHO=ON ↓
ENABLE IP ↓
ENABLE IP REMOTEASSIGN ↓
ADD IP INT=eth0 IP=192.168.10.1 MASK=255.255.255.0 ↓
ADD IP INT=ppp0 IP=0.0.0.0 ↓
ADD IP INT=ppp1 IP=0.0.0.0 ↓
ADD IP ROUTE=0.0.0.0 INT=ppp0 NEXTHOP=0.0.0.0 ↓
ADD IP ROUTE=10.0.0.0 MASK=255.0.0.0 INT=ppp1 NEXTHOP=0.0.0.0 ↓
ENABLE IP DNSRELAY ↓
ADD IP DNS INT=ppp0 ↓
ADD IP DNS DOMAIN=rect INT=ppp1 ↓
SET IP DNS CACHE SIZE=250 TIMEOUT=60 ↓
ENABLE FIREWALL ↓
CREATE FIREWALL POLICY=net ↓
ENABLE FIREWALL POLICY=net ICMP_F=PING,UNREACH ↓
DISABLE FIREWALL POLICY=net IDENTPROXY ↓
ADD FIREWALL POLICY=net INT=eth0 TYPE=PRIVATE ↓
ADD FIREWALL POLICY=net INT=ppp0 TYPE=PUBLIC ↓
ADD FIREWALL POLICY=net INT=ppp1 TYPE=PUBLIC ↓
ADD FIREWALL POLICY=net NAT=ENHANCED INT=eth0 GBLINT=ppp0 ↓
ADD FIREWALL POLICY=net NAT=ENHANCED INT=eth0 GBLINT=ppp1 ↓
ENABLE DHCP ↓
CREATE DHCP POLICY=BASE LEASETIME=7200 ↓
ADD DHCP POLICY=BASE SUBNET=255.255.255.0 ROUTER=192.168.10.1 DNSSERVER=192.168.10.1 ↓
CREATE DHCP RANGE=LOCAL POLICY=BASE IP=192.168.10.100 NUMBER=32 ↓
ENABLE TRIGGER ↓
CREATE TRIGGER=1 PERIODIC=3 SCRIPT=reset0.scp ↓
CREATE TRIGGER=2 PERIODIC=3 SCRIPT=reset1.scp ↓
CREATE TRIGGER=3 INTERFACE=ppp0 EVENT=UP CP=IPCP SCRIPT=up0.scp ↓
CREATE TRIGGER=4 INTERFACE=ppp1 EVENT=UP CP=IPCP SCRIPT=up1.scp ↓
CREATE TRIGGER=5 INTERFACE=ppp0 EVENT=DOWN CP=IPCP SCRIPT=down0.scp ↓
CREATE TRIGGER=6 INTERFACE=ppp1 EVENT=DOWN CP=IPCP SCRIPT=down1.scp ↓
|
スクリプト「reset0.scp」
[テキスト版]
スクリプト「reset1.scp」
[テキスト版]
スクリプト「up0.scp」
[テキスト版]
スクリプト「up1.scp」
[テキスト版]
スクリプト「down0.scp」
[テキスト版]
スクリプト「down1.scp」
[テキスト版]
CentreCOM AR300/AR700 シリーズ 設定例集 2.3 #134
(C) 1997 - 2005 アライドテレシスホールディングス株式会社
PN: J613-M0507-00 Rev.H
<前頁
次頁>
<<
>>
↑
目次 (番号順
(詳細)・
回線別
(詳細)・
機能別
(詳細))