楽天ひかりは高速通信IPv4 over IPv6の通信サービスの一つである「クロスパス(Xpass)」により夜間でも通信混雑の影響を受けない高速通信が可能です。
また、同時に従来の通信サービスであるPPPoE通信も利用可能です。
一般的な家庭用ルーターではこの2つ(XpassとPPPoE)の同時利用はできませんが、OpenWrtルーターというカスタムルーターを使うことでXpassとPPPoEの同時利用が可能、そして通信相手によってどちらの通信経路を利用するか個別に定義することができます。
これにより、通常利用は高速通信「クロスパス(Xpass)」を使いながらも「特定の匿名掲示板ではPPPoE通信を利用」「会社のテレワーク(VPN接続)ではPPPoE通信を利用」など通信相手によって2つの通信方式を使い分けることができるようになります。
この記事では「OpenWrtルーターとは?」に始まり、1台のOpenWrtルーターでXpassとPPPoEの両通信方式を使えるようにする定義手順までをご紹介していきます。
OpenWrtルーターで作る「クロスパス&PPPoE」併用環境
この記事では1台のOpenWrtルーターで楽天ひかりの「クロスパス」通信と「PPPoE」通信を併用できる環境を構築していきます。
構築環境のイメージとしては以下のようになります。
1台のルーターでクロスパスとPPPoEを併用
楽天ひかりにようにIPv4 over IPv6通信方式と従来の通信方式「PPPoE」を同時に提供しているプロバイダーはいくつかあります。
通常は夜間でも高速・快適な通信ができるIPv4 over IPv6通信を利用することになりますが、一部「外部から自宅へ接続したい」「会社のVPNサーバーへ接続したい」などの場合にPPPoE通信が必要となる場合があります。
本記事では1台のルーターでIPv4 over IPv6(クロスパス)とPPPoEを併用できる環境を構築します。
万能ルーター(?)OpenWrtルーターを使って環境構築
一般的な家庭用ルーターではこのような「1台のルーターで2つの通信方式を併用」することはできないため、2台のルーターを並べての環境構築が必要です。
一般的な家庭用ルーター2台を使った併用環境は以下の記事を参考にしてみてください。
一般家庭用のルーターでもクロスパスとPPPoEの併用環境は構築可能ですが、やはり運用上の使い分け(どちらのルーター配下で運用するか?)が面倒です。
この問題に対処するため、本記事ではバッファローの家庭用ルーターWZR-HP-AG300HにOpenWrtファームウェアをインストールし、OpenWrtの機能を使って「1台のルーターで複数の接続環境」を構築していきます。
OpenWrtルターって何?どうやって作るの?
業務用ルーターなど高機能なルーターを使うと1つのWANポートで楽天ひかりのクロスパス(Xpass)とPPPoEを同時に併用することができますが、一般的な家庭用ルーターでは設定や運用を簡単にするためか、このような機能はありません。
よって一般向けの家庭用ルーターなら「クロスパス(Xpass)とPPPoEのどちらを使う?」という選択が必要です。
この一般向け家庭用ルーターである「バッファローWZR-HP-AG300H」にOpenWrtファームウェアをインストールすることで、業務ルーター並みの高機能となり「ひとつのWANポートでクロスパス(Xpass)とPPPoEを併用可能」という環境を作ることができます。
OpenWrtルーターって何?
「OpenWrtルーターって何?どうやって作るの?」という疑問に簡単に答えておきます。
すでに理解している方は読み飛ばしてください。
家庭用ルーター向けのカスタムファームウェア
OpenWrtとは一般家庭用のルーター向けにフリーソフトウェアとして作成・配布されているカスタムファームウェアであり、対応機種は多岐にわたります。
OpenWrtファームウェアは「OpenWrtプロジェクト」により開発・配布されており「誰でも自由に自己責任での利用・再配布が可能」なGPLライセンスに基づいているフリーソフトウェアです。
このOpenWrtファームウェアを対応市販ルーターへインストールすることで、高機能なルーターとなります。
OpenWrtホームページ | OpenWrt Project
対応ルーター(市販品)にインストールして使う
OpenWrtファームウェアは市販のルーター機種ごとに開発・配布されており、対応ルーターは非常に多岐にわたります。
OpenWrtが対応している市販ルーターはOpenWrtプロジェクトのホームページ「対応機種一覧」より検索し、そこからOpenWrtファームウェアをダウンロードすることができます。
OpenWrt対応ルーター(TOH) | OpenWrt Project
自己責任で自由に利用・再配布ができる(GPLライセンス)
OpenWrtファームウェアはGPLライセンスに基づいて世界中の有志が開発・再配布を行っています。
市販ルーターのオリジナルファームウェアをOpenWrtファームウェアに入れ替えて使う仕組みであることから、OpenWrtファームウェアをインストールすることでメーカ保障は受けられなくなります。
そしてOpenWrt自体も「完全に自己責任」のソフトウェアとなるため、「誰でも自由に利用・再配布が可能」というメリットに対し「完全に自己責任での利用」という点に留意する必要があります。
OpenWrtの詳しい情報は以下の記事を参考にしてみてください。
OpenWrtルーターの構築手順
OpenWrtファームウェアは市販ルーターの機種ごとに開発・配布されています。
非常に高機能なファームウェアですが、一度インストールしてしまえば使い方は簡単、一番難しいのはインストールです。
OpenWrtファームウェアのインストール手順は対応している市販ルーターごとに異なり、この機種ごとのインストール手順が一番難しい(面倒)と言えます。
おすすめのOpenWrt対応ルーター
OpenWrtを初めて作る場合、もっともおすすめの市販ルーターはバッファローの「WZR-HP-AG300H」です。
すでに発売から10年以上経っているルーターですが、現在でも十分使えるハイスペックであり、またベストセラーであったことから程度の良い中古品が1,000円程度で購入可能です。
そしてなによりインストール手順やリカバリー手順がもっとも確率していることで、安心してOpenWrtをインストールすることができます。
OpenWrtをWZR-HP-AG300Hへインストールし設定する手順は以下の記事を参考にしてみてください。
また、バッファローWZR-HP-AG300Hと並んでインストールが簡単なおすすめルーターがエレコム「WRC-1167GST2」です。
OpenWrtをWRC-1167GST2へインストールし設定する手順は以下の記事を参考にしてみてください。
この記事で構築目標とする通信環境
この記事で「高速通信IPv4 over IPv6」と「従来の通信方式IPv4/PPPoE」の併用を1台のOpenWrtルーターで実現します。
実現環境としては楽天ひかりのクロスパス(Xpass)通信とIPv4/PPPoE通信の併用です。
2台のルーターを活用してクロスパス(Xpass)とIPv4/PPPoEを併用する構成は比較的シンプルに見えて実は各ルーターの機能制限があったり運用が面倒だったり、という問題があります。
1台のOpenWrtルーターでクロスパス(Xpass)とIPv4/PPPoEを併用することでネットワーク構成や使用するルーターを意識することなく併用可能な環境が構築できます。
1台のルーターでクロスパスとPPPoE併用!構築環境
この記事で構築する環境は以下の図のようになります。
この構成のポイントは以下の通りです。
ポイント① クロスパスとPPPoEのインターフェースを定義
通常の市販ルーターでは(多くの場合)1つのWANポートに対して1つの通信プロトコルのみ設定可能です。
本記事では一般的な市販ルーターでは(多くの場合)不可能な「クロスパスとPPPoEの2つの通信インターフェースを作成」します。
ポイント② ルーティングテーブルの定義
クロスパスとPPPoEの通信の優先度(メイン回線/サブ回線の定義)をルーティング定義します。
また、特定の通信先で使用する回線の個別ルーティングを定義します。
たとえば「通常のインターネット利用は高速なクロスパス通信を利用」「会社との通信はIPv4/PPPoE通信を利用」というルーティング定義です。
ポイント③ 1台のルーターでクロスパスとPPPoEを併用
そしてOpenWrtを使うことでこれら「クロスパスとPPPoEを併用」「メイン回線/サブ回線の定義」「特定宛先の個別ルーティング」を一台のルーターで実現します。
通常のネット利用は夜間でも速度低下しないクロスパス回線を利用、テレワークでのVPN接続や匿名掲示板の利用など特定通信先との通信はPPPoE回線を利用、という使い分けができます。
一般的に併用する構成として紹介されている「二台のルーターで併用構成」ではなく、シンプルに一台のルーター(OpenWrtルーター)でクロスパスとPPPoEを使い分けていく環境です。
たった3ステップ!構築手順概要
1台のルーターで複数プロトコルの通信インターフェースを設定する、という一般的な家庭用ルーターではできないことをOpenWrtルーターで実現していきます。
ただし、その構築手順は非常に簡単でたったの3ステップで環境構築できてしまいます。
- STEP1OpenWrtインストール
OpenWrtファームウェアをインストールし、初期設定を行います。本記事ではバッファロー製ルーター「WZR-HP-AG300H」を対象とします。
- STEP2インターフェース定義
DS-Lite通信(クロスパス)とPPPoE通信で使用するOpenWrt上のインターフェースを定義します。 - STEP3ルーティング定義
どんな通信がどちらの回線を使って通信するのか、メイン回線(DS-Lite)とサブ回線(PPPoE)の使い方を定義します。
ステップ① OpenWrtインストール(WZR-HP-AG300H)
まずは「ステップ①」としてOpenWrtファームウェアのインストールを行います。
本記事ではバッファロー製ルーター「WZR-HP-AG300H」へのインストールを前提としています。
なお、すでにOpenWrtのインストールが完了している方は本ステップは読み飛ばしてください。
ファームウェア(OpenWrt)のダウンロード
OpenWrtファームウェアはOpenWrtプロジェクトにより開発・配布が行われています。
OpenWrtファームウェアのダウンロードや各種マニュアル(ほぼ英語)などはOpenWrtプロジェクトホームページより取得・参照することができます。
OpenWrtプロジェクトホームページ | OpenWrt Project
OpenWrtファームウェアは市販ルーターの機種ごとに開発・配布されており、今回ターゲットとしているバッファロー「WZR-HP-AG300H」の機種情報は以下に記載されています。
Techdata: Buffalo WZR-HP-AG300H v1 | OpenWrt Project
上記機種情報のページより最新版OpenWrtファームウェアをダウンロードすることができます。
WZR-HP-AG300H用OpenWrtインストールモジュール(factory22.03.5) | OpenWrt Project
※ファームウェアダウンロードが開始されます。
OpenWrtのインストール
ダウンロードしたOpenWrtファームウェアを使ってWZR-HP-AG300HをOpenWrt化していきます。
インストールは簡単で、WZR-HP-AG300Hのオリジナルファームウェアのアップデートと同じ手順でダウンロードしたOpenWrtファームウェアを読み込ませるだけでインストール完了です。
OpenWrtファームウェアのインストール
WZR-HP-AG300Hのオリジナルの管理画面から「ファームウェア更新」を行います。
オリジナル管理画面のメニュー「ファームウェアを更新する」を選択します。
ファームウェア更新画面へ遷移します。
ファームウェア更新画面で以下の設定を行います。
更新方法 | “ローカルファイル指定”を選択 |
---|---|
ファームウェアファイル名 | ダウンロードしたOpenWrtファームウェアを選択 |
上記を選択・入力したら「設定」ボタン押下でファームウェア更新が開始されます。
ファームウェア更新が始まるとインジケーターが100%になるまで待ちます。
この時、WZR-HP-AG300Hの電源を抜いたりすると文鎮化するので安定した状態で更新してください。
インジケーターが100%になるとファームウェア更新は完了しています。
画面は変わりませんがルーターは更新完了で再起動しています。
なのでパソコンも再起動しておきましょう。
OpenWrtルーターの再起動
ファームウェア更新のインジケーターが100%に達するとWZR-HP-AG300Hは自動的に再起動します。
そして再起動することで今インストールされたOpenWrtが軌道します。
インストール直後のOpenWrtルーターのIPv4アドレスは以下のようになっているので、必要であればPCを再起動してIPv4アドレスの再取得を行いましょう。
ルーターIPv4アドレス | 192.168.1.1 |
---|---|
DHCP配布アドレス | 192.168.1.100~ |
ブラウザでルーターIPv4アドレスを開くと上記のようにOpenWrtのWebUI画面(LuCI)のログイン画面が表示されます。
初期ログインID | root |
---|---|
初期ログインパスワード | 空(未入力) |
以上でWZR-HP-AG300HへのOpenWrtインストールは完了です。
OpenWrtルーターの初期設定
OpenWrtルーターはインストールした直後の状態ですでに利用可能となっていますが、ここでは本格的に使い始める目に設定しておいたほうが良いいくつかの初期設定を行っていきます。
※必須ではなく任意の初期設定項目です
パスワードの設定
まずOpenWrtルーター本体のパスワードを設定しておくとよいでしょう。
OpenWrtのWebUI(LuCI)へログインする場合のパスワード、およびOpenWrtルーターへSSHログインする場合のパスワードになります。
メニュー「System > Administration」からRouter Passwordの設定を行います。
「Password」「Confirm(確認)」でパスワードを設定し「Save」ボタン押下することでルーターパスワードが設定されます。
一度、メニュー「Logout」からログアウトし、再度ログイン時にパスワードが有効になっていることを確認できるとよいでしょう。
管理画面(LuCI)の日本語化
管理画面(LuCI)の初期状態では英語表記となっています。
このままでも問題ありませんが、必要であれば管理画面(LuCI)を日本語化しておきましょう。
管理画面を日本語化するためには管理画面機能(LuCI)の日本語モジュールをダウンロード&インストールする必要があります。
メニュー「System > Software」からソフトウェア管理画面へ遷移します。
ソフトウェア管理画面の「Update List」ボタン押下により、ソフトウェアの最新更新リストを取得します。
更新リストの取得が完了したら、「Filter」入力欄に「base-ja」などと入力し、一覧画面を表示(絞り込み)します。
以下のモジュールをインストールします。
LuCI日本語化モジュール | luci-i18n-base-ja |
---|
日本語化モジュールのインストールが完了すると、管理画面(LuCI)の日本語化は完了です。
画面をリロードするかまたは別画面へ遷移すると日本語表示されるようになっています。
タイムゾーンの設定
OpenWrtインストール時にはタイムゾーン(標準時刻)は「UTC(協定世界時)」に設定されています(かつてのGMT世界標準時と同じ)。
これは日本標準時間(JST)と9時間の時差があります(UTCが9時間遅れている)。
このタイムゾーンを日本標準時間(JST)に設定しておきましょう。
メニュー「システム>システム」からシステムプロパティ設定画面へ遷移します。
「一般設定」タブの「タイムゾーン」より「Asia/Tokyo」を一覧選択します。
画面下の「保存&適用」ボタン押下により、OpenWrtルーターの時刻表記が日本標準時間(JST)での表記となります。
IPアドレスの設定
インストール直後のOpenWrtルーターはIPv4アドレスが「192.168.1.1」に設定、またDHCPサーバーとしても動作しています。
IPv4アドレス環境の初期状態は以下のようになっています。
OprnWRTルーター IPv4アドレス | 192.168.1.1 | |
---|---|---|
DHCPサーバー | 有効/無効 | 有効(DHCPサーバー有効) |
配布開始IPアドレス | 192.168.1.100 | |
配布数 | 150個 | |
リース時間 | 12時間 |
もし必要があればIPv4アドレスおよびDHCPサーバー設定を変更しておくとよいでしょう。
OpenWrtルーターIPv4アドレスの変更
OpenWrtルーターのIPアドレスは初期値として「192.168.1.1」が設定されています。
IPアドレスの変更はメニュー「ネットワーク>インターフェース」より行います。
インターフェース一覧の「インターフェース」タブより「LAN」デバイスの「編集」ボタンを押下します。
インターフェース「LAN」設定画面の「一般設定」タブよりルーターIPアドレスの設定を行うことができます。
DHCPサーバー設定値の変更
「DHCPサーバー」タブからDHCPサーバーとしての設定を変更することができます。
DHCPサーバー初期設定で配布されるIPアドレス範囲などを変更する場合はこちらの画面から変更します。
設定の反映
「LAN」インターフェースの設定を変更した場合、「保存&適用」ボタンで設定を反映させます。
ただしOpenWrtルーター本体のIPアドレスを変更した場合、「保存&適用」ボタン横の「▼」マークから「チェックなしの適用」を選んで設定を適用させます。
これは本体IPアドレスが変更されたことで設定反映後に現在のブラウザからアクセスできなくなるためで、この場合通常の「保存&適用」であれば設定のロールバックが行われるからです。
「チェックなしの適用」ボタンを押下したら、パソコンも再起動して新しい設定後のIPアドレスを取得しておきましょう。
ステップ② クロスパスとPPPoEの通信インターフェース定義
OpenWrtのインストールが完了したところで、次は通信で使うインターフェースを定義していきます。
具体的に以下の3つのインターフェースを定義します。
インターフェース名称 | 通信機能 |
---|---|
WAN6 | IPv6/IPoE用 インターフェース |
XPASS | DS-Lite(クロスパス)用 インターフェース ※WAN6へのトンネルインターフェース |
WAN | IPv4/PPPoE用 インターフェース |
IPv6/IPoE通信インターフェース定義
フレッツ光回線は完全なIPv6ネットワークであり、IPv6/IPoE通信が基本となります。
このフレッツ光環境でIPv4通信を行うための仕組みが「IPv4/PPPoE」だったり「IPv4 over IPv6(MAP-eやDS-Lite)」だったりします。
まずはOpenWrtルーターをフレッツ光標準であるIPv6/IPoE通信に対応させるため、以下の定義を行います
- LANインターフェースでのIPv6アドレスリレー設定
- WAN6インターフェースでのIPv6アドレスリレー設定
上記2点の定義を行うことで、フレッツ光回線でONU(またはVDSLモデム)に付与されたIPv6アドレスをルーターやパソコン・スマホへリレーしてあげることで自宅ネットワークがIPv6対応(フレッツ光対応)となります。
LANインターフェースのIPv6アドレス対応
まずはLANインターフェースにおいて、ONU(またはVDSLモデム)に付与されているIPv6アドレスをリレーするための設定を行います。
メニュー「ネットワーク > インターフェース」よりインターフェース一覧画面を開きます。
インストール直後のインターフェースは以下のように「LAN」「WAN」「WAN6」のインターフェースが定義されています。
インターフェース一覧の「LAN」から「編集」ボタンを押下してインターフェース定義の編集画面を開きます。
「DHCPサーバー」タブの「IPv6設定」タブからリレーモード設定を行っていきます。
上記項目に対し、以下のようにリレー設定を行います。
RA-Service | リレーモード |
---|---|
DHCPv6サービス | サーバーモード |
NDPプロキシ | リレーモード |
以上で「LAN」インターフェースに対するIPv6アドレスのリレー設定は完了です。
WAN6インターフェースのIPv6アドレス対応
次にIPv6用のWANインターフェース「WAN6」に対してIPv6アドレスのリレー設定を行います。
インターフェース一覧画面の「WAN6」定義「編集」ボタンからWAN6インターフェース定義画面を開きます。
WAN6インターフェース定義画面の「DHCPサーバー」タブから「DHCPサーバーをセットアップ」を押下します。
「DHCPサーバー」タブの「IPv6設定」タブ画面が開きます。
「DHCPサーバー > IPv6設定」画面よりDHCPv6の定義を以下のように変更します。
Designaled master | チェックする |
---|---|
RA-Service | リレーモード |
DHCPv6サービス | リレーモード |
NDPプロキシ | リレーモード |
以上で「WAN6」インターフェースに対するIPv6アドレスのリレー設定は完了です。
一覧画面に戻ったら「保存&適用」ボタンにより設定を反映させます。
以上でOpenWrtルーターはフレッツ光回線のIPv6/IPoE通信を利用できる環境となりました(ただしIPv6通信だけ)。
「LAN」および「WAN6」について、フレッツ光回線から付与されたIPv6アドレスをリレーする設定してあげることで、自宅ネットワークもIPv6ネットワークになっています。
現時点で「yahoo.co.jp」などのIPv4サイトへは接続できませんが「google.com」や「facebook.com」などのIPv6対応サイトへは接続可能な状態です。
クロスパス通信インターフェース定義
ここまでの手順でフレッツ光回線のIPv6/IPoE接続での通信ができるようになりました。
つぎはこのIPv6/IPoE通信を使った「IPv4 over IPv6」のクロスパス通信を定義し、IPv4通信もできるように設定していきます。
クロスパス(DS-Lite)通信を利用するためには以下の2ステップの作業が必要です。
- DS-Liteモジュールのインストール
- DS-Liteインターフェースの定義
DS-Liteモジュールのインストール
DS-Liteモジュールをインストールします。
メニュー「システム > ソフトウェア」からソフトウェア更新画面へ遷移します。
まずは更新・インストール可能なプログラム一覧を取得します。
ソフトウェア画面のアクション(Actions)「Update Lista」から更新可能なプログラム一覧を更新します。
更新可能プログラム一覧の更新が完了するとメッセージが表示されるので、画面下の「Dismiss(閉じる)」ボタンでメッセージ画面を閉じます。
更新・インストール可能プログラムの一覧から「ds-lite」で絞り込みを行います。
一覧に表示される「ds-lite」をインストールします。
DS-Liteモジュールのインストール後にはOpenWrtルーターの再起動が必要です。
メニュー「システム > 再起動」からルーターを再起動しておきます。
以上でDS-Liteモジュールのインストールは完了です。
DS-Lite(クロスパス)インターフェースの定義
DS-Liteモジュールのインストールが完了したので、次はDS-Lite(クロスパス)のインターフェースを定義していきます。
メニュー「ネットワーク > インターフェース」からインターフェース定義画面へ遷移します。
インターフェース定義画面から「インターフェースの新規作成」ボタンを押下します。
新しいインターフェース定義画面が表示されます。
インターフェース名は何でもよいので自分でわかりやすい名前を設定します。
プロトコルにはDS-Lite規格である「Dual-Stack Lite(RFC6333)」を選択します。
名前 | ご自由に ※「xpass」など |
---|---|
プロトコル | Dual-Stack Lite(RFC6333) |
プロトコルを選択したらいったん「インターフェースの作成」ボタンを押下しておきます。
画面「一般設定」タブから利用するDS-LiteサービスのAFTRアドレスを設定します。
今回私は楽天ひかりが提供しているクロスパス(Xpass)を利用するので「dgw.xpass.jp」を設定します。
その他のDS-Liteサービスについては以下のAFTRアドレスを設定します。
通信サービス(DS-Lite) | AFTR設定値 |
---|---|
Transix | gw.transix.jp |
クロスパス(Xpass) | dgw.xpass.jp |
v6コネクト | dslite.v6connect.net |
プロトコルの設定が終わったら「ファイアウォール設定」タブ画面を開きます。
作成したインターフェースを「ファイアウォール設定」タブから「WANファイアウォールゾーン」に追加定義しておきます。
ファイアウォールゾーンの設定が完了したら「保存」ボタンを押下して画面を閉じます。
以上でDS-Lite(今回はクロスパス)のインターフェース定義が完了です。
ただし、ここまでのインターフェース定義は現時点ではまだルーターに反映されていません(保有中)。
なので「保存&適用」を押下してインターフェース定義をルーターに反映させます。
DS-Liteインターフェース作成に関するより詳しい情報は以下の記事も参考にしてみてください。
クロスパス(Xpass)の疎通確認
以上でOpenWrtルーターでクロスパス(Xpass)通信を利用するための設定はすべて完了、ポイントは以下の3点です。
- LANインターフェースのIPv6リレー設定
- WAN6(IPv6)インターフェースのIPv6リレー設定
- DS-Liteモジュールのインストールと設定
ここまでの作業が完了したらクロスパス接続確認サイトで設定の確認をしておきましょう。
クロスパス(Xpass)での通信状態であれば、以下のように画面表示されます。
「確認」ボタンを押下し、画面最下部に「クロスパス可変サービス利用中」と表示されればクロスパス通信できている状態となります。
IPv4/PPPoE通信インターフェース定義
IPv4/PPPoE通信のためのインターフェースを定義していきます。
IPv4/PPPoE通信で使うインターフェースは既存のインターフェース定義「WAN」を流用します。
メニュー「ネットワーク > インターフェース」よりインターフェース定義画面へ遷移します。
OpenWrtインストール時に標準のIPv4インターフェースとして「WAN」インターフェースが定義されています(初期値はDHCPクライアント)。
この「WAN」定義をIPv4/PPPoE通信用に設定変更していきます。
インターフェース定義「WAN」の「編集」ボタン押下によりWAN定義編集画面に入ります。
「WAN」インターフェース定義画面よりプロトコルを「PPPoE」へ切り替え(選択変更)、「プロトコルを変更」ボタンを押下します。
「PAP/CHAPユーザー」欄にユーザー名(接続名)とパスワード(接続パスワード)を設定し「保存」ボタンを押下します。
PAP/CHAユーザー名 | プロバイダーより付与された接続ID |
---|---|
PAP/CHAパスワード | プロバイダーより付与された接続パスワード |
最後にインターフェース一覧画面より「保存&適用」ボタンを押下し設定変更してあげます。
PPPoE設定に関するより詳しい情報は以下の記事も参考にしてみてください。
ステップ③ クロスパスとPPPoEのルーティング設定
ここまでで1台のOpenWrtルーターで「クロスパス(Xpass)」と「IPv4/PPPoE」での接続定義が完了し、どちらの通信方式でも通信できる状態となりました。
ここからは、この2つの回線をどう使い分けるのか?という点において「ルーティング」定義を行っていきます。
2つの回線(クロスパスとPPPoE)の優先度設定
現在定義されている2つの回線(クロスパスとPPPoE)について、回線の優先順位をつけていきます。
優先順位の高い回線がメイン回線(常に通信する回線)となり、優先順位の低い回線がサブ回線、という設定です。
優先順位は任意の設定が可能ですが、今回は以下のような優先順位をつけていきます。
優先順位はインターフェース定義のゲートウェイメトリックを設定することで行います。
回線用途 | インターフェース | プロトコル | ゲートウェイメトリック |
---|---|---|---|
メイン回線 | XPASS | DS-Lite ※クロスパス | 10 |
サブ回線 | WAN | PPPOE | 20 |
インターフェース定義のゲートウェイメトリック値は「小さい値ほど優先順位が高い」という設定になります。
つまり、メイン回線はクロスパス回線を使い、サブ回線(バックアップ回線)としてIPv4/PPPoE回線を使う、という定義です。
メニュー「ネットワーク > インターフェース」のインターフェース一覧より「WAN(PPPoE)」および「クロスパス(Xpass)」のインターフェース定義に対してメトリック値を設定します。
まずは「クロスパス(Xpass)」インターフェースに対してゲートウェイメトリック値を設定します。
「クロスパス(Xpass)」インターフェースの「詳細設定」タブの「ゲートウェイメトリックを使用」の欄にメトリック値「10」を設定し、保存します。
つぎに「WAN」インターフェースの「詳細設定」タブの「ゲートウェイメトリックを使用」の欄にメトリック値「20」を設定し、保存します。
2つのインターフェースにメトリック値を設定したら、一覧画面より「保存&適用」ボタン押下で設定を反映させます。
以上で回線インターフェースへのメトリック値(優先順位付け)は完了です。
基本ルーティングの確認
では、設定した回線の優先順位が正しく設定されているか確認してみます。
メニュー「ステータス > ルーティング」画面よりシステムステータスの確認画面へ遷移します。
システムステータス画面の「アクティブなIPv4ルート」を確認します。
ネットワーク | ターゲット | メトリック |
---|---|---|
xpass | 0.0.0.0/0 | 10 |
wan | 0.0.0.0/0 | 20 |
ルーティングテーブルにおいて「ターゲット:0.0.0.0/0」という定義が「外部ネットワークへのルーティング定義」となり「xpass」および「wan」のインターフェースが利用されていることがわかります。
また優先順位である「メトリック」について、「xpass=10」「wan=20」により外部ネットワークへの通信は「xpass」が優先的に利用されることがわかります。
つまり優先的に「xpass」による通信を利用するけど、xpass通信が利用できない場合には自動的にサブ回線であるwanインターフェースが利用される、というルーティング定義になっています。
個別通信のルーティング設定
前節の定義により回線ごとの優先順位は定義が完了しました。
ここからは「個別接続先へのルーティング定義」を行います。
現在は「クロスパス(Xpass)」インターフェースがメイン回線(優先度高)と設定されているため、すべてのインターネット通信は「クロスパス(Xpass)」インターフェースを通じて行われます。
この状態に加え「特定の通信先との通信においてはIPv4/PPPoE(つまりWANインターフェース)で通信する」という個別ルーティング定義を行います。
たとえば会社のテレワークで使うためのVPNサーバーへの接続だったり、匿名掲示板5ch.netへの接続だったり、これら特定接続先への通信はサブ回線(WAN=PPPoE)で通信する、という定義です。
今回は特定の通信先として匿名掲示板5ch.netを想定し、個別ルーティングを設定していきます。
特定接続先のIPアドレス確認
ここでは特定の接続さきとして匿名掲示板「5ch.net」を想定します。
つまり、通常のインターネット通信ではメイン回線(Xpass)を使って通信し、匿名掲示板5ch.netを利用する場合にはサブ回線(WAN)を使って通信する、という定義です。
特定接続先へのルーティング定義を行うには通信先(この場合は5ch.net)のIPアドレスが必要なので「nslookup」コマンドで以下のようにIPアドレスを確認しておきます。
root@OpenWrt: nslookup 5ch.net ←コマンド入力
Server: 127.0.0.1
Address: 127.0.0.1:53
Non-authoritative answer:
Name: 5ch.net
Address: 172.64.107.36
Name: 5ch.net
Address: 172.64.106.36
Non-authoritative answer:
root@OpenWrt:
上記の「nslookup」コマンドにより、5ch.netドメインが紐づけられているIPアドレスは以下の2つあることがわかりました。
ドメイン名 | IPアドレス |
---|---|
5ch.net | 172.64.107.36 172.64.106.36 |
同様に、仕事のテレワークなどで会社のVPN接続を別ルートとしたい場合は「nslookup ドメイン名」でIPアドレスが確認できます。
個別ルーティングの設定
では5ch.netへの個別ルーティングを定義していきます。
個別ルーティングはメニュー「ネットワーク⇒ルーティング」で設定します。
ルーティング設定画面で「追加」ボタン押下します。
5ch.netはIPアドレスが2つあるので、まずは1つ目のIPアドレスをルーティング設定します。
1つ目のIPアドレスに対してルーティング設定画面より以下のように選択・入力します。
インターフェース | 「WAN」を選択 |
---|---|
ターゲット | 「172.64.106.36/32」を入力 ※1個目のIPアドレス |
入力確認後「保存」ボタンで設定を保存します。
次に2つ目のIPアドレスに対してルーティング設定を行います。
2つ目のIPアドレスに対してルーティング設定画面より以下のように選択・入力します。
インターフェース | 「WAN」を選択 |
---|---|
ターゲット | 「172.64.107.36/32」を入力 ※2個目のIPアドレス |
入力確認後「保存」ボタンで設定を保存します。
「IPv4静的ルーティング」に2つのルーティング定義が行われたことを確認し、「保存&適用」ボタンを押下して設定を反映させます。
通信経路の確認
ではここで設定した個別通信先に対するルーティング情報を確認してみます。
メニュー「ステータス > ルーティング」よりルーティング情報を確認します。
「アクティブなIPv4ルート」に今回定義した2つの個別ルーティング情報が反映されているのがわかります。
設定した通信先(今回は5ch.netを想定)に対してはサブ回線である「WAN(PPPoE)」回線を使って通信するようにルーティング設定がなされているのがわかります。
実際に通信経路を確認
実際の通信が「アクティブなIPv4ルート」に従って通信しているのか?を確認しておきましょう。
現在、「アクティブなIPv4ルート」は以下のように定義されています。
まずはgoogle.comへのIPv4通信によるトレースをとってみます。
C:\>tracert -4 google.com
google.com[142.250.198.14]へのルートをトレースしています
経由するホップ数は最大30です:
1 <1 ms <1 ms <1 ms OpenWrt.lan[192.168.13.1]
2 14 ms 14 ms 14 ms 192.0.0.1
3 14 ms 14 ms 14 ms 163.***.***.**
^C
上記の第二ホップでIPアドレス「192.0.0.1」を経由しているのがわかります。
この「192.0.0.1」は「アクティブなIPv4ルート」によるとクロスパスインターフェースに割り当てられている内部IPv4アドレスであることがわかります。
つまり「google.com」への通信はクロスパス経由で通信している、ということです。
同様にyahoo.co.jpへのIPv4通信によるトレースをとってみます。
C:\>tracert -4 yahoo.co.jp
yahoo.co.jp[183.79.219.124]へのルートをトレースしています
経由するホップ数は最大30です:
1 <1 ms <1 ms <1 ms OpenWrt.lan[192.168.13.1]
2 14 ms 13 ms 14 ms 192.0.0.1
3 14 ms 14 ms 14 ms 163.***.***.**
^C
こちらも第二ホップでIPアドレス「192.0.0.1」を経由しているのがわかります。
yahoo.co.jpへのIPv4通信もクロスパス経由で通信していることがわかります。
では個別ルーティングとして定義した5ch.netへのトレースをとってみましょう。
C:\>tracert -4 5ch.net
5ch.net[172.64.106.36]へのルートをトレースしています
経由するホップ数は最大30です:
1 <1 ms <1 ms <1 ms OpenWrt.lan[192.168.13.1]
2 8 ms 16 ms 16 ms *********Biz.vectant.ne.jp[163.***.***.***]
3 7 ms 7 ms 6 ms 163.***.***.***
^C
5ch.netへの通信経路では第二ホップで「*****.vectant.ne.jp[163.***.***.***]を経由しています。
「163.***.***.***」は「アクティブなIPv4ルート」でWANインターフェースのゲートウェイとして定義されているIPアドレスです。
つまり5ch.netへの通信ではWANインターフェース(= PPPoE通信)を経由して通信していることがわかります。
以上で特定の通信先に対する個別ルーティング定義が終了です。
まとめ、1台のルーターでIPv6とIPv4を併用する
この記事では1台のOpenWrtルーターを使ってIPv6/IPoE通信とIPv4/PPPoE通信を併用する環境の構築手順を説明してきました。
この記事で構築した環境は以下のようになります。
本記事では回線サービスとして「楽天ひかり」、IPv6/IPoEを使ったIPv4 over IPv6通信として「クロスパス(Xpass)」を例にとりましたが、楽天ひかりやクロスパス以外での環境でも同じように「1台のOpenWrtルーターでIPv4 over IPv6とIPv4/PPPoEを併用」する環境を構築することができます。
IPv6通信のデメリットをIPv4通信で補完する
フレッツ光回線ではIPv4/PPPoE通信で必要な認証システムの混雑により夜間の通信混雑(通信速度の低下)が大きな問題となっています。
この問題を解決するのが「IPv4 over IPv6」と呼ばれる「MAP-e」や「DS-Lite」という通信方式です。
「MAP-e」や「DS-Lite」通信を行うことで速度低下の原因となっているIPv4/PPPoE認証を迂回することが可能となり、その結果として夜間の速度低下を回避できる仕組みです。
IPv6通信のデメリット
このようにフレッツ光回線では夜間の速度低下の問題により、もはやIPv4 over IPv6高速通信の仕組みは必須となっています。
IPv4 over IPv6の通信を行うことでフレッツ光回線本来の高速通信が可能となります。
その反面、IPv6アドレスを主体とした通信方式においては従来のIPv4通信に対するデメリットが存在するのも、また事実です。
IPv4 over IPv6の高速通信方式では自宅ルーターに完全なIPv4アドレスが付与されないため、「外部(インターネット側)から自宅への接続ができない」「(一部の)VPN通信サービスなどが利用できない」などのデメリットが存在します。
IPv6通信とIPv4通信の併用によるメリット
IPv4 over IPv6高速通信とIPv4/PPPoE通信を併用することで、「通常のネット利用は高速なIPv4 over IPv6通信を利用する」「IPv6通信が苦手な通信はIPv4/PPPoE通信を利用する」という使い分けができます。
これにより「快適なネット利用」と「外出先から自宅への接続」「一部VPN通信の利用」などが併用可能となります。
楽天ひかりの通信サービス
今回は自宅固定回線として楽天ひかりを例に取り上げ環境構築してみました。
楽天ひかりは標準機能として「高速通信クロスパス(Xpass)」と「従来の通信方式IPv4/PPPoE」のどちらも提供してくれるプロバイダーです。
多くの場合は夜間の通信も快適に利用できる「クロスパス(Xpass)」を利用するとよいでしょう。
そして、もし「外部から自宅へ接続したい」「特定の接続先にはIPv4/PPPoE通信で接続したい」という場合において、本記事を参考にして併用可能な環境を構築してみることをおすすめします。
楽天ひかり以外でも流用可能
本記事は楽天ひかりの回線サービスを例として環境構築してみましたが、楽天ひかりの環境以外でも同様な「1台のルーターでIPv6とIPv4を併用」する環境を構築することができます。
本記事で例とした楽天ひかりの高速通信サービスは「クロスパス(Xpass)」なのでTransixやv6コネクトなど他のDS-Lite規格による通信方式と全く同じです。
また、DS-Lite規格と並ぶもう一つの高速通信規格である「MAP-e(v6プラスやOCNバーチャルコネクト)」についても、OpenWrtルーターなら「1台でIPv6とIPv4を併用」する環境を構築することができます。