IPv6(IPoE)対IPv4(PPPoE)接続環境

先日の記事「古いMacBookの活用方法http://eiji-takagi.cocolog-nifty.com/notebook/2023/07/post-383a2f.html」で、もはや「レガシー」な(旧態依然とした)、IPv4・PPPoE接続環境を復活、再導入したことを報告している。ファイアーウォール・アプライアンスを繋いでいるが、実用的な利用はない。今回、試したかった、IPv6(IPoE)環境との速度比較を行ってみた。
しょっちゅう接続するアクセスポイントへの応答接続を比較したところ、IPv4・PPPoE接続環境は相当遅い。PINGが「パケ落ち」するわ、リモートデスクトップが落ちるぐらい。信じられなかった、以前はこういった環境を利用していたのに。
本当は用途に応じて、接続環境を厳密に分けたく、以前はフレッツ光ネクストのPPPoE接続×2チャンネルを活用していたのだが、IPv6(IPoE接続)は、回線に「紐づく」ため、インターネット接続環境を分けようとすると、もう一回線必要になり費用が嵩む。これは無理。そのため、併用できる、PPPoE接続環境を準備し直したのだが、実用にならないことが判明した。
この遅さの原因が、接続方式にあるのか、プロバイダの問題なのか、経路の問題なのか、まだ通信先一か所でしか試してないので、明確でない。利用検討していた用途に使えないことだけは、はっきりした。他に利用用途があるか?

[追記]
さらに、一番よくアクセスするWebサイトと、国内の代表的なFTPサイトへの、PINGの応答速度を比較してみたが、やはり、圧倒的にIPv4・PPPoE接続環境が遅い。IPv4だろうが、IPv6だろうが、原理的には、通信速度には関係ないと思うが、諸事情が絡んでいるのだろうか? 安かろう悪かろう?(混雑状況の差?)

|

古いMacBookの活用方法

「IPv4 over IPv6」対応してから、IPv4固定IPアドレスで使っていたプロバイダが廃業して、フレッツ光ネクストのPPPoE×2チャンネルが使わないままになっていたのを、別プロバイダのPPPoE接続で再利用することにした。ずっと使っているダイナミックDNSのドメインを、PPPoE接続IPv4環境のほうに移そうとして、はて、ダイナミックDNS更新をどのように実施するかが問題になった。
以前は、メール受信で更新しており、普段使っているメーラに、アカウント設定を入れて、定期的に受信させてやればよかった。普段使っているメーラは、IPv6環境で使っているので、そのアカウントは削除した。新たなPPPoE接続は、ファイアーウォール・アプライアンスで行うことにした。ずっと使っているダイナミックDNSサービスは、そのファイアーウォール・アプライアンスは対応していない。なにか適当なPCを動作させておけばよいのだが、現在の大原則として、無駄に電気を使わないというものがあり、必要のないときには電源を落としておきたい。かといって定期的に手動実施するのは面倒。そうすると、タイマー機能で電源を入れられるPCが良い。
残念ながら、手持ちの Windows や Linux を入れてあるPCで、その手の機能を持つものはなかった。ふと、思いついたのは、もしかして、Apple Macintosh には、自動起動の機能があるのではないかということだ。で、調べてみたところ、ありました。例えば、このサイトの記事「指定した時間にMacを自動的に起動・再起動・システム終了させる方法」はどうだろう。
以前、iTunes を使っていた、Core2Duo の MacBookPro が予備として、使わずに置いてある。試してみたところ、うまく行った。Macintosh は、ハードウェアとOSが一体になっていてわかりやすいのは、ある種メリットかもしれない。毎日、自動起動、スリープさせて、その間に、ダイナミックDNSを適当なコマンド実行で更新すればよい。コマンド実行は、Mac の場合、Windows の「タスク・スケジューラ」のような標準ユーティリティはないが、普通に、UNIX流の昔ながらの cron が利用できる。
コマンドラインには、アカウント情報を含める必要があるので、できれば、SSL暗号化に対応したい。Mac で標準で使えるコマンドを知らべたところ、curl コマンドが https を使える。(FTPS に対応したコマンドは入っていなかった)
うまくダイナミックDNSサービスに現在のIPアドレスを伝えられているかどうかは、ダイナミックDNSサービスのログで確認できる。定期実行ジョブが毎回実行されているかどうかは、Mac の場合、標準で cron のログは取らない設定になっているが、cron 実行者にメール通知される。これまた、昔ながらに、ターミナルを開くと、メールが来ていると通知があるので、mail コマンドで確認すればよい。Mac での cron 利用については、例えば、「MacでCron」といった記事が参考になる。
Core2Duo では、iTunes の操作が重すぎて、使いたくなくなって、もう少しマシな機種に替えたが、この程度のサーバ用途であれば十分すぎるだろう。逆に cron で curl コマンドを実行するだけでは役不足である。今後、IPv4環境でできることを少しずつ増やしていきたい。

|

「IPv4 over IPv6」対応について(その5:サーバ公開について考える)

