＜前頁 次頁＞ ＜＜ ＞＞ ↓ 目次 （番号順 (詳細)・ 回線別 (詳細)・ 機能別 (詳細)）

CentreCOM AR550S 設定例集 2.9 #168

# PPPoEによる端末型インターネット接続 WAN回線バックアップ構成

PPPoEを使ってインターネットサービスプロバイダー(ISP)に接続します。WAN回線を2つ用意しインターフェーストリガー機能を利用してメイン回線に障害が発生したときにバックアップ回線に切り替えることができる構成です。

ISPからは次の情報を提供されているものとします。

表 1：ISPから提供された情報
| ISP-A | ISP-B
PPPユーザー名 | user@ispA | user@ispB
PPPパスワード | isppasswdA | isppasswdB
PPPoEサービス名 | 指定なし | 指定なし
IPアドレス | グローバルアドレス1個（動的割り当て） | グローバルアドレス1個（動的割り当て）
DNSサーバー | 接続時に通知される | 接続時に通知される

ルーターは接続時にアドレスを1つ割り当てられる端末型の基本設定です。ダイナミックENATで1個のアドレスを共用し、ファイアウォールで外部からの不正アクセスを防止します。また、LAN側クライアントの設定を簡単にするため、DNSリレーとDHCPサーバーも利用します。
以下、ルーターの基本設定とDHCPサーバーの設定についてまとめます。

表 2：ルーターの基本設定
WAN側物理インターフェース | eth0 | eth1
WAN側IPアドレス | 接続時にISPから取得する(ppp0) | 接続時にISPから取得する(ppp1)
LAN側IPアドレス | 192.168.10.1/24(vlan1)
DHCPサーバー機能 | 有効

表 3：ルーターの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個）

WAN回線はISP-A(ppp0インターフェース)をメイン回線とします。このメイン回線に障害が発生しppp0インターフェースがダウンした場合、インターフェーストリガー機能でバックアップ用のISP-B(ppp1インターフェース)の回線に切り替えるスクリプトを実行します。メイン回線が復旧しppp0インターフェースがアップしたら、バックアップ回線を切断し元のメイン回線に戻します。
ここでは、次のようなネットワーク構成を例に解説します。

ルーターの設定

1. メイン回線用のWAN側Ethernetインターフェース（eth0）上にPPPインターフェースを作成します。「OVER=eth0-XXXX」の「XXXX」の部分には、ISPから通知されたPPPoEの「サービス名」を記述します。ISPから指定がない場合は、どのサービス名タグでも受け入れられるよう、「ANY」を設定します。

   `CREATE PPP=0 OVER=eth0-ANY ↓`
2. ISP-Aから通知されたPPPユーザー名とパスワードを指定し、接続時にIPアドレス割り当ての要求を行うように設定します。LQRはオフにし、代わりにLCP Echoパケットを使ってPPPリンクの状態を監視するようにします。また、ISDN向けの機能であるBAPはオフにします。

   `SET PPP=0 OVER=eth0-ANY BAP=OFF IPREQUEST=ON USER=user@ispA PASSWORD=isppasswdA LQR=OFF ECHO=ON ↓`
3. バックアップ回線用のWAN側Ethernetインターフェース（eth1）上にPPPインターフェースを作成します。「OVER=eth1-XXXX」の「XXXX」の部分には、ISPから通知されたPPPoEの「サービス名」を記述します。ISPから指定がない場合は、どのサービス名タグでも受け入れられるよう、「ANY」を設定します。

   `CREATE PPP=1 OVER=eth1-ANY ↓`
4. ISP-Bから通知されたPPPユーザー名とパスワードを指定し、接続時にIPアドレス割り当ての要求を行うように設定します。LQRはオフにし、代わりにLCP Echoパケットを使ってPPPリンクの状態を監視するようにします。また、ISDN向けの機能であるBAPはオフにします。

   `SET PPP=1 OVER=eth1-ANY BAP=OFF IPREQUEST=ON USER=user@ispB PASSWORD=isppasswdB LQR=OFF ECHO=ON ↓`
5. バックアップ回線用のPPP1インターフェースを無効にします。

   `DISABLE PPP=1 ↓`
6. IPモジュールを有効にします。

   `ENABLE IP ↓`
7. IPCPネゴシエーションで与えられたIPアドレスをPPPインターフェースで使用するように設定します。

   `ENABLE IP REMOTEASSIGN ↓`
8. LAN側（vlan1）インターフェースにIPアドレスを設定します。

   `ADD IP INT=vlan1 IP=192.168.10.1 MASK=255.255.255.0 ↓`
9. メイン回線用のWAN側（ppp0）インターフェースにIPアドレス「0.0.0.0」を設定します。ISPとの接続が確立するまで、IPアドレスは確定しません。

   `ADD IP INT=ppp0 IP=0.0.0.0 ↓`
