HG8045D下にNVR510を接続し、IPv4とIPv6の通信設定を行う。


最近、ネットの契約を光回線に変えました。
変えた結果、今まで外部とのグローバルネットワークとの窓口だったNVR510からプロバイダ提供のHG8045Dに変える必要が出てきました。
HG8045DはONU+ルータの機器であり、必ず接続しなければならないため、ネットワークの構成を変える必要があります。
取り敢えず一通りの設定を行ったので、備忘録的な意味合いも兼ねて記事にしてみました。

HG8045Dとは何か?

まず、プロバイダから提供されたHG8045Dについて簡単に纏めました。

  • 光回線からイーサネットに変換する機能(ONU)
    • G-PON方式
  • ルータ機能
    • IPv4/IPv6対応
    • 指定できるサブネットマスク(IPv4)
      • /24 (これ以上の空間はしていできない)
  • 無線LAN機能
    • 2.4Ghz / 5GHz
    • IEEE 802.11a/b/g/n

指定できるサブネットマスクが異様に狭い以外は、割りかしスタンダーな性能と思われますが、少し変わっているのがG-PON方式でのONU機能です。
G-PON方式はかなりマイナーらしく、対応しているネットワーク機器は業務用を含め少ないみたいです。
(一般的にはGE-PONで、G-PONを採用しているのはNUROぐらい? ※ちなみに契約しているプロバイダーはNUROじゃないです。)

HG8045Dの代わりに別のルータを使おうとしても代わりなく、通常であれば狭いローカルアドレスで我慢するしかありません。

環境構築の方針

HG8045D下にそのまま繋げばアドレスの範囲は狭いままですが、NVR510を繋ぎ、その下にローカルネットワークを構築すれば問題は解決できます。
つまり、二重NAPTを構築すればいいのです。

次のような感じで構築しました。

HG8045D

  • IPv4
    • WAN
      • デフォルト(ルータ上で設定できる項目は特にないので)
    • LAN
      • 10.1.1.1/24
    • DMZ
      • 10.1.1.241
  • IPv6
    • ルータ広告
      • 有効
    • DHCPv6サーバ
      • 有効
    • アドレス/プレフィックスの分割
      • SLAAC
    • その他の情報の割当方法
      • DHCPv6
  • WLAN
    • 無効

NVR510

  • IPv4
    • WAN側
      • 10.1.1.241/24
    • NAPT
    • DHCP
    • LAN
      • 192.168.0.1/16
  • IPv6
    • グローバルアドレスの設定方法
      • RA
  • DNSキャッシュサーバー

概要図

-----------------
- インターネット -
-----------------
        |
   -----------
   - HG8045D -
   -----------
        | 10.1.1.1/24
        |
        | 10.1.1.241/24
    ----------
    - NVR510 -
    ----------
        | 192.168.0.1/16
     -------
     - LAN -
     -------

基本的な方針はこんな感じです。(LANのアドレスが192.168.0.1/16なのは、前から使っていた環境を考慮してのことです)
IPv4は、DMZ機能を用いて全ての通信をNVR510に飛ばすことで、見せかけ的に多段NAPTの状態を回避しています。もちろん、HG8045Dを挟むことでNAPT変換のコストが発生するため、オーバーヘッドは避けられません。
一方でIPv6であれば通常のルーティングのみになり、オーバーヘッドを避けられます。
また、HG8045Dの負担を軽減させるためにDHCPやDNSキャッシュサーバーとしての機能は全てNVR510に肩代わりさせます。(経験上、無線LANルータは何となく不安定な印象があるので、あまり色々動かさないほうが良い気がします)

NVR510上のIPv4の設定

次のような感じで設定すればいいと思います。

ip route default gateway 10.1.1.1
ip lan1 address 192.168.0.1/16
ip lan2 address 10.1.1.241/16
ip lan2 nat descriptor 1
nat descriptor type 1 masquerade
nat descriptor address outer 1 primary
nat descriptor address inner 1 auto
dhcp service server
dhcp server rfc2131 compliant except remain-silent
dhcp scope 1 192.168.0.2-192.168.0.64/16
dns host lan1
dns service recursive
dns server 2620:0:ccc::2 2001:4860:4860::8888 208.67.222.222 8.8.8.8

DNSの設定にIPv6を指定しているのは、なんとなくです。

NVR510上のIPv6の設定

ルータ下でIPv6のアドレス配布ができるか、分かりませんが次のように設定しました。

ipv6 routing on
ipv6 route default gateway dhcp lan2
ipv6 prefix 1 ra-prefix@lan2::/64
ipv6 lan1 address ra-prefix@lan2::1/64
ipv6 lan1 rtadv send 1 o_flag=on
ipv6 lan1 dhcp service server
ipv6 lan1 mld router version=2
ipv6 lan2 dhcp service client
ipv6 lan2 mld host version=2

IPv6の設定は何となくしています。一応後で動作確認はしました。
MLDの設定は何となくしています。(動いている?)

動作確認

動作確認はNVR510下に繋いだWindows端末で行いました。

test-ipv6.com

sourceforge.net Speedtest(IPv4)

ipv6-test.com Speedtest

Google スピードテスト(おそらく、IPv6)

まとめ

一番の懸念点だったIPv6の設定に問題はないようで、外部との通信も動作確認上問題はなさそうです。
IPv4/IPv6どちらでも十分な速度が保たれており、IPv6はIPv4よりも高速に通信できているようです。

NUROでも同じような設定でIPv6が可能か分かりませんが、試してみるのも良いと思います。