ドコモ光(プロバイダGMO)v6プラスでのIPv6運用(MAP-E方式)が安定してきた。
ので、家庭内の機器もIPv6に本格的に対応させていく。
まずは RaspberryPi Zero で試す。ラズパイは 1も2も3もZeroも持っているが、Zeroは有線インターフェース(有線Network Interface Card = 有線NIC)を持っていない(無線NICのみ)。
しかし、ソフトイーサ社が提供する手順にしたがって設定したら無線NICであってもIPv6対応できたので、やり方をメモしておく。
ソフトイーサ社のページはこれ。
Linux PC / サーバーまたは組み込み機器での使用方法 - OPEN IPv6 ダイナミック DNS for フレッツ・光ネクスト
※ 同社が展開するのはあくまで「IPv6化された家庭内の機器にDDNSによりグローバルIPを振るサービス(Open IPv6)」のようだが、その記事の中で、NICへのグローバルIPの振り方を丁寧に解説してくれている。さすがは筑波大学発の会社だ。
記事にある「Linuxの設定例」にしたがって進めていく。
記事中「Debianを」とある部分は全て「RaspberryPi Zeroを」に読み替えて進める。
記事どおり、まずは ifconfig から。
$ sudo su
# ifconfig -a
インターフェース名(無線NIC名)は wlan0 であることが分かる。また、inet6 の行が fe80:: で始まっているので、リンクローカルな IPv6アドレスしか持っていない(グローバルではない)ことも分かる。
参考)リンクローカルIPv6とは
次は aptitude で ifplugデーモンをインストールするようだ。
# aptitude -y install ifplugd
/etc/default/ifplugd を編集する。編集前にオリジナルのバックアップを取っておく。
# cp /etc/default/ifplugd{,_original}
記事ではエディタとして nano を使っているが、vim で編集すればよかろう。
# vim /etc/default/ifplugd
無線LANなので、INTERFACES="wlan0" にする。
あとは /etc/network/interfaces に IPv6 関連の記述を追加していく。こちらもバックアップを取ってから進める。
# cp /etc/network/interfaces{,_20180722}
編集はやはり vim でやる。
もともと色々といじってあるので記事とは違うが、iface wlan のところに IPv6 関連の記述を追加した。
あとは再起動するだけ。
# sudo reboot
再起動後、/etc/resolv.conf を確認してみる。
$ cat /etc/resolv.conf
あれ?NTT東日本のDNSサーバーが振られてないな…まあ、ルータのIPv6設定でNDプロキシ設定にしたから内部からはローカルネットワークのルーターしか見えないのかもしれない。気にせず次に行く。
ping6 でテスト。
$ ping6 i.open.ad.jp
バッチリ応答がある。正しく設定できたようだ。
あとは ifconfig してみる。
$ ifconfig
240b で始まるグローバルIPv6アドレスを取得できているのが分かる。これで、例えば外出先ホテルからこのIPv6アドレス指定で直接リモート接続できるはずだ(ホテル内ネットワークがIPv6対応している前提だが)。そう考えるとIPv6って怖い気もする。今度出張のときに試す。
参考)IPv6のすごい記事
参考)出張先や海外からのインターネット(いずれ飛行機内もIPv6になるのだろう)