2020年04月15日
RTX830でSoftbank光のIPv6高速ハイブリッド ~Softbank光レンタルルータとの共存~
IPv4通信をSoftbank光レンタルルーターE-WMTA2.3の「IPv6高速ハイブリッド」である独自IPv4 over IPv6トンネリング(実態はBBIXの4rd/SAM)で高速化しつつ、RTX830を導入してIPv6ネイティブ通信と自由なルーター設定で快適にインターネットを使おうという記事です。
前回まででメッシュWiFi導入により幾分とまともになった宅内WiFi環境。
物理バックホールとか熱対策とか実行して、いやー快適快適なWiFi生活。
しかしまだまだ課題はある。
一つはSoftbank光のレンタルルータが外せないこと。
厳密に言えば外せるのだが、Softbank光回線でも市販ルーターを使ったIPv4 PPPoE接続でのIPv4接続は回線混雑時は実測約3Mbpsである。
この時代なのにまだIPv4?IPv6は?と考えたお客さん、スルドイ。
だがそんな君はまだSoftbankの策略を知らない。。。
Softbank光のIPv6はIPoEで繋がるのだが、IPv4通信に限っては「独自のIPv4 over IPv6トンネリング方式」である通称「IPv6高速ハイブリッド」で高速化しており、
その「独自の」トンネリング方式はSoftbank光のレンタルルーターであるE-WMTA2.3でしか実現できないのである。
最初はそんなバナナと驚愕し、いや市販ルーターで使えるものくらい一つくらいあるだろう、とたかを括っていたが、調べれば調べるほど
ソフトバンク光の独自トンネリング方式4rd/SAMには全く対応する市販ルーターが見つからなかった。
つまり、Softbank光の回線契約をしている以上、高速インターネットを実現させるためにはSoftbank光のレンタルルーターであるE-WMTA2.3を使うしかないという結論なのだ。
しかもキャッシュバック受け入れちゃったから長期の5年契約だよ・・・今どきプロ野球でもこんな契約できるやつなんていないぞ。
その矢先に判明した
「自宅の回線ソフトバンクじゃん」
「あと4年契約残ってんじゃん」
「ソフトバンクってルーター変えられないじゃん」
問題の数々。。。
さぁそこは現実を早々に受け入れて設定に入っていこう。
2週間程度、あーでもないこーでもないと四苦八苦したので皆さんにはわかりやすく説明したいと思う。
今回の記事の前提環境:
・NTTからはGV-ONUのPR-S300HIをレンタルしている。
・ひかり電話を契約している。
・SoftbankからはSoftbank光契約でレンタルルーターとしてE-WMTA2.3をレンタルしている。
・YAMAHA RTX830を所有。<今回新規導入した
おそらく類似機器でも同じように行けるはず。
ひかり電話のありなしでは設定が大きく変わってくるので気をつけて。
上記の機器と、カテゴリ5e以上のLANケーブルを何本か用意する。
各機器の接続:
設定も上の接続図にいくらか書いたが、基本的には下記の通り:
・IPv4通信はE-WMTA2.3にまかせてトンネリングしてもらう。
・IPv6はネイティブでE-WMTA2.3を通さずに直接PR-S300HI側と通信させる。
たったそれだけのことなのだが、上手くいくために四苦八苦した。
・RTX830のLAN側をポートVLAN設定
・VLAN1はクライアント側でWiFiアクセスポイントなどを接続
・VLAN2はPR-S300HIへ接続
・RTX830のWANポートはE-WMTA2.3のLANポートと接続
・ルーティング(デフォルトゲートウェイ設定)
・IPv6パケットはVLAN2ポートへ
・IPv4パケットはWANポートへデフォルトゲートウェイ設定
・E-WMTA2.3からIPv6が降りてこないように、E-WMTA2.3ではIPv6機能をOFF
・E-WMTA2.3でDHCPサーバの払い出しを2台に限定して、RTX830にXXX:XXX:XXX:2をアサインする。
・E-WMTA2.3でDMZをXXX:XXX:XXX:2(RTX830)へ転送。
・PR-S300HIとE-WMTA2.3でセキュリティ(フィルタ)を全てOFF。
・PR-S300HIで念の為インターネット優先と、PPPoEは生きておくようにした。
当初はE-WMTA2.3配下にRTX830を置いていたのだがどうあがいてもIPv6通信させることができなくて右往左往していた。
ひかり電話契約の場合、PR-S300HIのONUに/48、ルーター部に/56が降りてきて、LAN側へ/60で払い出し、E-WMTA2.3からはすでに/64で配布されていることを気づかずに、あーれーおーかーしーなーーーと三日三晩ほどあちらこちらを彷徨っていた。
改めて各機器のIPなどをメモってたときにやっと気付いて、独りガッテン。
RTX830にそれ以上の配布権が無いのでDHCPサーバ立てても配下から通信できるわけないわな。
そんならPR-S300HIにつないでしまえ!
次に迷ったのが今回の接続のヒントになったnashippeさんのブログなのだが、あのブログ記事には3ポートルーターのRTX1200を使用例としており、記事中に2ポートのルーターを使用している方はタグVLAN対応スイッチで束ねることで実現できますよーと書かれていたこと。
RTX810は知らないがRTX830はLAN側の4ポートはそれ自体がスイッチ搭載だったのだが、nashippeさんの記事の書き方だと2ポートのRTXシリーズはポート分割できないような印象を持ってしまっていたので、別途スマートハブも導入してタグVLAN設定しなくちゃいけないんじゃないかと数日悩んでしまっていた。
調べたら結局RTX830のような2ポートルーターでも単独でポートVLANで解決できるじゃん、と。
でもMACアドレスがVLAN1側とVLAN2側で重複しているのが問題になるかな?と思いきや実際にはこの環境で3晩ほど経過したところで通信できない問題は発生していないので大丈夫なようである。
RTX830をポートVLANで特定VLANポートのMACアドレスを変更できる機能が備わっているかはまだ調べきれていない。できるようなら、今のままだと気持ち悪いからやっておきたいな。
あと謎なのは、
いくつか検索で見つけたサイトやYAMAHAのrtproサイトにも書かれている通りひかり電話契約がある場合でもHGW(PR-S300HIのルータ部のこと)を挟む場合はra-prefixでIPv6アドレスとってこいということだったので、RTX830のコンフィグはra-prefixでPR-S300HI側からアドレス取得しようとしたのだが、何度設定を変えても前半64ビットのうち60ビット以降の置き換えがうまくいかず。
PR-S300HI側のDHCPv6クライアント払い出し状況を見るとE-WMTA2.3のMACアドレスへの::XX10は払い出されているのにRTX830には何も払い出されている気配がないぞ? と気付いてからdhcp-prefixで設定したらすんなりRTX830に60ビットの::XX20がアサインされて通信できるようになった。
RTX830配下の機器はとりまdhcp-prefix@vlan2::1/64で無事開通。
これはNTT側のここ数年での仕様変更??
いつ誰がどこの仕様を変更したのかは謎であるが気持ち悪い。
インターネットの情報は有用だが情報を管理する人がいなくなれば間違った情報である。
今までもわかっていたことだが、今回改めて身に沁みてよく勉強になった。
とりまほぼ全てのコンフィグ内容を下記に列記しておく。
フィルタリング関係は入っていないので各自で自由に設定してみれば良いと思うよ。
lan type lan1 port-based-option=divide-network
vlan port mapping lan1.1 vlan1
vlan port mapping lan1.2 vlan1
vlan port mapping lan1.3 vlan1
vlan port mapping lan1.4 vlan2
vlan port mapping lan1.2 vlan1
vlan port mapping lan1.3 vlan1
vlan port mapping lan1.4 vlan2
ip keepalive 1 icmp-echo 10 5 dhcp lan2
ip vlan1 address 192.168.XXX.XXX/24
ip route default gateway dhcp lan2
ip lan2 address dhcp
ip lan2 nat descriptor 200
ipv6 route default gateway dhcp vlan2
ipv6 prefix 1 dhcp-prefix@vlan2::/64
ipv6 vlan1 address dhcp-prefix@vlan2::1/64
ipv6 vlan1 rtadv send 1
ipv6 vlan1 dhcp service server
ipv6 vlan2 dhcp service clientnat descriptor type 200 masquerade
nat descriptor address outer 200 primaryipv6 prefix 1 dhcp-prefix@vlan2::/64
ipv6 vlan1 address dhcp-prefix@vlan2::1/64
ipv6 vlan1 rtadv send 1
ipv6 vlan1 dhcp service server
ipv6 vlan2 dhcp service clientnat descriptor type 200 masquerade
nat descriptor masquerade static 200 1 192.168.XXX.XXX tcp www
dhcp service server
dhcp server rfc2131 compliant except remain-silent
dns host vlan1
dns service recursive
dns server dhcp vlan2
dns server select 10 8.8.4.4 any .
dns private address spoof on
上のXXXは任意なので好きな数字を決めてね。
dnsの8.8.4.4はグーグル先生のdnsだよ。
さてお約束のスピードテスト。
日曜日の夜23:15頃です。
サラリーマンはよー明日からの仕事の準備して寝ろやって時間帯ですね。
(測定はSpeed test by OoklaさんのIPv4スピードテストを使用:https://www.speedtest.net/)
(測定はWild SpeedさんのIPv6スピードテストを使用:http://wild-speed.jp/netspeed/)
全く問題は無い模様です。
あとプチノウハウを世のお父さんへ提供。
各種IPv6テストサイトで陥りそうな罠としては、
PR-S300HIもE-WMTA2.3もRTX830もフィルターでICMPv6を通す設定にしてあるのに、よくICMPが通らないって結果になっちゃうアレ、
(下記はhttps://ipv6-test.com/のテスト結果画面)
Windows10のファイヤーウォールは、
デフォでICMPv6通さない
のが理由ですからね!
IPv6接続テストするPCへのICMPv6接続結果が出てるだけだから、フィルター設定が間違っていない限りは実際にはルーターまではICMPのpingは通ってるはずだから、安心してね。
自分で気づくまで相当時間かかったわ。
ネットワークエンジニアがやってるようなブログではもう当たり前すぎて解説するまでもないという感じなんだろうけど、儂みたいななんちゃって一般家庭内臨時ネットワークエンジニアをやる必要のある世の中のお父さんは、
それが説明されないだけで1週間は寝られない日々が続くんだからね!
ちなみにWindows 10でICMPv6を許可する設定は普通にファイヤーウォールに新規ルール追加の手順でできます。
次の課題は外からのVPN接続かな。
ルーターまでIPv6とICMPv6が通っていれば大丈夫な気もするが、時間があるときにトライしてみよう。
ではでは世の中のお父さんたち、今日も頑張っていきまっしょい!!
この記事へのコメント
1. Posted by ななし 2021年03月28日 20:29
ソフトバンク光でこの手の記事において、ほぼ丸投げ式DMZを設定しているのですが、なにかバイブルになってる記事でもあるのでしょう?
丸投げ式DMZは特定IPアドレス向けのパススルーのようには使用できません。
正確には通信の始まりが外からのもの(例えばもしもRTX830配下に公開サーバーが有るような場合に、そのサーバーへの外からのアクセス)ではそのようになります。
しかし、通信の始まりがLAN内機器から始まった通信は、外から応答が来ても1段目ルータでまじめにルーティングされ2段目ルータに送信されます。この場合は、DMZは働いていません。
これはゲーム機が行うようなP2P通信でも同じです。つまりは、大概の通信において設定したDMZは機能しません。
外部に公開するサーバーが存在しない場合DMZは無意味なので設定する必要は無いと思います。
丸投げ式DMZは特定IPアドレス向けのパススルーのようには使用できません。
正確には通信の始まりが外からのもの(例えばもしもRTX830配下に公開サーバーが有るような場合に、そのサーバーへの外からのアクセス)ではそのようになります。
しかし、通信の始まりがLAN内機器から始まった通信は、外から応答が来ても1段目ルータでまじめにルーティングされ2段目ルータに送信されます。この場合は、DMZは働いていません。
これはゲーム機が行うようなP2P通信でも同じです。つまりは、大概の通信において設定したDMZは機能しません。
外部に公開するサーバーが存在しない場合DMZは無意味なので設定する必要は無いと思います。
2. Posted by be2jerky 2021年03月29日 14:05
>ななしさん
なるほど情報ご提供ありがとうございます。勉強になります。まさしくパススルーに相当する動作を期待しておりました。
あくまで日常のネット接続用途の99%ではDMZ機能を活用していないということですよね。
ただ、VPNなどで自宅LAN内アクセスをしたい場合は、各サービスごとにポートフォワーディングしていると設定が面倒なので、丸投げDMZ設定でも機能するという理解で良いですか。個別のフィルタリングはRTX830で設定しているので。
まだまだ勉強せねば!精進します!
なるほど情報ご提供ありがとうございます。勉強になります。まさしくパススルーに相当する動作を期待しておりました。
あくまで日常のネット接続用途の99%ではDMZ機能を活用していないということですよね。
ただ、VPNなどで自宅LAN内アクセスをしたい場合は、各サービスごとにポートフォワーディングしていると設定が面倒なので、丸投げDMZ設定でも機能するという理解で良いですか。個別のフィルタリングはRTX830で設定しているので。
まだまだ勉強せねば!精進します!