10. バックアップ回線用のWAN側（ppp1）インターフェースにIPアドレス「0.0.0.0」を設定します。ISPとの接続が確立するまで、IPアドレスは確定しません。

    `ADD IP INT=ppp1 IP=0.0.0.0 ↓`
11. デフォルトルートを設定します。

    `ADD IP ROUTE=0.0.0.0 INT=ppp0 NEXTHOP=0.0.0.0 ↓`
12. DNSリレー機能を有効にします。

    `ENABLE IP DNSRELAY ↓`
13. DNSリレーの中継先を指定します。通常、中継先にはDNSサーバーのアドレスを指定しますが、IPCPによりアドレスを取得するまでは不明であるため、ここではインターフェース名を指定します。

    `SET IP DNSRELAY INTERFACE=ppp0 ↓`
14. ファイアウォール機能を有効にします。

    `ENABLE FIREWALL ↓`
15. ファイアウォールの動作を規定するファイアウォールポリシー「net」を作成します。

    `CREATE FIREWALL POLICY=net ↓`
16. ICMPパケットはPing（Echo/Echo Reply）と到達不可能（Unreachable）のみ双方向で許可します。

    `ENABLE FIREWALL POLICY=net ICMP_F=PING,UNREACH ↓`

    > Note - デフォルト設定では、ICMPはファイアウォールを通過できません。

17. ルーターのidentプロキシー機能を無効にし、外部のメール（SMTP）サーバーなどからのident要求に対して、ただちにTCP RSTを返すよう設定します。

    `DISABLE FIREWALL POLICY=net IDENTPROXY ↓`
18. ファイアウォールポリシーの適用対象となるインターフェースを指定します。
    LAN側（vlan1）インターフェースをPRIVATE（内部）に設定します。

    `ADD FIREWALL POLICY=net INT=vlan1 TYPE=PRIVATE ↓`
    メイン回線用のWAN側（ppp0）インターフェースをPUBLIC（外部）に設定します。

    `ADD FIREWALL POLICY=net INT=ppp0 TYPE=PUBLIC ↓`
    バックアップ回線用のWAN側（ppp1）インターフェースをPUBLIC（外部）に設定します。

    `ADD FIREWALL POLICY=net INT=ppp1 TYPE=PUBLIC ↓`
19. LAN側ネットワークに接続されているすべてのコンピューターがENAT機能を使用できるよう設定します。グローバルアドレスには、メイン回線ではppp0、バックアップ回線ではppp1のIPアドレスを使用します。

    `ADD FIREWALL POLICY=net NAT=ENHANCED INT=vlan1 GBLINT=ppp0 ↓
    ADD FIREWALL POLICY=net NAT=ENHANCED INT=vlan1 GBLINT=ppp1 ↓
    `
20. LAN側PCのためにDHCPサーバー機能を有効にします。

    `ENABLE DHCP ↓`
21. DHCPポリシー「BASE」を作成します。IPアドレスの使用期限は7,200秒（2時間）とします。

    `CREATE DHCP POLICY=BASE LEASETIME=7200 ↓`
22. DHCPクライアントに提供する情報を設定します。ここでは、DNSサーバーアドレスとして、ルーターのLAN側インターフェースのIPアドレスを指定しています。

    `ADD DHCP POLICY=BASE SUBNET=255.255.255.0 ROUTER=192.168.10.1 DNSSERVER=192.168.10.1 ↓`
23. DHCPクライアントに提供するIPアドレスの範囲を設定します。

    `CREATE DHCP RANGE=LOCAL POLICY=BASE IP=192.168.10.100 NUMBER=32 PROBE=ARP ↓`
24. トリガースクリプトを作成します。
    - ppp0down.scpの作成
      トリガースクリプトppp0down.scpでは以下の動作を行います。
      - ppp1インターフェースを有効にします。
      - ppp0インターフェース上のデフォルトルートを削除します。
      - ppp1インターフェース上にデフォルトルートを設定します。
      - ppp1インターフェースをDNSリレーの中継先に指定します。

      `ADD SCRIPT=ppp0down.scp TEXT="ENABLE PPP=1" ↓
      ADD SCRIPT=ppp0down.scp TEXT="DEL IP ROUTE=0.0.0.0 MASK=0.0.0.0 INTERFACE=ppp0 NEXT=0.0.0.0" ↓
      ADD SCRIPT=ppp0down.scp TEXT="ADD IP ROUTE=0.0.0.0 MASK=0.0.0.0 INTERFACE=ppp1 NEXT=0.0.0.0" ↓
      ADD SCRIPT=ppp0down.scp TEXT="SET IP DNSRELAY INTERFACE=ppp1" ↓
      `
    - ppp0up.scpの作成
      トリガースクリプトppp0up.scpでは以下の動作を行います。
      - ppp1インターフェースを無効にします。
      - ppp1インターフェース上のデフォルトルートを削除します。
      - ppp0インターフェース上にデフォルトルートを設定します。
      - ppp0インターフェースをDNSリレーの中継先に指定します。

      `ADD SCRIPT=ppp0up.scp TEXT="DISABLE PPP=1" ↓
      ADD SCRIPT=ppp0up.scp TEXT="DEL IP ROUTE=0.0.0.0 MASK=0.0.0.0 INTERFACE=ppp1 NEXT=0.0.0.0" ↓
      ADD SCRIPT=ppp0up.scp TEXT="ADD IP ROUTE=0.0.0.0 MASK=0.0.0.0 INTERFACE=ppp0 NEXT=0.0.0.0" ↓
      ADD SCRIPT=ppp0up.scp TEXT="SET IP DNSRELAY INTERFACE=ppp0" ↓
      `

      > Note - ADD SCRIPTコマンドは、コンソールなどからログインした状態で、コマンドラインから実行するコマンドです。そのため、EDITコマンド（内蔵フルスクリーンエディター）などを使って設定スクリプトファイル（.CFG）にこのコマンドを記述しても意図した結果にならない場合がありますのでご注意ください。

