【NVR510+RTX1210】v6プラス配下にルータ追加し、PPPoE(IPv4)とIPoE(IPv6)通信でサーバ公開する

スポンサーリンク

前の記事では、ヤマハ「NVR510」で v6プラス(IPv6 IPoE+IPv4 over IPv6)通信を行った。
そのNVR510ルータの配下に、「RTX1210」ルータを追加して、IPv4(PPPoE)通信とIPv6(IPoE)通信を行い、サーバを公開するようにしたので備忘録を残す。

概要

v6プラスの IPv4 over IPv6 通信では利用できるポートに制約があり、一般にWebサーバで使われる 80,443 ポートなどが公開できない。

そこで、PPPoEのIPv4通信を使いサーバを公開できるようにする。PPPoE通信はNVR510上でも一緒に動かす事も出来るが、負荷分散とセキュリティにも配慮しNVR510配下に別ルータ(RTX1210)を設置し、別セグメントで動かす構成とする。
更に、IPv6通信によるサーバ公開もできるようにする。

画像00

NVR510のv6プラス通信設定については下記記事を参照。

ヤマハルータ「NVR510」で、v6プラス通信(IPv6 IPoE+IPv4 over IPv6)とひかり電話を使う
以前の記事で紹介したように、これまではNTTのHGW配下にヤマハルータ「RTX1210」を接続してv6プラスインターネット通信していた。 今回、メインのルータをヤマハ「NVR510」に変更して、v6プラス通信とひかり電話を1つの機器で行う構...

ネットワーク構成

NVR510のWAN(LAN2)を、ONUに接続。更に、このNVR510のLAN1に、RTX1210のLAN2とLAN3(PPPoE用)を接続。

フレッツ隼 光回線
     |
+---------+
|   ONU   |
+---------+
     | 
 WAN |
+---------+
| NVR510  | 
+---------+
LAN1 |.1   \
     |    ひかり電話
     |
+----+-+-------------+------+(192.168.1.0/24)
       |             |
       |       PC1  PC2  PC3 ... (DHCPで配布)
       |
LAN2/3 | .254/PPPoE(IPv4,NAT)
  +---------+
  | RTX1210 | 
  +---------+
  LAN1 | .1
       |
+------+--------------------+(192.168.2.0/24)
       |
     SEVER1 SERVER2 ... (固定又はDHCPで配布)
  • NVR510のWANは、config設定などでは「LAN2」と表現されているので注意。
  • 公開サーバは、RTX1210のLAN1配下に置く。
  • NVR510のLAN1配下のパソコンから、RTX1210のLAN1配下のサーバなどへのアクセスができた方が便利なので、RTX1210のLAN2経由でルーティングする。
  • RTX1210のLAN2とLAN3の2つを使っているが、一つに集めても大丈夫。

NVR510側の設定(準備)

NVR510のLAN1配下に、RTX1210ルータを接続する準備。

PPPoEパケット通過

RTX1210ルータからのPPPoEパケットが通過できるようにPPPoEパススルーを設定。

# pppoe pass-through member lan1 lan2 

IPv4通信ルーティング

NVR510配下のパソコンから、ルータや公開サーバの設定変更など出来た方が楽なので、IPv4パケットがRTX1210へ通信できるようにルート追加。

# ip route 192.168.2.0/24 gateway 192.168.1.254

IPv6ダイナミックルーティング

NVR510とRTX1210とのIPv6経路情報のやりとりを有効にする。

# ipv6 rip use on

IPv6状況の確認

下記コマンドで、IPv6の配布アドレスなど確認しておく。

> show ipv6 address
> show status ipv6 dhcp
> show ipv6 route
  • 「ひかり電話あり」解約なので、プリフィクスは /56 でDHCPv6により配布されている。一般的なIPv6通信では、/64 で利用するらしいので、8bit分の余裕があり256個までセグメント分割などで利用できる。実用上、十分である。

RTX1210ルータ設定(公開サーバ用)

公開サーバ用のRTX1210ルータを、NVR510のLAN1配下におく。

ルータ基本設定とPPPoE通信設定

RTX1210ルータをPPPoE接続で構築する。基本的には、下記記事で紹介の手順でGUIのウイザードから設定。

ヤマハルータ「RTX1210」でv6プラスを使う
以前の記事で紹介したように、これまでヤマハルータ「RTX1200」でv6プラスを使ってインターネット通信を運用していたが、今回、ついに「RTX1210」にリプレースして運用開始したので手順など備忘録を残す。 2020/5/3追記 IPv4通...
  • ルータのIPアドレスは 192.168.2.1 に設定。
  • LAN3をPPPoE接続で設定。

IPv4通信の設定

LAN2経由で、NVR510のLAN1側とのIPv4アクセスできるようにする。

# ip lan2 address 192.168.1.254/24

