NGN IPv6への接続の設定(ppp, interface, route6)

昨日(6/1)の記事ではSEIL/x86を使ってNGN IPv6インターネットに接続するやり方を紹介しました。今日(と明日)は、昨日の記事では書き切れなかったSEILの設定項目の詳細を紹介します。今日はまずppp, interface, route6コマンドの説明です。

記事一覧

コマンド再掲

昨日の記事から、NGN IPv6に接続するためのSEILの設定を再掲します。

 1. ppp add ipv6 keepalive none ipcp disable ipcp-address off ipcp-dns off ipv6cp \
    enable authentication-method chap identifier <ppp account> passphrase \
    <ppp password> tcp-mss auto
 2. interface pppoe0 ppp-configuration ipv6
 3. interface pppoe0 over lan1
 4. route6 add default pppoe0
 5. dhcp6 client enable
 6. dhcp6 client interface pppoe0
 7. dhcp6 client prefix-delegation subnet lan0 sla-id 0x1 enable
 8. dhcp6 server interface lan0 enable
 9. dhcp6 server interface lan0 dns add dhcp6
10. rtadvd enable
11. rtadvd interface lan0 enable
12. rtadvd interface lan0 other-flag on
13. rtadvd interface lan0 advertise auto
14. rtadvd interface lan0 advertise add interface-prefix

14行とそれなりに量がありますが、これらのコマンドは、

の三つに分類できます。今日はこの中からまず「1.IPv6パケットを送受信するための設定 (ppp, interafce, route6)」 を取り上げます。

pppコマンド

最初はPPP (Point-to-Point Protocol)の設定を行うpppコマンドです。

1. ppp add ipv6 keepalive none ipcp disable ipcp-address off ipcp-dns off ipv6cp \
   enable authentication-method chap identifier <ppp account> passphrase \
   <ppp password> tcp-mss auto

pppコマンドでは、PPPoE接続のPPPプロトコル部分の設定を行っています。pppコマンドは一行で多くのパラメータが設定できるので、パラメータをひとつづつ順番に見てゆきます。

ppp add ipv6 ...

addの次の ipv6 は単なるラベルです。一台のSEILにPPPの設定を複数書いたときにそれらを区別するだけのもので、名前に意味はありません。このラベルは後でinterfaceコマンドの設定で使います。

... keepalive none ...

keepaliveパラメータは、PPP(LCP)プロトコルのECHOメッセージを送信間隔を指定します。今回は none として、ECHOメッセージを送信しないようにしておきます。なお、keepaliveパラメータの設定はSEILからECHOメッセージを送る時の設定です。反対にNGN網からECHOメッセージが送られてくることもありますが、その場合はSEILはkeepaliveパラメータの設定によらず常に応答を返します。

... ipcp disable ipcp-address off ipcp-dns off ...

ipcp, ipcp-address, ipcp-dnsはどれもIPv4の設定パラメータです。今回はIPv6でインターネットに接続するので、すべて無効にしておきます。

... ipv6cp enable ...

ipv6cpパラメータはPPP上でIPv6パケットを送受信するためのIPV6CPプロトコルの有効/無効を指定します。ここはもちろん enable と有効にしておきます。なお、IPv4とは違ってIPV6CPではIPアドレスやDNSサーバの応報を取得できませんので、ipv6cp-addressやipv6cp-dnsというオプションはありません。

... authentication-method chap identifier <ppp account> passphrase <ppp password> ...

authentication-method, identifier, passphraseはISPに接続する際の認証の設定です。これらのパラメータの意味はIPv4の場合と同じですので、説明は省略します。

... tcp-mss auto

最後のtcp-mssパラメータはIPv4に関する設定なので何でも構いません。ここではデフォルト値の auto を設定しています。

ここまでで長〜いpppの設定が完了です。次は、interfaceコマンドでpppの設定を物理インタフェースと結びつけます。

interface コマンド

interfaceコマンドはSEILの多種多様なインタフェース(PPPoE, LAN, VLAN, IPsec, ...)の設定を行うコマンドです。今回はPPPoEインタフェースの設定のみ行います。

2. interface pppoe0 ppp-configuration ipv6

先程書いたPPPの設定をpppoe0仮想インタフェースに結び付けます。ただしこれだけだとLAN0, LAN1, ... のどのEthernetインタフェースの上でPPPoEを使うかわかりませんので、

3. interface pppoe0 over lan1

interfaceコマンドのoverパラメータでLAN1を指定します。

ここまででNGN IPv6網に接続ができるようになりました。最後にルーティングの設定を行います。

route6 コマンド

4. route6 add default pppoe0

今回は複雑なルーティングは必要ありませんので、IPv6のデフォルト経路を静的にpppoe0インタフェースに向けるだけにしておきます。この設定は、先頭のコマンド名がroute6になっている以外はIPv4の静的経路の設定と同様です。

以上でIPv6 PPPoEでNGN網に接続できるようになりました。明日はdhcp6とrtadvdについて解説します。