以前のPPPoE接続によるIPv4環境では、外部からVPN接続したり、サーバ公開したりできるように設定していた。IPoE接続によるIPv6環境では、こういったことがどうなるかは度外視して移行した。(どうしても必要があれば、以前のIPv4環境を動かせばなんとかなる)
まず、IPv6環境でのサーバ公開はどうなるか理屈を考えてみた。

一番素直なのは、IPv6でサーバ公開することだろう。適当なDNSサービスに、AAAAレコードを登録して公開すればよい。問題は、その場合、多くのIPv4環境からはアクセスできないことである。(*1)
IPv4とIPv6は、言わば「異次元」であり、両方の世界を行き来するためには、異次元世界を繋ぐ「扉」から出入りする必要がある。
(その「扉」の一つが「IPv4 over IPv6」接続サービスというわけで)

(*1) 以前使っていた、IPv4+PPPoE接続のファイアーウォール・アプライアンス×2台(フレッツ光ネクストの複数セッションを使って二つのプロバイダに接続)と、MVNO(NTT docomo系)のSIMを挿したスマートフォンのテザリングで試してみたが、いずれも、IPv6への接続はできないようだった。確認方法は簡単で、nslookupコマンドのサーバ指定で、Google Public DNSをIPv6アドレスで指定して、名前解決できるか確認しただけ。

IPv6でサーバ公開したのであれば、同じくIPv6環境からであれば、問題なく繋げるだろう。問題はテスト環境である。
フレッツ光ネクストでは、PPPoEセッションを二本確立して、二つのプロバイダに接続することができたし、MVNOのSIMを使って、スマートフォンのテザリングや、USB接続のデータ通信端末を使うことができた。IPv6については、こういったものは使えない。テスト環境を導入しようとすると、例えば、NTTの光回線をもう一本引くことになるわけで、そんな贅沢はできかねる。(誰か他の人のIPv6接続環境を借りればよいが、当てがない)

では、IPv4接続環境向けにサーバ公開してはどうか? これなら、テスト環境は十分ある。
問題はIPv6環境でIPv4環境向けにサーバ公開できるのか? ということになる。「IPv4 over IPv6」接続ができればできるらしい。といっても、その実装方式による、と。
国内での「IPv4 over IPv6」接続には、大きく分けて、transix方式(DS-Lite)とMAP-E方式(V6プラス)がある。どちらも、一つのIPv4アドレスを、ポート割り当てで分けて、複数利用者で共有する点は同じだが、この変換を接続事業者で行う(transix方式)か、利用者の機器で行う(MAP-E方式)かが異なる。つまり、transic方式の場合、接続事業者にやってもらわないと、「IPv4 over IPv6」トンネルを使って、自宅サーバをIPv4世界に公開することはできない。(transix方式では、原則、自宅サーバの公開はできない) 一方、MAP-E方式であれば、自宅のIPoE接続機器の設定によって、サーバ公開できる。
うちは、MAP-E方式の「OCNバーチャルコネクト」なので、IPv4環境に向けてサーバ公開しようと思えばできなくもないわけである。

だが、ちょっと待った...

まず、うちの場合、「IPv4 over IPv6」接続は、NTT西日本レンタルのホームゲートウェイ「RX-600MI」にやらせているが、この機器では、その種の設定ができないようなのである。
IPv4世界から、自宅のIPv6世界へ入るための「扉」は、IPv6のIPoE接続で接続事業者から割り当てられた「IPv4アドレス+ポート範囲」になるわけだが、接続事業者(IPv4)側の「扉」は開いていても、自宅(IPv6)側の扉は開いてない。MAP-E方式では、IPv4とIPv6の変換は利用者機器で行う必要がある。つまりサーバ公開するためには、接続事業者側で開かれた、ある「IPv4アドレス+ポート番号」宛ての通信を、自宅のどの機器のどのサービス[ポート]に割り当てるか(繋ぐか)の設定が必要になるはず。この設定が、NTTのホームゲートウェイではできない(*4)のである!(一般家庭ではサーバ公開や外部からのVPN接続なんぞしない、という割り切りだろう)

次に、接続事業者から割り当てられるポート番号は、普段あまり使われないような番号であり、いわゆる「ウェルノウン・ポート」は使えない。自宅のWebサーバを公開するにしても、80番ポートは使えないので、割り当てられたポートに従って、Webサーバの設定を変更する必要がある。これはちょっと、と躊躇する。VPNサーバの公開であれば、むしろ、そのほうが[安全上都合]よいのかもしれないが、...

自分の今のところの結論としては、IPv4環境(PPPoE接続)、IPv6環境(IPoE接続)それぞれでサーバ公開すればよい(内部的には、どちらからでも同じサーバに接続されるようにする *2)、ということになる。自宅へのVPN接続については、モバイル接続(「ケータイ」のネットワーク)がIPv6に移行するのを待ちたい(*3)。それまでは必要に応じて、レガシーなIPv4環境を使うことにしたい。
(あくまで「今のところの」結論であって、もう少し考えたい)

