ギガにしてみた

%e3%82%b9%e3%82%af%e3%83%aa%e3%83%bc%e3%83%b3%e3%82%b7%e3%83%a7%e3%83%83%e3%83%88-2016-12-06-1-31-46

ギガといっても仔犬じゃないよ

我が家のインターネット接続環境は、Bフレッツハイパーファミリータイプから、いつの間にやら 移行されていたフレッツ 光ネクスト ファミリータイプ(100Mbps)です。

光ネクストが出た時に移行を考えたのですが、新規なら無料なのにタイプ/プラン変更だと何故か工事費がかさむので二の足を踏み、ほぼ放置状態でしたが、久しぶりにフレッツのサービスをながめみたら、フレッツ光ネクスト ギガラインタイプってのがあるじゃないですか。
これなら¥2kでギガに移行できます。

ということで、早速申し込んで、切替準備のために現状のルーター(RT-200KI)設定を控えておきます。
(我が家にはサーバーがあるので標準状態では使っていません。)
変更工事前日に新しいルーター(RT-500KI)が届いたので、予め設定しようとしたら回線状態確認中画面から先に進みません。
どうやら回線がリンクアップしてないと設定画面にたどり着かない仕様のようです。さすがNTT仕様。(謎)

で、工事日当日。
午前中(9時ごろには切り替わってる)と言われた工事ですが、8時過ぎから待てど暮らせどリンクが落ちません。
もしかしてと思いログを見たら5時台に2回リンクダウンした形跡があります。
思い切ってルーターを差し替えてみたところリンクアップ。
9時ごろには。って言ってたけど朝方に切り替わっていた模様。時間無駄にした〜〜!

怒ったところで時間は戻ってこないので気を取り直して設定です。
ブラウザの画面をざっと眺めてみたところ、このルーターのDHCPでは任意のDNSサーバーアドレスの通知が出来ない様子。(これまでのRT-200KIでは設定できた項目です)
我が家ではLAN内にwebとmailサーバーがあるためDNSサーバーも稼働しているので、プライマリをLAN内のDNS、セカンダリをルーターに設定したいのですが、この組み合わせではLAN内のwebとmailサーバーにアクセスできません。
ということで、ルーターのDHCP機能を止めて、自宅サーバーでDHCPも動かすことにしました。
LAN内のMacとWindowsでサーバーにアクセスが可能なことを確認し、iPhoneの4G接続でInternet側から自宅のwebとmailサーバーに接続できることを確認し、一旦作業終了。

IPv6でハマる
その日はもともと用事があったので外出して戻ってきてから異変に気づきました。
自宅のWiFi環境下だとiPhoneから自宅ドメインのmailが取れません。自宅ドメインのwebも見えません。
外部(Internet)のwebは見えるし、プロバイダーのmailもつかえます。
Macではどちらも使えています。

はて?

ルーターのDHCPは止めてあるし、自宅サーバーのDHCPではちゃんとDNSサーバーのアドレス指定をしてあります。(だからMacで使えています。)
iPhoneのWiFi接続のDHCPを再リースしてもダメです。

クライアント側の設定をよく見てみると、MacもiPhoneもNW設定のDNS項目の3つ目にDHCPで指定していない「:」で区切られたMACアドレス様の文字列があります。
これって、IPv6アドレスですねぇ。
このIPv6アドレスはルーターのようです。設定した覚えはないのですが。。

IPv6は仕事でも使わないのでさっぱりワカンネェとも言ってられなくなってきましたので、ネットで調べながらトラブルシュートしていきましょう。

状況としてはこんな感じです。
・MacとiPhoneは同じネットワークにあり、同じようにDNS設定の3行目にルーターのIPv6アドレスが出てくるのに、iPhoneだけ自宅内の名前解決が出来ない。
・自宅サーバーのDHCPで広告するDNSサーバーアドレスにはIPv4しか入れていない(そもそもIPv6のアドレスを入れても弾かれる)のに、クライアントにはルーターのIPv6アドレスが現れる。
・ルーターにIPv6 PPPoEの設定がありましたが、自動設定以外選択肢がないように見えていたのでデフォルト状態です。

まずiPhoneとMac、PCで挙動が違うところから攻めてみます。
通常(IPv4)の感覚では、DNSサーバーアドレスの指定はプライマリ、セカンダリ・・と順番に並べて、参照も順番のはずですので、IPv6のアドレスが混ざっていても上位にLAN内のアドレス解決が出来るDNSが指定されていればいいんじゃないのか?
(MacもWindowsPCもその順番で動いているように見えます。)
ということは、iPhoneの動作がおかしいのかな?

そこら辺を調べてみると、v4とv6が混在している(デュアルスタック)環境では、クライアントOS、リゾルバの実装によって優先順位が異なる動作をし、なかなか難しい状況らしいことが見えてきました。
さらに調べを進めると、MacやWindowsはどちら優先か指定する方法があるけど、iPhone(iOS)はIPv6優先に固定されているらしいという衝撃的な情報が。。

なるほどこれなら辻褄が合いますが、そうなると次の問題は、DHCPに設定した覚えがないのに、クライアントのDNSサーバーアドレスに勝手に表示されるルーターのIPv6アドレスです。
このアドレスは誰が渡しているのか?
ルーターを入れ替えるまでIPv6を明示的に使っていませんので、一番怪しいのはルーターですね。

ルーターの設定画面でIPv6に関わりそうなところを読み進めて行ったら、「DNS Proxy設定」に「ローカルドメイン問合せテーブル」という項目があり、特定のドメインの問合せをプロバイダ以外のDNSv6サーバーに転送することが出来るようです。(ここで設定できるアドレスはIPv6のみ)
そこでローカルドメイン(ezto.info)の問い合わせ先を自宅サーバーのIPv6アドレスに設定してみたところ、iPhoneでも自宅サーバーのweb、mailが使えるようになりました。
しかし、RT-500KIの設定、IPv4とv6で同列にキッチリ分かれていればまだ救いがありますが、結構入り乱れていてとても分かりにくいと感じるのは私だけでしょうか?

とりあえず動いたものの、IPv6とv4混在環境での挙動はRT-500KIの設定画面の中途半端感も手伝い、なんだか釈然としません。
今後の為にもIPv6(特にv4,v6デュアルスタック周りの挙動)の勉強進めないといけませんね。。。

インターネット接続におけるIPv6の割り当てはIPv4のアドレス1個とは違い、「プレフィックス」と呼ばれるネットワークアドレスが割り当てられ、広大なアドレス空間が持てるようになります。
つまり、IPv6ではブロードバンドルーターでNAT(IPマスカレード、P-NAT)しなくてよく、自宅内であってもIPリーチャブルなインターネットそのものということになり、パケットフィルタリングなどのインバウンド制御が適切でないといけないということですよね。。
そこらへんどうなってるんだろ。。
ここも今後DNSにAAAAレコード追加してアクセスさせるとなると考えないといけないですね。。

なお、スループットはL2スイッチ経由のMac有線接続で400Mbps程度が最大でしたが、充分です。