25. トリガー機能を有効にします。

    `ENABLE TRIGGER ↓`
26. ppp0インターフェースがダウンした場合に、WAN回線をバックアップ回線用のppp1インターフェースに切り替えるスクリプトppp0down.scpを実行するトリガーを作成します。

    `CREATE TRIGGER=1 INTERFACE=ppp0 CP=IPCP EVENT=DOWN SCRIPT=ppp0down.scp ↓`
27. ppp0インターフェースがアップした場合に、WAN回線をメイン回線用のppp0インターフェースに切り替えるスクリプトppp0up.scpを実行するトリガーを作成します。

    `CREATE TRIGGER=2 INTERFACE=ppp0 CP=IPCP EVENT=UP SCRIPT=ppp0up.scp ↓`
28. 設定は以上です。設定内容をファイルに保存し、SET CONFIGコマンドで起動時設定ファイルに指定します。

    `CREATE CONFIG=router.cfg ↓
    SET CONFIG=router.cfg ↓
    `

まとめ

ルーターのコンフィグ [テキスト版]

`CREATE PPP=0 OVER=eth0-ANY ↓ SET PPP=0 OVER=eth0-ANY BAP=OFF IPREQUEST=ON USER=user@ispA PASSWORD=isppasswdA LQR=OFF ECHO=ON ↓ CREATE PPP=1 OVER=eth1-ANY ↓ SET PPP=1 OVER=eth1-ANY BAP=OFF IPREQUEST=ON USER=user@ispB PASSWORD=isppasswdB LQR=OFF ECHO=ON ↓ DISABLE PPP=1 ↓ ENABLE IP ↓ ENABLE IP REMOTEASSIGN ↓ ADD IP INT=vlan1 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 ↓ ENABLE IP DNSRELAY ↓ SET IP DNSRELAY INTERFACE=ppp0 ↓ ENABLE FIREWALL ↓ CREATE FIREWALL POLICY=net ↓ ENABLE FIREWALL POLICY=net ICMP_F=PING,UNREACH ↓ DISABLE FIREWALL POLICY=net IDENTPROXY ↓ ADD FIREWALL POLICY=net INT=vlan1 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=vlan1 GBLINT=ppp0 ↓ ADD FIREWALL POLICY=net NAT=ENHANCED INT=vlan1 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 PROBE=ARP ↓ ENABLE TRIGGER ↓ CREATE TRIGGER=1 INTERFACE=ppp0 CP=IPCP EVENT=DOWN SCRIPT=ppp0down.scp ↓ CREATE TRIGGER=2 INTERFACE=ppp0 CP=IPCP EVENT=UP SCRIPT=ppp0up.scp ↓`

スクリプト「ppp0down.scp」 [テキスト版]

`ENABLE PPP=1 ↓ DEL IP ROUTE=0.0.0.0 MASK=0.0.0.0 INTERFACE=ppp0 NEXT=0.0.0.0 ↓ ADD IP ROUTE=0.0.0.0 MASK=0.0.0.0 INTERFACE=ppp1 NEXT=0.0.0.0 ↓ SET IP DNSRELAY INTERFACE=ppp1 ↓`

スクリプト「ppp0up.scp」 [テキスト版]

`DISABLE PPP=1 ↓ DEL IP ROUTE=0.0.0.0 MASK=0.0.0.0 INTERFACE=ppp1 NEXT=0.0.0.0 ↓ ADD IP ROUTE=0.0.0.0 MASK=0.0.0.0 INTERFACE=ppp0 NEXT=0.0.0.0 ↓ SET IP DNSRELAY INTERFACE=ppp0 ↓`

CentreCOM AR550S 設定例集 2.9 #168

(C) 2005-2012 アライドテレシスホールディングス株式会社

PN: J613-M0710-04 Rev.M

＜前頁 次頁＞ ＜＜ ＞＞ ↑ 目次 （番号順 (詳細)・ 回線別 (詳細)・ 機能別 (詳細)）