(*2) 公開サーバについては、IPv4とIPv6で別々のゲートウェイを設定すればよいか? ただし、ややこしいのは、公開サーバがインターネットにあるIPv4サイトに対して通信を開始する際は、IPv6側のゲートウェイ(IPoE接続+「IPv4 over IPv6」)を使いたい。つまり、IPv4界から、公開サーバに対して開始されたセッションについてのみ、IPv4側のゲートウェイ(PPPoE接続)で通信したいわけで。そういったルーティング設定はできるのか? (ポリシーベースルーティング? ) 難しければ、とりあえず、単純に、IPv4とIPv6で別個のゲー トウェイを設定すればよいか。

(*3) IIJmio は、すでにIPv6に対応している! 大手キャリアの対応はこれからぼちぼち始まるといったところ。ただし、NTT docomoの「SPモード」はすでに対応しているらしい。残念ながら、MVNOまで広がるのはもう少し時間がかかりそうだ。

[追記]
結局、とりあえず、ファイアーウォール・アプライアンスと、仮想化サーバを「レガシー」なIPv4環境として残し、ファイアーウォール・アプライアンスからプロバイダにPPPoE接続するようにした。IPv4はDMZセグメントのみとし、INTセグメントはIPv6環境に接続することにした。IPv4環境は普段電源を落としておき、必要時のみ電源を入れるにしても、自宅LAN環境が成り立つような結線とした。

仮想サーバを動かして、内向けインターフェースにTCP/IP v6プロトコルを追加してみた。他の[あくまで比較すれば]新しいサーバとは異なり、Windows 2003 R2サーバだけは簡単にはいかないようだった。IPv6アドレス指定であれば、PINGは通るが、名前解決はIPv4のみだし、参加しているドメインのDNSサーバには他と異なりAAAAレコードは登録されていない。なにか細かい設定が必要なのかもしれないが、第一、インターフェースのプロパティで、TCP/IP v6プロトコルのプロパティがグレイアウトされていて、触れない(コマンドラインで何か設定する必要があるのかもしれない)。

[さらなる追記]

長年使っている大手プロバイダから、IPv4接続になっているのでルータ設定を見直せといったメール通知が届いたので驚いた。恐らく、サーバ環境の整備で、以前のPPPoE接続を並行利用したため、その接続記録から判断されたのではないかと思う。一般ユーザーにこのような通知が届くというのは、大手プロバイダも本気でIPv6移行を進めているということではないか。その一方で、フレッツのマルチセッションで利用していた別のプロバイダ(PPPoE接続固定IPアドレス割当て)は、IPv6移行できず、近々廃業の運びになっている。
今でしょ。今こそ、ダイアルアップ接続(従量課金制)から、PPPoEフレッツ常時接続(月額固定料金制)への移行期に続く、プロバイダ事業の大きな変革期に来ている、ということではないか。

(*4) またしても追記

この設定がNTTのホームゲートウェイでもできるんです!

ダウンロードした「RX-600MI / PR-600MI 機能詳細ガイド Ver.2.1.1」では、

その他の設定例
外部にサーバを公開するには

本商品に接続したサーバをインターネットへ公開できます。
...
「詳細設定」-「静的NAT設定」をクリックする
...」

となっているのだが、実際設置されたRX-600MIのWeb管理メニューを見ると、「詳細設定」に、「静的NAT設定」は存在しなかった! ええっ!!(どういうこと? 事前に調べていたのに...)

[参考URL]
https://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q14232148154
https://iori016.hatenablog.com/entry/ar1996312

これらの記事のURLから「IPoE IPv4設定 ソフトウェアバージョン 4.0.0」の設定Webページが開いた。で、自分に割当てられたグローバルIPv4アドレス+ポート番号を、QNAPの管理Webに対応するよう設定して、MVNOのSIMを挿したスマートフォン(もちろんWi-Fiはオフにしてある)のブラウザで、それを叩いたところ、QNAPの管理Webが開いた。

01  02  03  04

なお、別のNASで、ダイナミックDNSサービスを有効にしており、...mynetgear.com のドメイン名が有効になっている。ダイナミックDNSサービスは、 "No-IP"サイトが利用されているが、ここに表示される自分のIPアドレスはv4で、「IPv4 Over IPv6」でサーバ公開(IPv4)用に割り当てられたのと同じものになっている。(テスト時以外は電源を落としているので問題なし)

|

「IPv4 over IPv6」対応について(その4:セキュリティ対策強化)