IPv6通信の設定

IPv6通信は、ヤマハのページに記載の 設定例(その3) を参考に設定。
IPv6は、LAN2経由で通信できるようにする。又、NVR510からDHCPv6及びRAによりDNS情報などが配布される。

# ipv6 prefix 1 ra-prefix@lan2::2:0:0:0:1/64
# ipv6 lan1 address ra-prefix@lan2::2:0:0:0:1/64
# ipv6 lan1 rtadv send 1 o_flag=on
# ipv6 lan1 dhcp service server

# description lan2 "IPv6 IPoE"
# ipv6 lan2 dhcp service client ir=on
# ipv6 lan2 secure filter in 101000 101001 101002
# ipv6 lan2 secure filter out 101099 dynamic 101080 101081 101082 101083 101084 101085 101098 101099
# ipv6 filter 101000 pass * * icmp6 * *
# ipv6 filter 101001 pass * * tcp * ident
# ipv6 filter 101002 pass * * udp * 546
# ipv6 filter 101099 pass * * * * *
# ipv6 filter dynamic 101080 * * ftp
# ipv6 filter dynamic 101081 * * domain
# ipv6 filter dynamic 101082 * * www
# ipv6 filter dynamic 101083 * * smtp
# ipv6 filter dynamic 101084 * * pop3
# ipv6 filter dynamic 101098 * * tcp
# ipv6 filter dynamic 101085 * * submission
# ipv6 filter dynamic 101099 * * udp
  • 【注意】このルータのLAN1に割り当てるIPv6アドレスは「ipv6 lan1 address ra-prefix@lan2::2:0:0:0:1/64」と指定して、上位のNVR510とは重複しないアドレスに設定。
  • このルータのLAN1配下の機器には、「ipv6 prefix 1 ra-prefix@lan2::2:0:0:0:1/64」により、上位のNVR510側とは別セグメント(2:0:0:0:0)のアドレスをRA配布する。
    config設定では最後に :1 と記述している。ネットワークアドレスなので、本来は :0 で良いはずなのだが、ルータ内部動作の関係上そのような設定が必要とマニュアルに書かれている。

IPv6ダイナミックルーティング

RTX1210とNVR510とのIPv6経路情報のやりとりを有効にする。

# ipv6 rip use on
# ipv6 lan3 rip send off
# ipv6 lan3 rip receive off
  • LAN3はPPPoE専用なので念のためrip送受信しないようにしておく。

外部公開ポートの設定

IPv4ポート公開

公開するポートを「静的IPマスカレード」で設定。下記記事を参照。

【RTX1210】外部公開ポート(静的IPマスカレード)の設定
前の記事で、ヤマハのルータ「RTX1210」でインターネット通信できるようにした。 次に、Webサーバを外部公開する為に、インターネット外部からアクセスできる公開ポートを設定したので備忘録を残す。 ネットボランチDNSサービス登録 インター...
  • GUIからの設定すると、静的IPマスカレードだけでなく静的フィルタの設定も同時にされる。
  • 公開サーバのIPv4通信は、PPPoE経由で行われる。(LAN2ポートが使われるわけではない)

IPv6アドレス公開

外部からのIPv6通信パケットは、ルータのIPフィルタ機能で防御されているので、サーバへのIPv6通信を通す設定をする必要がある。
今回の構成では、NRV510及びRTX1210両方のin側フィルタで通過する設定をする。下記記事も参考になる。

【RTX1210】外部からのIPv6通信を許可してWebサーバを公開
以前の記事で、IPv4通信ではWebサーバを公開できるようにした。 今回、IPv6からも外部公開できるようにしたので備忘録を残す。 公開するサーバのIPv6アドレスを確認 公開するUbuntuサーバのグローバルIPv6アドレスを確認。 $ ...

IPv6フィルタ(in側)の設定例。

ipv6 lan2 secure filter in 101000 101001 101002 101003 101010 101011
ipv6 filter 101000 pass * * icmp6 * *
ipv6 filter 101001 pass * * tcp * ident
ipv6 filter 101002 pass * * udp * 546
ipv6 filter 101003 pass * * 4 * *
ipv6 filter 101010 pass * 240b:111:222:300:8888:6666:fe83:1100 tcp * www
ipv6 filter 101011 pass * 240b:111:222:300:8888:6666:fe83:1100 tcp * https
  • IPv6通信は、LAN2ポート経由で行われる。

通信確認

NVR510のLAN1に接続したパソコンから、外部に対してpingが通るか確認する。

$ nslookup
> www.google.com
Server:     127.0.0.53
Address:    127.0.0.53#53

Non-authoritative answer:
Name:   www.google.com
Address: 172.217.161.228
Name:   www.google.com
Address: 2404:6800:400a:80c::2004
> exit

