はじめに
フレッツ光クロスでは/56のIPv6プレフィックスが配られますが、それを分割して複数のルーター使いたくなり、YAMAHA RTX1300であればDHCPv6-PDのクライアントにもサーバーにもなれるということで、やってみましたというお話です。
一度IPv6プレフィックスを受け取り、その情報を確認してから、各ルーターに固定で設定することもできますが、IPv6プレフィックスが変更となった際に再設定が面倒ですので、できればそのあたりはよしなにやってほしい、なので内側でもDHCPv6-PDを使いましょうという感じです。
前提条件
今回は次のような状況での設定となります。
- RTX1300のファームウェアはRev.23.00.19
- RTX1300はIPv6プレフィックス配布とルーティング以外は極力何もしない
- フレキシブルLAN/WANポートを使用してLAN1のポート8をLAN4に割り当て
- LAN3にフレッツ光クロスのONU
- LAN2とLAN4に下位ルーター
- フレッツ光クロスから/56で受け取ったIPv6プレフィックスを/60で下位に配る
- RTX1300自体にグローバルIPv6アドレスは付与しない
フレッツ光クロスがLAN3、下位ルーターがLAN2およびLAN4と微妙な感じですが、あとから下位ルーターを追加した都合でこうなっています。なおLAN1はIPv4アドレスを割り当てて、管理用として使用しています。
設定
今回の設定に関するドキュメントとしては、次のページが参考になります。
ここに記載のあるとおり、RTX1300でDHCPv6-PDサーバー機能を使うためには、ファームウェアをRev.23.00.16以降にする必要があります。僕は箱から出してそのまま設定しようとしたらファームウェアが古く、設定ができずに若干無駄な時間を過ごしてしまいましたのでご注意ください。
フレキシブルLAN/WANポートの設定
下位ルーターを接続するLAN4を増やすために、次のとおりフレキシブルLAN/WANポートの設定をします。
lan flexible-port lan1=1-7 lan2=9 lan3=10 lan4=8
デフォルトでは1-8がLAN1となっていますが、そこの8をLAN4に割り当てる形となります。なお本コマンドによる設定の反映には再起動が必要となります。
LAN3 (フレッツ光クロス側)の設定
LAN3は、フレッツ光クロスからのIPv6プレフィックスを受け取るために、DHCPv6-PDクライアントとして振る舞う必要があります。必要な設定は次のとおりです。
ipv6 lan3 dhcp service client
ngn type lan3 ntt
DHCPv6-PDクライアントとして動作させるための設定と、フレッツ網に対応するための設定ですね。
下位ルーターに配布するプレフィックスの設定
下位ルーターに配るプレフィクスを指定する必要があります。今回は2つの/60を配りたいため、次のように設定します。
ipv6 dhcp prefix 1 dhcp-prefix@lan3::/60
ipv6 dhcp prefix 2 dhcp-prefix@lan3::10:0:0:0:1/60
これでLAN3で受け取ったIPv6プレフィックスのうち、先頭から2つ分の/60がそれぞれプレフィックス番号1および2と定義されます。
ちなみにsub_prefixをどうやって設定すれば良いのか分からず、結構苦戦しました。サポートに問い合わせたところ、ipv6 dhcp prefixとipv6 prefixでコマンドの違いはありますが、次のドキュメントに記載の注釈どおりに設定が必要とのことでしたので、それに従います。
少なくともこの記事を書いている時点のファームウェアでは、dhcp-prefix@lan3::10:0:0:0:0などと指定すると正常に動作しなくなるため注意が必要です。この指定では正しくないフォーマットのコンフィグが生成されるのですが、設定直後の動作やsaveコマンドを実行した際には問題がなく、再起動時などの設定読み込みの際にこの行がエラーとなり読み込みがスキップされます。ipv6 prefixコマンドではありますが、同様の事象について書かれている方を見つけました。
DHCPv6-PDでWANから受けたPrefixを分割してLANに配布する。(YAMAHA RTX1300) #IPv6 – Qiita
設定変更後はloadコマンドの実行や再起動で、動作確認をしておくのが良いですね。なお個人的にいろいろと調べたところ、サポートにより推奨されている方法ではありませんが、コロン2つの省略を使用せずに記載することで、この問題を回避できそうなことはわかりました。
LAN2およびLAN4 (下位ルーター側)の設定
LAN2およびLAN4は、下位ルーターに先ほど設定したIPv6プレフィックスを配布するために、DHCPv6-PDサーバーとして振る舞う必要があります。必要な設定は次のとおりです。
ipv6 lan2 dhcp service server prefix=1
ipv6 lan4 dhcp service server prefix=2
DHCPv6-PDサーバーとして動作させるための設定で、それぞれ対応するプレフィックス番号を指定しています。
通知するDNSサーバアドレスの設定
下位ルーターに通知するDNSサーバーのアドレスはフレッツ光クロスから受け取ったDNSサーバーのアドレスとし、次のとおり設定します。
dns notice order dhcpv6 server
他に自分自身のIPアドレスを通知できますが、今回はRTX1300をDNSサーバーとしては使用しないため、フレッツ光クロスのDNSサーバーに直接問い合わせるようにします。
デフォルトルートの設定
最後にIPv6デフォルトルートをLAN3に設定します。
ipv6 route default gateway dhcp lan3
これで下位ルーターに配布しているIPv6アドレス宛以外はLAN3へ転送されます。
設定全体再掲
ここまでの設定をまとめると次のとおりです。
ipv6 route default gateway dhcp lan3
ipv6 dhcp prefix 1 dhcp-prefix@lan3::/60
ipv6 dhcp prefix 2 dhcp-prefix@lan3::10:0:0:0:1/60
lan flexible-port lan1=1-7 lan2=9 lan3=10 lan4=8
ipv6 lan2 dhcp service server prefix=1
ipv6 lan3 dhcp service client
ngn type lan3 ntt
ipv6 lan4 dhcp service server prefix=2
dns notice order dhcpv6 server
おわりに
今回の設定でフレッツ光クロスから受け取った/56を下位ルーターに/60で配布できます。ただし、今回の設定は必要最低限の設定となっています。特にフィルターの設定が含まれていないことに注意してください。RTX1300自体にグローバルIPv6アドレスを割り当てていないため、外部からRTX1300自体にアクセスされることはほぼないと思われますが、グローバルIPv6アドレスを割り当てる場合には、必要に応じて管理アクセスも制限しましょう。なおフィルターを設定する際には、プロトコル番号4を通過させないとDS-LiteやMAP-Eが通りませんのでご注意ください。

コメント