IPv4+PPPoE接続では、ホームゲートウェイのONU部にファイアーウォールを接続していたのは、自宅ネットワーク環境で各種「サーバ」を常時稼働させており、外部からアクセスできるようにしていたからだが、[主に電気代節約のため]それはやめてしまったので、ファイアーウォールは必要ないと割り切った。そもそも、IPoE接続+自分が使っているプロバイダの「IPv4 over IPv6」接続(OCNバーチャルコネクト)に対応した、ファイアーウォールがあるのか?
Fortigateは対応している、といっても、一般家庭の環境には対応してないことについては、すでに書いたとおりで、ただし、ホームゲートウェイに「IPv4 over IPv6」トンネルを任せて、IPv4通信はそれにルーティングさせれば、ほぼこれまで通りに使えなくもない。(ただし、問題は外部からのアクセスをどうするかだろう。当然、これまたIPv6化したい。これについては後の課題とする) この場合、ホームゲートウェイのLANポートには、ファイアーウォールのWANポートのみ接続することになる。
ファイアーウォールの内側をIPv6化するのに、一番簡単な方法は、ファイアーウォールでND Proxyを動かすことだろう。試してみたところ、この場合、ファイアーウォールの内側は、ホームゲートウェイのLANポートと同じ/64のプレフィクス(ONUまで来ている/56のプレフィクスの先頭部分)が割り当てられる。ファイアーウォールのLANポートに繋いだPCのIPv6ネットワーク構成を確認すると、 ホームゲートウェイのLANポートに接続した場合と同様に適切に設定されており、問題なくインターネット利用できる。ここまでできれば、あとは、ファイアーウォールで適切にアクセス制限、その他、してやればよいだろう。

ホームゲートウェイのLANポート(ファイアーウォールのWANと同一サブネット)にファイアーウォール以外繋がないのであれば、これで十分な気がする。しかし、自分の場合、いまさら、ファイアーウォールは必要ないと考えており、使うにしても、ホームゲートウェイのLANポートと併用したいとなると、同じプレフィクスが割り当てられるのは気に入らない。ファイアーウォールの内側は異なるプレフィクスが割り当てられるようにしたい。この場合、ファイアーウォールでND Proxyを使うのではなく、ホームゲートウェイからルータ広告(RA = Router Advertisement)を受け取るように設定する必要がある。Fortigateで試してみたところ、FortigateのLAN側に、別の/64プリフィクスを与えることができたが、ND Proxyの場合と異なり、これだけではDNSサーバの情報をうまく受け取ったり、LAN側に配布できなないようだった。RAでもDNSサーバ情報を受け取れる規格はあるが、実装されていないらしい。FortigateのLANポートに接続したPCのネットワーク構成を確認すると、DNSサーバがIPv4アドレスでファイアーウォールを指示しているだけになっていた。
この場合、DHCPv6を使う方法があるのかもしれないが、よくわからないので、とりあえず、システムが利用するDNSサーバに、ホームゲートウェイに設定されているのと同じIPv6アドレスを手動設定して、LANインターフェースのDHCPサーバ設定で「システムDNSと同じ」にしておくと。これで、ようやく、ファイアーウォールのLANポートに接続したPCのネットワーク構成で、IPv6でもDNSサーバが設定されるようになった。(これはあくまでごまかしであって、手動で設定しなくても、うまく上位から情報を得て設定されるようにすべきだろう)

|

「IPv4 over IPv6」対応について(その3:各端末のIPv6対応について)

IPv4ベースのネットワークであれば、通常、LANはプライベートIPアドレスで構成しているので、インターネットから自分のLANへはルーティングされず(通信経路が成り立たず)、通信できない。
これがIPv6ベースとなると、基本的には、グローバルとか、ローカルとかいった区別はないので、自動構成に任せていると、どこからでも通信できるよう(「筒抜け」)になってしまう恐れがあるわけだ。
さて、ごく一般的な家庭で、フレッツ利用で、IPoE接続に対応したホームゲートウェイを導入した場合どうなるか?

ホームゲートウェイのLANポートにPC等を接続した[光電話ありの]場合、ONU配下には、/56のプレフィクスが配布され、LANポートに繋いだ自宅LANは、/64のプレフィクスになっている。自動構成されたIPv6アドレスを見るかぎり、インターネット通信に開かれているように見える。そこを適切に制御するのが、ホームゲートウェイの役割になるわけだ。

「IPv6パケットフィルタ設定(IPoE)」のデフォルト設定を見ると、
 「IPv6ファイアウォール機能」=有効
 「IPv6セキュリティのレベル」=標準
になっている。この設定ページの説明によると、
IPv6ファイアウォール機能が「有効」でかつ、セキュリティレベルが「標準」の場合、(中略)フレッツ光ネクスト網内で折り返す通信(中略)は許容し、その他のIPv6通信を使用したインターネット側からの通信を拒否します」となっている。
よくわからないのだが、NTTのフレッツ網利用者(自社のお客さま)には悪さをする輩はいないということなのだろうか?
とりあえず、その下にある、なにも設定されていなかった
「IPv6パケットフィルタ設定(IPoE)」に、「通信方向」IPoE->LAN のすべての通信を拒否する設定を追加してみた。
この場合、ONU配下の/56のプレフィクスによって通信経路(ルーティング)は確立されているが、ホームゲートウェイがこれを分割した、/64プレフィクスのLAN側への通信は拒否してくれる、ということになるか、と。
なお、このように設定しても、ひかり電話での通話に問題ないことはテスト・確認済み。(恐らく、ホームゲートウェイ内では、ひかり電話の音声IP通信はすべて通すよう、例外になっていて、どんな設定をしても影響を受けないようになっているのだろう)

