【1】はじめに
Hurricane Electric の Tunnel Broker で IPv6 接続できる LAN 内のクライアントの IP アドレスを、静的アドレスではなく SLAAC で構成する方法にしてみた。ただし、LAN 内のクライアントすべてがルーター広告(RA)メッセージで自動構成するのはイヤだったから、PVE クラスターと OPNsense で VLAN を設定して PVE の VM だけに限定していた。
でも、せっかくだから LAN 内のクライアントも Wi-Fi の SSID で接続先を選択することで、IPv4 と IPv6 を使い分けられるように OpenWrt の設定を変更してみたからメモを残しておこう。
まだ IPv6 だけで生活するのは時期尚早だけど、有名所のサイトは流石に対応していることだし緩やかに IPv6 の世界に移行していくんだろう。
【2】実現したいこと
OpenWrt のバージョンは 24.10.2。Wi-Fi ルーターは Netgear WAX206。
- 既存の VLAN が無い環境に、IPv6 用の VLAN を追加する。
- IPv6 用の Wi-Fi 接続は IPv6 用の SSID でユーザーで明示的に切り替えられること。
- ルーター広告は親ルーター(OPNsense)が行い、OpenWrt は特定の VLAN に RA を透過させるだけの単なるアクセスポイント。
- 管理用のアドレスは既存 LAN(IPv4)だけ。
- 親ルーターの VLAN 設定は終わっていて何も変更しない。
【3】OpenWrt の設定
自由度の高い OpenWrt だから設定項目も沢山あって、安定すれば変更する必要が無いから忘れがちになる。今どきなら生成 AI に質問すれば何とかなりそうだけど、古いバージョン(swconfig)の情報が混じっていたりするから要注意。
特に、以下の記述は OpenWrt 21.02以降、かつ、DSA(Distributed Switch Architecture)に対応した Wi-Fi ルーターを前提としているのでご注意を。
VLAN を追加する
メニュー「ネットワーク>インターフェース」のタブ「デバイス」から br-lan の設定をクリックする。
タブ「ブリッジ VLAN フィルタリング」で VLAN を追加する。追加したらここでは「保存」だけクリックして、まだ「適用」はしない。
画像の例では、VLAN ID 1 が最初から存在する LAN で、物理ポート lan1 と lan2 を参加させている。タグは無し。
VLAN ID 900 が追加する IPv6 専用の VLAN で、物理ポート lan3、lan4 を参加させている。こちらはタグ有りで、親ルーターの OPNsense にも同じ VLAN ID を設定して RA を送出している。
WAN ポートは複数の VLAN が親ルーターに接続するからトランクポートとなる。lan1 〜 lan4 はアクセスポートとしているが、このアクセスポイントの下にさらに複数の VLAN が存在するならこの画面で wan1 のようにトランクポートとして設定する。
次に、最初から存在するインターフェースの設定を変更する。メニュー「ネットワーク>インターフェース」から右の「編集」をクリックしてタブ「一般設定」を選択する。
インターフェース「lan」のデバイスを親ブリッジの br-lan から、追加されているソフトウェア VLAN:"br-lan:1" に変更して保存する。あわてずに、まだ適用はしない。
下の画像に戻って「インターフェースを新規作成」をクリックする。
プロトコルについて、Wi-Fi ルーターの管理画面には IPv4 アドレスで接続するから、これから作成する lan_ipv6 はアンマネージドを選択している。
デバイスは IPv6 専用のソフトウェア VLAN "br-lan:900 を選択する。
入力が終わったら「インターフェースを作成」をクリックする。
下の画像のようにインターフェースが2個になっている。
ここで「保存&適用」をクリックして、これまでの変更を適用する。
無事に保存されると、インターフェースがそれぞれ子ブリッジのbr-lan:1 と br-lan:900 になる。
次は、各インターフェースの編集をクリックして設定を変更する。
まずはインターフェース lan から。タブ「DHCPサーバー」の「一般設定」ではチェックボックス「インターフェースを無視」にチェックを付している。この VLAN に対しては親ルーターの DHCP サーバーからクライアントにアドレスを配布しているから無視で OK。
次はタブ「IPv6 設定」をクリックして、IPv4 専用の VLAN なので「Designated master」のチェックを外して保存する。
一般設定その他は環境に応じて良しなに。
続いて lan_ipv6(br-lan:900)の設定。インターフェースの「編集」をクリックしてタブ「DHCP サーバー」を選択すると下画像のようになるので、「DHCP サーバーをセットアップ」をクリックして保存。
タブ「一般設定」で「インターフェースを無視」のチェックを外す。SLAAC でクライアントの IPv6 アドレスを設定するのに、DHCP を有効化するのも変な感じ。保存を忘れずに。
タブ「IPv6 設定」で、今度は lan_ipv6(br-lan:900)に接続するクライアントに RA を送信するため「Designated master」にチェックを入れる。
物理ポートに接続するクライアントに対しては以上で基本的な設定は終了。このあたりで一度、「保存&適用」をクリックして設定を反映させる。
無線デバイスの設定
上部のメニュー「ネットワーク>無線」とクリックしたものが下の画像。既に Wi-Fi の SSID は2つ設定済みの状態。ここに、IPv6 専用の SSID(SSID: NETGEAR384A69-IPv6) を新たに追加するので、2.4GHz 又は 5GHz のどちらかお好きな方の「追加」をクリックする。
画面下半分の「インターフェース」の「一般設定」でネットワークを追加で作成した「lan_ipv6」にする。これで、br-lan:900 にポート(Wi-Fi 接続)が追加されることになる。無線セキュリティその他は必要に応じて設定すること。
設定が終わったら「保存&適用」で反映させる。
【4】おわりに
自分の環境はクライアント PC が Debian 13 で、SSID を選択すれば問題なく IPv6 で接続できるようになり、目的を達成できた。IPv6 Tunnel Broker でもダウンロード速度は常時数十 Mbps、調子のいいときは 200 Mbps 程度が出ているから遅延はともかく普通にネットを利用できる。
気になるというほどでもないけれど、VLAN を設定するとインターフェースの画面に無線 LAN を含めたポートのアイコンが出てこないのが少し寂しい。