$ ping 172.217.161.228
PING 172.217.161.228 (172.217.161.228) 56(84) bytes of data.
64 bytes from 172.217.161.228: icmp_seq=1 ttl=55 time=8.86 ms
64 bytes from 172.217.161.228: icmp_seq=2 ttl=55 time=9.86 ms
^C
--- 172.217.161.228 ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1001ms
rtt min/avg/max/mdev = 8.869/9.365/9.862/0.505 ms

$ ping6 2404:6800:400a:80c::2004
PING 2404:6800:400a:80c::2004(2404:6800:400a:80c::2004) 56 data bytes
64 bytes from 2404:6800:400a:80c::2004: icmp_seq=1 ttl=52 time=8.22 ms
64 bytes from 2404:6800:400a:80c::2004: icmp_seq=2 ttl=52 time=8.39 ms
64 bytes from 2404:6800:400a:80c::2004: icmp_seq=3 ttl=52 time=7.99 ms
^C
--- 2404:6800:400a:80c::2004 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2003ms
rtt min/avg/max/mdev = 7.991/8.203/8.390/0.179 ms
$

ipv6-test.com」で、外部からの Ping と Website テストを実行。

画像12

考察

IPv4の方はスムーズに動いたが、IPv6でのネットワーク構築の知識が乏しかったので、最初はRTX1210側からのIPv6通信が動かなくて苦労した。ポイントはセグメント分けとダイナミックルーティングで、デフォルトルートの宛先が解決できていないようだった。

RTX1210のLAN側のIPv6アドレスがNVR510側と重複しないようにして、両方に「rip use on」を入れる事でOKとなった。

手動ルーティング

IPv6通信は、プラグアンドプレイで繋げば自動で動くようになるという設計思想のようである。参考までに、ripを使わない手動ルーティングでも試したので設定情報を残す。

【NVR510側】

RTX1210側へのルート指定(RTX1210のLAN2経由)

ipv6 route 240b:111:222:302::/64 gateway fe80::ae44:f2ff:fe6a:a63a%lan1

【RTX1210側】

NVR510のルータアドレスをデフォルトゲートウェイに指定

ipv6 route default gateway 240b:111:222:300::1%lan2

ちなみに、下記指定ではダメだった。

ipv6 route default gateway dhcp lan2
  • DHCPv6の仕様では、デフォルト・ゲートウェイ・アドレスを渡すことは出来ないらしい。(DNSサーバの情報など渡す為に使う)

その他

ipv6 lan2 address auto

上記設定すると、RAで取得したプレフィックスとインタフェースのMACアドレスからIPv6アドレスを生成してlan2インタフェースに割り当てる。

ipv6 lan2 dhcp service client ir=on

上記の ir=on は、DHCPv6クライアントで動作する時に、自アドレスの割り当てを要求しないというもの(MACアドレスを使ったリンクアドレスは自動生成される)。ir=offにするとアドレス要求するようになる。

ひかり電話なしの契約では?

ひかり電話あり契約では、DHCPv6で /56 のプリフィクスが配布されるが、ひかり電話なし契約では、RA通知で /64 のプリフィクス配布となる。今回説明したような /64 より上のbitでのセグメント分割ができない。複数のルータなどの機器を接続する場合には、どうするのだろう?

/64 より下で分割してもよいのだろうが、もしかしたら RIP によるダイナミックルーティングで、うまく対応できるのかもしれない???
IPv6もなかなか奥が深そうだが、今後も勉強していこうと思う。

IPv6の技術解説書「プロフェッショナルIPv6」の無料PDF版
IPv6を解説した技術書籍『プロフェッショナルIPv6』のPDF版が無料で読める。440ページもあり詳しく書かれている。素晴らしい!! 入手先 下記URLから入手できる。(ユーザ登録は必要) 参考 IPv6の“すごい技術書”が無償配布 ~内...

所感

IPv6通信の理解が足りなくて、config設定を呪文のように打ち込んで動かなかったりもしたが、いろいろ試した事で勉強になった。もっとスッキリした方法があるのかもしれないが、今後、試していきたい。

通信応答速度については、今回の構成により爆速に改善した。ルータを換えるだけで、これだけ変わるものかと感心。

参考

  1. 「v6プラス」対応機能 – RTpro
  2. IPv6 コマンド仕様 – RTpro
  3. ヤマハRTシリーズ IPv6機能 クイックスタートガイド
  4. IPv6ネットワーク構築 実技編
  5. 自宅ネットワークをIPv6対応にした話
  6. 第5回 IPv6アドレスをDHCPで割り当てる (1/2)
  7. 3 拠点間をヤマハのルータのVPN機能で常時接続する・・・NVR500のVPN設定準備その1
  8. nslookup で IPv6 のアドレスを調べる

コメント

タイトルとURLをコピーしました