とはいえ、なにも制限されていないわけではなく、標準で「SPI設定」が有効(無効にはできないように)になっている。(SPI = Stateful Packect Inspection *1
* * *

自宅LAN内には、古い機器が色々あって、すべてをIPv6対応できるわけではないことは最初からわかっていた。それでも、やはり、自分の信念「IPv6がスタンダード、IPv4はレガシー」に従えば、できる限りIPv4通信は使わないように努めたい。

インクジェット複合プリンタは、手持ちのEPSON製、BROTHER製とも、当然のごとく、IPv4にしか対応してない。
よくわからないが、古めのEPSON製は、NTTのホームゲートウェイの無線LANだと接続失敗するし、有線LAN接続でもDHCPで失敗するし、手動設定してもダメ。諦めて、USB接続で使うことにした。

うちの古い、東芝のREGZAシリーズのテレビやHDDレコーダーには、ネットワーク通信設定があるが、当然のように、IPv4にしか対応していない。よくわからないが、すでに東芝REGZAシリーズ向けのサービスを停止しているフレッツ光TVの設定をしてみたあと、「システム情報」を見ると、IPアドレス、DNSサーバが、IPv6の設定になっていた...(「フレッツ」の設定をしたからか?)
これらで使っている国内メーカーのNASも全然対応しておらず。それに引き換え、QNAPは自分好み...

QNAP NAS機は、ファームウェア(QTS)4.3.x系と、5.0.x系があるが、どちらもネットワーク設定にIPv6がある。これを有効にしてあれば、Windows PC からホスト名にPINGを打つとIPv6で通信していることがわかる。(ただし、DNSサーバの指定はIPv4アドレスでしかできないが... また、一台、古めの機種があり、これはQTS 4.3.x系まで上げても、IPv6通信はできないような?)
さらに、QTSでは「RADVD」Router ADVertisement Daemon なるサービスが利用できる。

The Router Advertisement Daemon (RADVD) sends messages required for IPv6 stateless auto-configuration. It also sends router advertisement (RA) messages periodically to the LAN.

複数LANポートのQNAP NAS機をうまく使うと、ルータなしの閉域LANで、IPv6自動構成ができる、といった活用方法があるか?
(最近のQTSには、他にも、注目すべきネットワーク機能があるようだ、が、詳細までは調べていない)

PCやサーバについては、各種OSを使っているが、一番古いものでも、Windows VISTA であって、すべてIPv4とIPv6のハイブリッド設定に対応している。仮想化サーバがどうなるかはまだ調査してない。(その前に、まだネットワーク構成が固まってない)

自分が使える「携帯」は次のとおり:
・2017年末発売の台湾メーカー製スマートフォン(Android 8.0.1)
・2015年中旬発売の中華8インチ・タブレット(Android 6.0)
・2016年中旬発売の中華7インチ・タブレット(Android 5.1.1)
・iPhone SE MP832J/A(iOS 15.2)

これらはいずれも、モバイル通信が必要な場合は、MVNOのSIM(NTT docomo系の、いわゆる「格安SIM」)を使用している。割り当てられるIPアドレスはIPv4で、提供事業者に割り当てられている範囲のもの(上位はNTTコミュニケーションズ)。
自宅の無線LAN(NTTひかり電話用ホームゲートウェイ)接続では、IPv6アドレスが自動構成され、同時にDHCPによりIPv4アドレスが割り当てられている。
(なお、音声通話とメールは、Ymobile!のガラケーを使っているが、この機種はWeb閲覧が可能で、ソフトバンクがAPNICから割り当てを受けたIPv4アドレスが割り振られていた)

要するに、恐らく、各種「携帯」のOSはIPv6に対応しているが、国内キャリアの携帯向け通信はIPv4に留まっているのではないかと推察する。

*1) NEC Atermシリーズのユーザーズマニュアルから引用:
ダイナミックポートコントロール(SPI)
LAN側の子機(パソコンなど)がアクセスすると、それに応じてWAN側のポートが開き、通信を開始します。データの受け取りが終わるか、または内部のタイマで設定してある一定の時間を超えると、自動的にWAN側のポートが閉じます。このような動的開閉制御をダイナミックポートコントロールと呼びます。本機能により外部へのアクセスが行われていないときは、ポートがすべてフィルタリングされていますので、外部からの不正なアクセスを防ぐことができます。

|

「IPv4 over IPv6」対応について(その2:基本的なことの確認)

「IPv4 over IPv6」について十分理解していないまま、NTT西日本の勧めるままに、必要なかったかもしれない、ホームゲートウェイ機の交換に応じたのは、前機器は、フレッツ光ネクスト導入から10余年の長きにわたって使い続けていたので、最新の機器に置き換えるのも悪くないだろう、どういうものか確認してみたいという考えからである。最初のうちは、インターネット接続はIPv6(PPPoEをやめてIPoE接続)にするが、内部はIPv4のままにしようと考えていた。が、「工事」待ちの途中から、この際、内部も含めて、IPv6がスタンダード、IPv4はレガシーという考えに切り替えた。
ホームゲートウェイが「PR-S300SE」から「RX-600MI」に交換されてから、どのようなネットワーク構成にするか試行錯誤したが、結局、ごくごく一般的な構成、すなわちホームゲートウェイにすべて任せるという構成に落ち着いた。
IPv4のときは、ホームゲートウェイはあくまで光電話用であり、そのONU部にスイッチングハブを噛ませ(*1)、ファイアーウォールアプライアンスからプロバイダにPPPoE接続させ、WAN、DMZ、INTの各「セグメント」に分けていた。IPoE接続に変えて、ありふれた構成になったが、その場合、IPv6はどのように割り振られているのか、確認することにした。

RX-600MI」の管理Webを見てみると、「DHCPクライアント取得情報」に、
「現在の時刻」現在の時刻(下記、SNTPサーバに同期しているようで、正確な日時を示している)
「DHCPv4クライアント取得情報(IPoE)」IPv4アドレス/マスク長(/30、これは何に使っているのか?)、リース時間
「DHCPv6クライアント取得情報(IPoE)」モード、IPv6プレフィックス/56)、リース時間、DNSサーバアドレス、SNTPサーバアドレス
の各項目値が表示されている。
うちで使っているプロバイダの「IPv4 over IPv6」接続は「OCNバーチャルコネクト」であり、このDNSサーバ、SNTPサーバは、OCNのものらしい。
ホームゲートウェイ「RX-600MI」のLANポートに繋いだ、DHCP構成のPCを見てみると、DNSサーバのIPv6アドレスは、ホームゲートウェイになっており、「RX-600MI」がDNSプロキシ(DNSリレー)として動作しているらしい。(残念ながらNTPサーバとしては動作してないようだ)
ネット検索で調べた限りでは、光電話ありの場合、ONU配下には、/56のプレフィクスが配布され、これがホームゲートウェイで/60に分割されて配布されるとのことらしい。これは、IPv6に対応したルータをホームゲートウェイに繋いだ場合、そのようなルータ広告(RA)が行われる、ということか? 自分の場合は、ごくありふれた構成として、ホームゲートウェイのLANポートに直接PC(とテストのためにファイアーウォールアプライアンス)を繋いだだけで、これらのIPv6ネットワーク自動構成結果を見ると、プレフィクス長は64ビットになっている(*2)←[追記](*3)
ということは、ごく一般的な家庭がNTT東西のフレッツのIPv6接続でインターネット利用をする場合、プレフィクス/56で割り当てられるIPv6アドレスのうち、ごくごく一部しか使われないということか?(で、使われず、余る分はどうなるのか?)
「DHCPv6サーバ払い出し状況」には、
「配布情報」DNSサーバアドレス、SIPサーバアドレス(どちらもホームゲートウェイのIPv6アドレス)、内線REGISTERドメイン(ntt-west.ne.jp)
が出ている。
「DHCPv4サーバ払い出し状況」も同様だが、こちらには、端末に払い出されているIPv4アドレスが多数列挙されている。「DHCPv6サーバ払い出し状況」でこれがないのは、各端末OSが、[ホームゲートウェイから、/64のプレフィクスのRAを受けて]各自のIPv6アドレスを自動構成しているからで、それにDHCPv6サーバを利用しているわけではない(DNSサーバのIPv6アドレスのみホームゲートウェイからDHCP6で取得している?)からだろう。
そもそも、広大なIPv6ネットワークでは、IPv4のような、グローバルIPアドレス空間、プライベートIPアドレス空間といったものは[基本]ない。本来は、このほうがわかりやすいと思うが、IPv4のサブネット分割に慣れて頭が凝り固まっていると、なかなか理解しにくいかもしれない。

(*1) 以前のホームゲートウェイ「PR-S300SE」は、ONU本体内蔵だったが、小さいカバーを開けると、ONU部分のLANポートがあり、上部のルータ/IP電話アダプタ相当部分からRJ45ケーブルで接続されていたので、これを外して、スイッチを接続すれば、他機器をONU部分に接続し、かつ、光電話も使うことができた。RX-600MI」は、このような構造にはなっておらず、スイッチング動作のLANポートの下に、ONU接続用の「WANポート」があるのだが、別途ONU機器(回線終端装置)を手配 してこれを使うようなことはせず、あえて、ごく一般的な構成として、光ファイバーの先端を差し込む「小型ONU」を本体[のLINEポート]に挿す構成にしている。(説明書では、LINEポートを使用している場合は、WANポートは利用できないことになっている、が、実際どうなっているのか未確認。LANポートとして利用できるとありがたいのだが...)←試しにPCを直結してみたところ、リンクアップしなかった。

(*2) 試しに、ホームゲートウェイ交換以前にいじくっていた、ルータ(SEIL X1)を繋いで確認してみたのだが、やはり、内側セグメントもプレフィクス/64になっていた...(自分の設定が悪いのか? サンプル通りの設定なのだが...)

(*3) 少し試したいことがあって、以前使っていた、IPv4+PPPoE接続のファイアーウォール・アプライアンス×2台(フレッツ光ネクストの複数セッションを使って二つのプロバイダに接続)のWANポートを、ホームゲートウェイのLANポートに繋いで、起動して、試したあと。「RX-600MI」の管理Webを見たところ、これまで空だった「DHCPv6サーバ払い出し状況」に、二件、/60のプレフィクスが払い出された記録が残っていた...(どういう理屈なのかよくわからない)

|

「IPv4 over IPv6」対応について

IPv4アドレスの枯渇が叫ばれて久しく、IPv6自体の対応は、Windows OSの場合はXPに始まり、VISTA以降は最初からデュアルスタックで対応していたが、TCP/IPのプロパティでIPv6のチェックを外して使っていなかった。
昨年あたりから、多くのプロバイダで、「IPv4 over IPv6」対応が進み、パソコン通信時代から契約している、うちの使っているプロバイダからも、2022年2月中旬に、頼んだ覚えはないが「v6サービス」を「IPv4 over IPv6」に変更した旨、通知が届いたので、これは、これ以上 IPv6 を無視していることはできないな、とIPv6について色々と調べてみた。
NTTに問い合わせたところ、十年以上使い続けてきた光電話ホームゲートウェイ「PR-S300SE」を、対応機器に変更するという。ところがその「工事」の日程が、土日祝だと一ヶ月後しか予約できず、しかも、多少工事費用が必要になるとのこと。仕方ないので、それで承諾したが、待っている間に、既設の古いホームゲートウェイ機に、いくつか機器を繋いでは、試していた。うまくいったもの、いかなかったものがあったが、とりあえず、「IPv4 over IPv6」接続により、基本、IPoEでの通信は確立できた。
交換されるホームゲートウェイ機は「RX-600MI」になるということだったが、この機器は、自身が「IPv4 over IPv6」接続に対応しており、オプションの無線LANカードを付ければ、これ一台で済ませる構成もできそうなので、ぜひ試してみたく、月額に多少上乗せされるが、期待して無線LANカードオプションを追加することにした。
ようやく、ホームゲートウェイ機が交換されて、果たして、それに無線LAN接続してみたところ、IPv6サイト(Google、YouTube等)は閲覧できるが、IPv4サイト(Yahoo!等)が閲覧できない。ホームゲートウェイ機交換待ちの間に使っていた無線LANルータへの接続では、これまでどおり、IPv6/IPv4サイトとも問題なく閲覧できている。
RX-600MI」は「IPv4 over IPv6」接続対応ではなかったのか、これでは、交換して無線LANオプションを追加した意味がないではないか、と、少々戸惑ったのだが、少し考えて大雑把に理屈を理解した。
「IPv4 over IPv6」は、プロバイダによって、方式が異なるものがあり、うちの場合はMAP-E方式の「OCNバーチャルコネクト」になっている。「IPv4 over IPv6」接続用「トンネル」は利用者の機器から確立され、それに使われるグローバルIPv4アドレスは、これまでの PPPoE接続同様に、動的に一個だけ割り当てられることになる。
ホームゲートウェイ機「RX-600MI」は、LANポートに「IPv4 over IPv6」接続対応機器が接続されていると、どうやら、そちらを優先するようで、自身は、「トンネル」確立に必要となるグローバルIPv4アドレスが利用できず、「IPv4 over IPv6」接続ができなくなるらしい。
交換工事待ちの間に、古いホームゲートウェイ機に接続して使っていた「IPv4 over IPv6」接続対応無線LANルータ機へのLANケーブルを引っこ抜いて、「RX-600MI」を再起動したところ、あっさり、単体で「IPv4 over IPv6」接続できるようになった。
冷静に考えれば当たり前のことなのだが、少々がっかりした。というのは、自分としては、「IPv4 over IPv6」接続対応機器を複数試してみたく、これだと、いちいち繋ぎなおしてホームゲートウェイ機を再起動しないといけない、というのは面倒で、テストの間、インターネット利用ができない恐れがある。(かといって、いまさらPPPoEでのIPv4ベースの接続[以前のファイアーウォール環境がそのまま平行稼働できることは確認済み]を復活させたくはない。IPoEは最早基本でしょう)
JPNE(日本ネットワークイネイブラー)が提供するtransix方式(DS-Lite)の場合、この点どうなるか? それ以外にも、双方メリット/デメリットがあるようなので、どちらがよいとは一概には言えない。(サーバ公開やVPNについてはこれから検討する)

RX-600MI」は、「PPPoEパススルー」設定はできるようになっているので、同様に、「IPoEパススルー」設定があれば、わかりやすいと思った。下調べしていた段階では、そういった設定があるものと思っていたのだが、実物を触ってみると、そのような設定がなかったのが残念だ。家庭用の機器は「割り切った」設定しかできないので、どのような想定で動作するようになっているのかを理解する必要がある。

IPv6については、この件で、ようやく思い立って色々調べたにもかかわらず、こんなことに引っかかってしまったのは、真の「知識」として身に付いていなかった(せいぜいテストやクイズ向けの知識でしかなかった)ということだろう。

なお、自宅のネットワーク接続機器のIPv6対応を調べてみたが、うちの東芝の液晶テレビはまったく対応していなかった。(最近のSONYのBRAVIAは対応していることを確認済み。ただし、これもIPv6については細かい設定はできず、あくまで、想定される一般的な環境向けの設定になるらしい)
Amazon Fire TV Stick の第三世代とその次の4K対応版ともに、IPv6アドレスは割り振られていなかったが、DNSサーバはIPv6で使えているようだ。(Gogle Chromecast 第三世代を入手したのでこれから調べる)

個人的には、今後は、IPv4は「レガシー」として、IPv6を「スタンダード」としていくのが正しい対応だと思う(間違いない!)。

[追記]
しばらく「RX-600MI」単体で使っていたのだが、既存環境(EPSONのスキャナ付きプリンタ等)でいくつか不具合が発生し、ホームゲートウェイ交換前に使っていた「IPv4 over IPv6」接続対応機器を使うように戻した。ということは、なにも、ホームゲートウェイを交換する必要はなかったし、月額プラスになる無線LANカードオプションを追加する必要もなかった(とりあえず無効化)、という結論なのだが、試してみたかったのだから、これはこれでよい。(まだ他の対応機器も試しているが、対応しているはずなのに、うまくいかないものもある *1
IPoE接続を、ホームゲートウェイ自体で行うか、接続した対応機器で行うか、明示的に設定できるようになることをぜひ期待したい。

*1) NEC UNIVERGE IXシリーズのルータを、メーカーwebサイトの設定例で試してみたのだが、なぜか最初はうまくいくが、しばらくするとダメになる(例によって、IPv6サイトしか閲覧できなくなる)のがわからない。こういうことの切り分けのために、どの機器で「IPv4 over IPv6」トンネルを確立するか、明示的に設定できるとありがたい。

なお、Fortigateは、FortiOS 6.4.2以降で「OCNバーチャルコネクト」に対応しているということだが、これはあくまで固定でIPv4割当てがされている環境での話。一般家庭向けの、IPv4一個動的割当てでは「IPv4 over IPv6」トンネルの確立ができない。自宅で使っている一般向けプロバイダの場合、固定IP割当てを受けられなくもないが、制限があって、今試しているような環境にはならない(「IPv4 over IPv6」接続は利用できず、「IPv6対応サイトのみIPoE接続が行え、IPv4サイトは従来のPPPoE接続になります 」)。

ということで、固定電話はなくせないし、よく考えて、結局、「IPv4 over IPv6」トンネルは、光電話のホームゲートウェイ(RX-600MI)で「掘る」のが最適だろうという結論に達した。「OCNバーチャルコネクト」対応機器をいくつか試してみたが、それらはすべて不要になった。一般家庭でのIPoE接続によるインターネット利用は、[NTTの光電話を利用しているならば、「IPv4 over IPv6」のIPoE接続に対応した]ホームゲートウェイだけで十分だろう。別途無線LANルータ等を「かます」のも電気代の無駄、普段は、PCをホームゲートウェイのLANポートに繋ぐか、無線LANで十分だ。
これまで、IPv4環境では、ファイアーウォールアプライアンスを、ホームゲートウェイのONU部に接続して、プロバイダにPPPoE接続していた。この種の機器は最早使いたいとは思わないが、テストする必要があれば、ホームゲートウェィのLANポートにWAN側を接続して、IPv6対応すればよい。IPv4通信は、ホームゲートウェイ[のLAN側IPv4アドレス]をデフォルトゲートウェイとしてやれば、そこに「掘られた」「IPv4 over IPv6」トンネルを抜けてくれる。理屈はまだ全然追いついてないが、とりあず、大雑把にそういった方針で適当に設定してみたところ、うまくIPv6ベースで通信できることを確認できた。

|

Windows の nslookup コマンドは、引くサーバが ipv6 指定になっていると引けないような

Windows の nslookup コマンドは、引くサーバが ipv6 指定になっていると引けないような。(Vistaのみならず、11でも)
Windows用 ICS Bind 付属の dig, nslookup コマンドは問題ない。(引くサーバが勝手に ipv4 指定になる)
もちろん Linux なら普通に使える。

* * *
さて、ipv6 は、ipv4 に比べて、長く、わかりづらく、ぜひホスト名で名前解決してもらいたいものだ。最近のLinuxは、mDNS というのが入っていて、ローカルセグメントの macや Windows にホスト名[.local の付加必要]でアクセスできる。さらに、最近の Windows は、よくできたもので、LLMNR(Link-Local Multicast Name Resolution)というのが、ローカルセグメントの Windows のコンピュータ名のみならず、mac や Linux でも[.local を付加した] ホスト名で名前解決してくれる。困るのが、Windows VISTA(うちは現役で使っている)で、これが Linux や mac では名前解決できない。対策としては、VISTA に Apple製 "Bonjour Print Services for Windows" をインストールすること。これで、.local を付加したコンピュータ名でアクセスできる。なお、Bonjour だけあればよいので、「Bonjour 印刷サービス」と「Apple Software Update」はアンインストールしても構わない。

|