自宅の光回線を「楽天ひかり」に乗り換えました。
今までは地元電力系の光回線を引き込んでいたのですが、楽天モバイルとのセットキャンペーンで「1年無料」「工事費無料」につられて初フレッツ光回線というわけです。
手持ちのルーターは楽天ひかりの高速通信サービス「クロスパス(Xpass)」に正式対応していません。
そこで、手持ちの古いルーター「バッファローWZR-HP-AG300H」をOpenWrt化して楽天ひかりのクロスパス(Xpass)を利用しようと思います。
この記事ではバッファロー「WZR-HP-AG300H」へOpenWrtをインストールし、楽天ひかりのクロスパス(Xpass)接続するまでを詳しく説明していきます。
OpenWrt入門編「バッファローWZR-HP-AG300H」
OpenWrtルーターって何?
OpenWrtとは市販ルーター向けにGPLライセンスで提供されているルーター向けのファームウェアです。
GPLライセンスで提供されるフリーソフトウェアなので「自己責任でだれでも無料で使える」というルーターファームウェアです。
OpenWrtはメーカーオリジナルのファームウェアでは実装していない機能をたくさん提供しており、ルーターハードウェアの機能をトコトン活用した最強のルーターが作れる、ということになります。
つまり、市販ルーターにOpenWrtファームウェアをインストールしたものを「OpenWrtルーター」と言います。
どんなルーターにインストールできる?
OpenWrtは非常に多くの市販ルーターに対応しています。
ただしルーター製品によってインストール手順が異なり、非常に簡単にインストールできるものからほぼマニアにしかできないものまであります(ルーターによって異なる)。
よってOpenWrtルーターは「誰でも使えるOpenWrtファームウェア」を「価格的にもインストール手順的にもお手軽な市販ルーター(中古品)」にインストールすることで構築していきます。
入門用のおすすめはバッファローWZR-HP-AG300H
OpenWrtを初めて使ってみよう!という場合に最もおすすめな市販ルーターは「バッファローWZR-HP-AG300H」です。
バッファロー WZR-HP-AG300H | Buffalo
WZR-HP-AG300Hは2010年発売のWi-Fi親機(ブロードバンドルーター)であり、すでに発売から10年以上も経っていますが、おすすめには理由があります。
おすすめ理由① インストールが簡単
WZR-HP-AG300H用のOpenWrtファームウェアはインストールが一番簡単です。
ルーターの純正ファームウェアをアップデートするのと同じ手順でOpenWrtファームウェアをインストールすることができます。
おすすめ理由② 今でも十分活用できるハードウェア
WZR-HP-AG300Hは発売からすでに10年以上経過しています。
ですが、発売当時にバッファローのフラッグシップモデルであり当時としては最新鋭の高性能ルーターでした。
そして処理速度だけでなくメモリ容量・USBポートなど今でも十分使えるルーターです。
おすすめ理由③ OpenWrtのスタンダードなので情報量が多い
WZR-HP-AG300Hは発売当時の大ヒット商品でした。
日本国内だけでなくアメリカでも大ヒットし、型番違いの同じルーターがたくさん存在します。
このため、OpenWrtのユーザーの多くが昔からWZR-HP-AG300H(および姉妹機)を使っており、OpenWrt対応ルーターの中では最も情報量の多いルーターです。
OpenWrtは自己責任のファームウェアなのでネット上の情報量が多いのは最大のメリットです。
おすすめ理由④ そして安い!
先述したようにWZR-HP-AG300Hは大ヒット商品であり中古市場にも大量に流通しています。
このため質の良い中古品が安くで入手できます。
ジャンクショップやハードオフなどでも購入できますがおすすめはメルカリ・ヤフオクなどでの購入(落札)です。
ネットオークション・フリマであればWZR-HP-AG300Hは500円~1,000円ほどで入手することができます。
バッファローWZR-HP-AG300Hの出品状況を見る | メルカリ
バッファローWZR-HP-AG300Hの入手の仕方
「WZR-HP-AG300H」は発売からすでに10年以上が経過しており、現在新品を入手することはほとんど不可能でしょう。
新品だと型番違いになりますがWZR-HP-AG300Hと中身(ハード仕様)が同じルーター「WZR-600DHP」が良いでしょう。
WZR-600DHPは中身はWZR-HP-AG300Hとほぼ同じ(5GHzのWi-Fiが強化されている)なので手順は同じです。
中古を安く入手する
WZR-HP-AG300Hおよびその姉妹機は大ヒットルーターであるため中古市場には程度の良い中古品が大量に安くで出回っています。
ヤフオクやメルカリなどでは500円~1,000円程度でたくさんの中古品が出回っています。
バッファローWZR-HP-AG300Hの出品状況を見る | メルカリ
メルカリで1,000円以内を目標に程度のよさそうなものを探してみると良いでしょう。
※ちなみに私は10年以上前に当時新発売のフラッグシップモデル「WZR-HP-AG300H」を新品購入しています。
準備編:必要なものをダウンロード
ではここからWZR-HP-AG300HにOpenWrtをインストールしていきます。
まずは「準備編」としてOpenWrtファームウェアのダウンロードとWZR-HP-AG300Hの状態初期化について説明していきます。
OpenWrtインストールに必要なもの
前提として私の作業環境はWindowsPC(OS:Windows10)とします。
- OpenWrt対応ルーター
⇒ ここでは「バッファローWZR-HP-AG300H」 - OpenWrtファームウェア
⇒ 公式サイトからダウンロード - TELNET/SSHツール
⇒ ここではTeraTermを利用
必要なもの① OpenWrt対応ルーター「WZR-HP-AG300H」
OpenWrtは非常にたくさんの市販ルーターに対応しています。
今回OpenWrtをインストールする市販ルーターはバッファロー「WZR-HP-AG300H」です。
10年以上前に発売されたルーターですが当時の最強ハードウェアであり今でも十分通用するスペックを持っています。
バッファロー WZR-HP-AG300H | Buffalo
また大ヒット商品であるため中古市場(ヤフオク・メルカリなど)で500円~1,000円程度で大量に出品されています。
なにより、OpenWrtに関する情報が豊富、という点がイチオシの理由となります。
バッファローWZR-HP-AG300Hの出品状況を見る | メルカリ
OpenWrt化作業の前提
WZR-HP-AG300Hを中古で購入した場合、前利用者の設定が残っている場合があります。
記事の説明内容とルーターの設定を同じにするために、中古品ルーターは初期化しておくことを前提とします。
作業に入る前に「WZR-HP-AG300H」の状態は以下の前提とします。
- 本体は初期化されていること
⇒ ネットワークが初期状態
⇒ rootパスワードなし - ファームウェアバージョンは1.73であること
また、ルーター以外では作業用PCが必要ですがこの記事ではWindows10のパソコンを利用します。
本体は初期化されていること
初期化されていなくても良いのですが、ネットワーク環境を本記事と同一にするため「初期化」しておくことをお勧めします。
初期化によって以下のネットワーク環境であることを前提としています。
- 本体IPアドレス
⇒ 192.168.11.1/24 - DHCPサーバー機能有効
本体初期化は電源投入状態で本体の「RESET」スイッチを3秒以上押下、です。
またはウェブ管理画面より本体初期化を実行。
ファームウェアバージョンは1.73であること
OpenWrt化前のWZR-HP-AG300Hのオリジナルファームウェアはバージョン1.73を前提とします。
OpenWrtをインストールするだけならファームウェアバージョンはどれでも構いませんが、1.73であればオリジナルファームウェアの状態でWZR-HP-AG300HにTelnet接続できるようになります。
※バージョン1.73以降のオリジナルファームウェアではTelnet接続できません。
Telnet接続ができれば、オリジナルファームウェアのバックアップを取ることができます。
このため、事前にオリジナルファームウェアバージョンを1.73にしておくと良いです。
なお、おすすめではありませんが「バックアップなんて必要ない!」という勇者はファームウェアバージョンはどれでも良いです。
必要なもの② OpenWrtファームウェア
OpenWrtファームウェアはOpenWrtプロジェクト公式サイトより事前にダウンロードしておきます。
OpenWrtプロジェクト(公式サイト) | OpenWrtプロジェクト
WZR-HP-AG300H用の最新版ファームウェアは以下のリンクからダウンロードしておいてください。
OpenWrtファームウェアセレクター | OpenWrtプロジェクト
お好きなバージョンを選択できますが、バージョンはリリースビルド(“-RC”のついていないもの)が良いでしょう。
いくつかのファームウェアイメージを選ぶことができますが、本記事の手順で使うのは「FACTORY」イメージになります。
ファームウェアの違いと命名
OpenWrtファームウェアは「ルーターごと/バージョンごと」に公開されていますが、さらに「新規インストール用/アップデート用」にも分けて提供されます。
「新規インストール用(FACTORYイメージ)」は市販ルーターに最初にインストールする場合に用いるファームウェアです。
「アップデート用(SYSUPDATEイメージ)」はすでにOpenWrtをインストールしているルーターに対して、最新版などをアップデートする場合に用いるファームウェアです。
「新規インストール用」はファイル名に「〇〇-squashfs-factory.bim」という名称がついています。
「アップデート用」はファイル名に「〇〇-squashfs-sysupgrade.bin」という名称がついています。
用途によってファイルを間違えないように注意してください。
必要なもの③TELNET/SSHソフトウェア
Telnetクライアント/SSHクライアントを利用します。
私はTeraTermを利用します。
Telnet/SSHは何に使う?
以下のような3つの使い方を予定されます。
- WZR-HP-AG300Hのオリジナルファームウェアをバックアップ(Telnet)
- OpenWrtからオリジナルファームウェアへの復元(SSH)
- その他、OpenWrt上での各種設定作業(SSH)
「3.その他、OpenWrt上での各種設定作業」については、いったんOpenWrt化してしまえばほとんどの作業はウェブUI上で管理可能なのですが、ウェブUIに一部対応していない機能などはSSH接続してCLI(コマンドインターフェース)で設定作業を行う場合もあります。
バックアップ編:まずはオリジナルファームウェアのバックアップ(任意)
ここではWZR-HP-AG300Hのオリジナル(メーカー製)ファームウェアのバックアップを行います。
バックアップを取っておくことでいざという時にオリジナルの状態に戻すことができます。
なお、いったんOpenWrtルーターにしてしまうと(たぶん)オリジナルに戻すことはないと思いますが、バックアップは「念のため」ということになります。
「オリジナルには戻さない!」という方はこの章は飛ばしてください。
バックアップの大まかな流れと前提条件
WZR-HP-AG300HのオリジナルファームウェアはLinuxで作成されています(OpenWrtも同様)。
このため、オリジナルファームウェアのバックアップは「Telnetでターミナルに入りDDコマンドでバックアップ」という手順になります。
ただし前提条件として「オリジナルファームウェアバージョン1.73」である必要があります。
これは「バージョン1.73より後のファームウェアではTelnetでログインできない」仕様になっているからです。
よってオリジナルファームウェアのバージョンが1.73より後である場合はバージョン1.73をインストール(アップデート画面から)しておいてください。
ステップ① ファームウェアバージョンの確認
WZR-HP-AG300Hオリジナルファームウェアのバックアップを取るためには純正ファームウェアのバージョンが1.73以下である必要があります。
バージョン1.73以下のファームウェアは「デバッグモードでログイン」することでTelnetを有効化することができます。
バージョン1.73より大きなファームウェアではこのデバッグモードが使えなくなっています。
まずはファームウェアバージョンを確認しましょう。
WZR-HP-AG300Hにログインし「ステータス」を選びます。
ステータス(状態)画面の「製品名」を見るとファームウェアのバージョンがわかります。
バージョン1.73およびそれ以前(以下)のファームウェアであればデバッグモードが利用できます。
ファームウェア1.73へのダウングレード
もしバージョン1.73より大きなバージョンであればファームウェアを1.73に更新(ダウングレード)しておく必要があります。
ダウングレード(バージョンダウン)はトップ画面の左下「ファームウェアを更新する」をクリックします。
ファームウェア更新画面では自動更新(バッファローのサイトからダウンロード)を行います。
更新方法 | 「自動更新(オンラインバージョンアップ)」を選択 |
---|
ファームウェアの選択画面で「1.73」を選択しファームウェア更新を実行します。
ファームウェア更新中はルーターの電源が落ちないように十分電源回りに注意してください。
ステップ② TELNET有効化
ファームウェアのバックアップはWZR-HP-AG300HにTelnetで接続して行います。
WZR-HP-AG300Hは通常ではTELNETが利用できないようになっていますが、ファームウェアバージョン1.73以下のファームウェアであれば「管理画面へデバッグモードでログイン」することでTELNETを有効化できます。
まずはいったんブラウザを閉じてから再起動し、以下のURLからデバッグモードでログインしてください。
http://192.168.11.1/cgi-bin/cgi?req=frm&frm=py-db/55debug.html | デバッグモードログイン
※もしIPアドレスが初期値「192.168.11.1」でない場合はIPアドレスを設定してください。
ログイン時の情報は以下のようになります。
ログインID | bufpy |
---|---|
ログインパスワード | otdpopy |
もしログインパスワードを設定している場合のデバッグモードパスワードは「otdpopy[ログインパスワード]」となります。
デバッグモード画面は非常にシンプルな画面になります。
デバッグモードで利用できる機能が一覧表示されます。
この中から「TELNETD」をクリックします。
次の画面で「start」をクリックします。
しばらくして通常管理画面のTOPメニューが表示されればTELNETが使える状態になっています。
ステップ③ オリジナルファームウェアのバックアップ
Telnetが使える状態になったのでTelnetでWZR-HP-AG300Hに接続します。
今回はTeratermを利用します。
ログイン画面では以下の情報でログインします。
ホスト | WZR-HP-AG300HのIPアドレス |
---|---|
サービス | Telnet |
TCPポート | 23 |
バックアップ対象の確認
バックアップの対象となるディレクトリおよびバックアップファイルを確認します。
バックアップの対象となるのは「/dev/mtdblock」というディレクトリ配下のファイルになるので、その場所に移動し配下のファイルを確認してみましょう。
このように、「/dev/mtdblock」ディレクトリ配下にはファイル名「0~6」までの7つのデバイスブロックファイルが存在します。
この7つのデバイスブロックファイルがオリジナルファームウェアのシステムファイルとなります。
ただし、オリジナルファームウェアへの復元を目的とする場合、バックアップ対象はファイル名「6」のブロックデバイスファイルのみとなります。
今回は一応「0~6」までの7つのブロックデバイスファイルをすべてバックアップしていきます。
システムデバイスファイルのバックアップ
まず、「0~6」までのブロックデバイスファイルを「ddコマンド」にて「/tmp」ディレクトリへバックアップします。
※オリジナルファームウェアへの復元目的であれば「6」のみのバックアップで良いです。
↓ブロックデバイスファイルのバックアップ
root@OpenWrt: dd if=/dev/mtdblock/0 of=/tmp/mtdblock0
512+0 records in
512+0 records out
root@OpenWrt: dd if=/dev/mtdblock/1 of=/tmp/mtdblock1
512+0 records in
512+0 records out
root@OpenWrt: dd if=/dev/mtdblock/2 of=/tmp/mtdblock2
2048+0 records in
2048+0 records out
root@OpenWrt: dd if=/dev/mtdblock/3 of=/tmp/mtdblock3
62592+0 records in
62592+0 records out
root@OpenWrt: dd if=/dev/mtdblock/4 of=/tmp/mtdblock4
128+0 records in
128+0 records out
root@OpenWrt: dd if=/dev/mtdblock/5 of=/tmp/mtdblock5
128+0 records in
128+0 records out
root@OpenWrt: dd if=/dev/mtdblock/6 of=/tmp/mtdblock6
64640+0 records in
64640+0 records out
↓バックアップファイルの確認
root@OpenWrt: ls /tmp/mtdblock*
/tmp/mtdblock0 /tmp/mtdblock2 /tmp/mtdblock4 /tmp/mtdblock6
/tmp/mtdblock1 /tmp/mtdblock3 /tmp/mtdblock5
バックアップファイルのダウンロード
「/tmp」ディレクトリへバックアックしたファイルをローカルPCへダウンロードします。
ダウンロードはブラウザを使って「httpプロトコル」によるダウンロードとなります。
mtdblock6のファイルをダウンロードするためにはブラウザのURLに以下のように入力します。
※IPアドレスはご自身の環境に合わせてください。
このように「/tmp」ディレクトリへバックアップしたファイルはブラウザから「http://[IPアドレス]/html/py-db/tmp/[バックアップファイル名]」でダウンロードすることができます。
ローカルPCへ保存したバックアップファイルは復元時に使うので大切に管理しておきましょう。
なお、ローカルPCへダウンロード後のルーター「/tmp」ディレクト上のバックアップファイルは不要です。
TELNETから削除してもよいですし、「/tmp」ディレクトリはRAMディスクでありルーター再起動時にはリフレッシュされるのでルーター再起動できれいにしてもよいです。
以上で、オリジナルファームウェアのバックアップは終了です。
インストール編:OpenWrtインストールは簡単!
OpenWrtファームウェアのインストール前提
OpenWrtのインストール方法は対象となる市販ルーターによって異なり、簡単なものから非常に難易度の高いものまであります。
WZR-HP-AG300HにOpenWrtをインストールするのは非常に簡単です。
メーカー純正ファームウェアをアップデートする方法でOpenWrtのファームウェアを読み込ませるだけでOpenWrt化することができます。
インストールの前提
インストール手順を説明する前に、説明記事とルーターの同期をとるため「ルーター(WZR-HP-AG300H)は初期化されている」ものとします。
また、オリジナルファームウェアとOpenWrtファームウェアではIPアドレスの初期値が異なるため、作業用パソコンの「IPアドレスはDHCPサーバー(ルーター)より取得する」設定を前提とします。
- オリジナルファームウェアのIPアドレスは「192.168.1.1/24」
- OpenWrtのIPアドレスは「192.168.1.1/24」
- 作業用パソコンのIPアドレスは「DHCPより自動取得」にしておく
インストールに必要なもの(ファイル)
前節の手順でダウンロードした「WZR-HP-AG300H用のOpenWrtファームウェア」が必要です。
OpenWrtファームウェアのインストール手順
WZR-HP-AG300Hの管理画面からOpenWrtファームウェアをアップロードします。
このとき使うOpenWrtファームウェアは前節で準備したファームウェアです。
- STEP1ファームウェアアップロード
WZR-HP-AG300Hのオリジナル管理画面(トップ画面)から「ファームウェアを更新する」を選びます。
- STEP2OpenWrtファームウェアの指定
インストールするOpenWrtファームウェアを以下のように指定します。
更新方法 「ローカルファイル指定」を選択する ファームウェアファイル名 ダウンロード済のOpenWrtファームウェアを指定する 設定 ファイル名を指定したら「設定」押下 - STEP3ファームウェア更新を待つ
「設定」ボタン押下により、ファームウェア(OpenWrtファームウェア)のインストールが開始されます。
進捗のインジケーターが「100%」になるまでじっと待ちます。
このタイミングはファームウェア更新中なので電源を抜いたりしないよう、気を付けてください。
- STEP4パソコン再起動(IPアドレス変更)
進捗のインジケーターが「100%」になったらOpenWrtファームウェアのインストールは完了しています。
OpenWrtがインストールされたルーターはIPアドレス「192.168.1.1」で起動されるので、作業用パソコンのIPアドレス変更が必要です。
簡単なのはパソコン(DHCPクライアント)を再起動しましょう。
- STEP5OpenWrt管理画面(LuCI)の確認
パソコン再起動(IPアドレス変更)したらブラウザから「192.168.1.1」に接続してみます。
OpenWrtの管理画面「LuCI」のログイン画面が表示されればOpenWrtインストール完了です。
なお、インストール直後のOpenWrt管理画面(LuCI)は管理者パスワードが設定されていないため、以下の情報でログインできます。
Username root Password なし(未入力)
以上で「WZR-HP-AG300H」のOpenWrt化(OpenWrtインストール)は完了です。
設定編:OpenWrtの設定
OpenWrtのインストールが完了したところで、ここからはOpenWrtを使ってルーターの設定を行っていきます。
ゴールとしてはプロバイダー接続(この記事では楽天ひかり)してIPv4およびIPv6によるインターネット接続ができるとことまで、とします。
管理者パスワードの設定
インストール直後のOpenWrtは管理者権限のパスワードが設定されていないので、まずはパスワードを設定しましょう。
- STEP1パスワード入力画面へ
メニュー「System > Administration」からパスワード設定画面へ遷移します。
- STEP2パスワードの設定
タブ「Router Password」画面でパスワードを設定(2か所・確認用)し、「Save」ボタンを押下します。
- STEP2パスワードの確認
パスワード設定を行ったらメニュー「Logout」からいったんログアウトし、再度ログインしてみましょう。
いったんログアウトして再ログインすることで、パスワードの確認を行ってください。
管理画面(LuCI)を日本語化しておこう
IPv6/IPoEでのインターネット接続ができるようになったところで、管理画面(LuCI)を日本語化してみましょう。
管理画面(LuCI)の日本語化はOpenWrt公式サイトから日本語モジュールをダウンロードして適用、という手順を踏みます。
- STEP1ソフトウェアアップデート画面へ
メニュー「System > Software」からソフトウェアアップデート画面へ遷移します。
- STEP2更新プログラムの一覧を更新
まずは更新・インストール可能なプログラム一覧を取得します。
ソフトウェア画面のアクション(Actions)「Update List」から更新可能なプログラム一覧を更新します。
更新可能プログラム一覧の更新が完了するとメッセージが表示されるので、画面下の「Dismiss(閉じる)」ボタンでメッセージ画面を閉じます。
- STEP3日本語モジュールのインストール
日本語モジュールは「luci-i18n-base-ja」というモジュールになり、これをインストールすることでOpenWrt管理画面(LuCI)を日本語化することができます。
タブ「Available」を選ぶ 利用可能なインストールプログラムを一覧表示 「base-ja」で絞り込む 一覧から日本語モジュール「luci-i18n-base-ja」を絞り込む Install 一覧から日本語モジュール「luci-i18n-base-ja」をインストール
以上でOpenWrt管理画面(LuCI)を日本語化することが可能です。
タイムゾーンを日本(Asia/Tokyo)に設定しておこう
ルーターのタイムゾーンを日本(Asia/Tokyo)に設定しておきましょう。
- STEP1タイムゾーン設定画面へ
メニュー「システム > システム」でタイムゾーン設定画面へ遷移します。
- STEP2タイムゾーン「Asia/Tokyo」の設定
「一般設定」タブの「タイムゾーン」一覧から「Asia/Tokyo」を選択します。
選択後「保存&適用」ボタン押下でタイムゾーンが「Asia/Tokyo」に変更されます。
「IPv4/PPPoE」を設定してみよう
OpenWrtインストール直後はIPv4インターフェースは「DHCPクライアント」として設定されています。
OpenWrtの上位にネットワーク接続しているルーター(HGWなど)があればそのままインターネットに接続できているはずです。
ここではOpenWrtルーターをONUやVDSLモデムに直接接続している場合においてプロバイダーから付与されている「IPv4/PPPoE」での接続設定をやってみましょう。
「IPv4/PPPoE」接続設定で必要なものはプロバイダーから通知されているPPPoEの「ユーザーID」と「接続パスワード」です。
- STEP1インターフェース定義画面へ
メニュー「ネットワーク > インターフェース」からインターフェース定義画面へ遷移します。
- STEP2インターフェース定義の確認
インターフェース定義画面の「インターフェース」タブにて現在(初期値)のインターフェース定義を確認しておきましょう。
インストール直後のOpenWrtインターフェース定義は以下のように設定されています。
LAN IPアドレス:192.168.1.1/24
DHCPサーバー:有効WAN
(IPv4定義)DHCP(IPv4)クライアント WAN6
(IPv6定義)DHCPv6クライアント IPv4通信の設定は上記インターフェース「WAN」においてDHCPクライアントとして定義されています。
このインターフェース定義を「IPv4/PPPoE」に設定変更していきます。
- STEP3インターフェース「WAN」の定義変更
インターフェース定義「WAN」の「編集」ボタンを押下して編集画面へ遷移します。
プロトコルに初期値として設定されている「DHCPクライアント」を「PPPoE」に選択変更し「プロトコルを切り替える」ボタンを押下ます。
「PAP/CHAPユーザー」欄にユーザー名(接続名)とパスワード(接続パスワード)を設定し「保存」ボタンを押下します。
PAP/CHAユーザー名 プロバイダーより付与された接続ID PAP/CHAパスワード プロバイダーより付与された接続パスワード - STEP5設定の反映
インターフェース定義画面に戻りました。
この時点ではまだインターフェース定義は「保留中」です。
画面下の「保存&適用」ボタン押下により「IPv4/PPPoE」インターフェースが作成されます。
- STEP6IPv4/PPPoE接続の確認
IPv6接続確認サイトで接続状況を確認してみましょう。
上記のようにIPv4プロバイダー(私の場合は楽天ひかり「vectant.ne.jp」)経由での接続が確認できました。
※この時点ではまだIPv6接続は確認できていません。
以上で「IPv4/PPPoE」接続インターフェースの定義は完了です。
「IPv6/IPoE」を設定してみよう
フレッツ光回線(コラボ含む)を契約の場合には契約時にプロバイダーが「フレッツv6オプション」を代理契約しています。
よって「WAN6(IPv6)」設定を少し変更することで「IPv6/IPoE」によるインターネット通信ができるようになります。
これで「IPv6/IPoE」によるIPv6インターネット接続が可能となり、IPv6対応サイトは利用可能となります。
- STEP1インターフェース定義画面へ
メニュー「ネットワーク > インターフェース」からインターフェース定義画面へ遷移します。
- STEP2インターフェース定義の確認
インターフェース定義画面の「インターフェース」タブにて現在(初期値)のインターフェース定義を確認しておきましょう。
インストール直後のOpenWrtインターフェース定義は以下のように設定されています。
LAN IPアドレス:192.168.1.1/24
DHCPサーバー:有効WAN
(IPv4定義)DHCP(IPv4)クライアント WAN6
(IPv6定義)DHCPv6クライアント IPv6通信の設定は上記インターフェース「WAN6」においてDHCPv6クライアントとして定義されています。
「IPv4 over IPv6」対応プロバイダーで契約しているならすでに「フレッツv6オプション」契約があるはずなので、基本的には「DHCPv6クライアント」としてフレッツ光回線網(NGN網)からのIPv6アドレスが付与されているはずです。
そしてこのIPv6アドレスをルーターからパソコンやスマホなどへリレーするための設定が必要なので、この設定を行っていきます。
- STEP3インターフェース「LAN」の定義変更
まずはLANインターフェース定義を変更します。
現時点でもWAN6(IPv6)インターフェースはNTTフレッツ光回線網のIPv6アドレスが付与されているのですが、このアドレスをLAN内のデバイス(パソコンやスマホ)へリレーしてあげる設定を行います。
「LAN」インターフェースの「編集」ボタンを押下します。
「LAN」インターフェース編集画面の「DHCPサーバー > IPv6設定」より上記3か所の設定を見直し・修正します。
RA-Service リレーモード DHCPv6サービス サーバーモード NDPプロキシ リレーモード 上記3か所を修正したら「保存」ボタン押下で画面を閉じます。
- STEP4インターフェース「WAN6」の定義変更
次にLAN6インターフェース定義(IPv6接続定義)を変更します。
こちらもLANインターフェース定義と同じで、NTTフレッツから付与されているIPv6アドレスをLANインターフェースへリレーしてあげる設定を行います。
「WAN6」インターフェースの「編集」ボタンを押下します。
「WAN6」インターフェース編集画面の「DHCPサーバー」タブ画面より「DHCPサーバーをセットアップ」を押下します。
「DHCPサーバー > IPv6設定」画面よりDHCPv6の定義を以下のように変更します。
Designaled master チェックする RA-Service リレーモード DHCPv6サービス リレーモード NDPプロキシ リレーモード 上記4か所を修正したら「保存」ボタン押下で画面を閉じます。
- STEP5設定の反映
インターフェース定義画面に戻りました。
この時点ではまだインターフェース定義は「保留中」です。
画面下の「保存&適用」ボタン押下により「IPv6/IPoE」インターフェースが有効になります。
なお、この設定変更はWAN6側に付与されているIPv6アドレスをLAN内のデバイス(パソコンやスマホ)へリレーしてあげる設定なので、パソコンも再起動しておきましょう。
- STEP6IPv6/IPoE接続の確認
IPv6接続確認サイトで接続状況を確認してみましょう。
上記のようにIPv6での接続が確認できました。接続ISPは「日本ネットワークインフォメーションセンター(JPNIC)」になっていますね・・・
また、前節で登録した楽天ひかりの「IPv4/PPPoE」も有効になっているため、IPv4は楽天ひかりと提携するISP(ARTERIA)になっています。
つまり、この状態は「IPv4/PPPoE + IPv6/IPoEデュアルスタック」での接続状態になっています。
以上で「IPv6/IPoE」接続インターフェースの定義は完了です。
WAN6インターフェースの「DHCPサーバー・タブ」が表示されない場合
お使いのOpenWrtのバージョンが低い場合(~OpenWrt19.07)にはWAN/WAN6インターフェース定義画面に「DHCPサーバー」のタブが表示されません。
このため上記手順「STEP4 インターフェース「WAN6」の定義変更」がWebUI上からは設定できません。
この場合はコマンド操作にて「WAN6側インターフェース定義」を行います。
DHCP定義ファイルを直接編集する方法
SSHでOpenWrtルーターへログインし「/etc/config/dhcp」ファイルへ以下のWAN6インターフェースDHCP定義を追記します。
root@OpenWrt: cd /etc/config
root@OpenWrt: vi ./dhcp
↓ファイル末尾に以下の記述を追記する
config dhcp 'wan6'
option interface 'wan6'
option master '1'
option ignore '1'
option ra 'relay'
option ndp 'relay'
option dhcpv6 'relay'
uciコマンドで編集する方法
dhcpファイルを直接編集せず、uciコマンドで定義する場合は以下のようなコマンドで。
root@OpenWrt: cd /etc/config
root@OpenWrt: uci set dhcp.wan6=dhcp
root@OpenWrt: uci set dhcp.wan6.interface='wan6'
root@OpenWrt: uci set dhcp.wan6.master='1'
root@OpenWrt: uci set dhcp.wan6.ignore='1'
root@OpenWrt: uci set dhcp.wan6.dhcpv6='relay'
root@OpenWrt: uci set dhcp.wan6.ra='relay'
root@OpenWrt: uci set dhcp.wan6.ndp='relay'
root@OpenWrt: uci commit
root@OpenWrt: cat ./dhcp
↓以下の内容が追記されていることを確認する
config dhcp 'wan6'
option interface 'wan6'
option master '1'
option ignore '1'
option ra 'relay'
option ndp 'relay'
option dhcpv6 'relay'
OpenWrtルーターのその他のインターフェース定義
OpenWrtルーターは自由自在にインターフェースを定義してネット回線に接続することができます。
この記事では「IPv4/PPPoE」接続するための定義手順を説明してきました。
「IPv4/PPPoE」以外のインターフェース定義は以下の記事を参考にしてください。
OpenWrtで「DS-Lite」が使えるようにする
「Transix」「クロスパス(Xpass)」「v6コネクト」などの通信サービスはすべて「DS-Lite規格」に沿った通信サービス商品です。
これらの通信サービスを利用するためにはOpenWrtルーターに「DS-Lite」モジュールをインストールし、インターフェース定義を行います。
DS-Liteの定義方法は以下の記事を参考にしてください。
OpenWrtルーターでスマホのUSBテザリングを利用する
OpenWrtルーターにUSBポートがあればスマホなどをUSB接続して(USBテザリング)スマホの通信回線を利用することができます。
NTTドコモ「5Gギガホプレミア」や楽天モバイル「UN-LIMIT」ではテザリングによる容量制限がないため、スマホの回線をそのまま自宅のOpenWrtルーターでも利用するこができます。
AndroidスマホやポケットWi-Fi、そしてiPhoneのネット通信をそのままOpenWrtルーターで利用することができます。
OpenWrtルーターでのUSBテザリングのインターフェース定義は以下の記事を参考にしてください。
復元編:オリジナル「WZR-HP-AG300H」に戻す(復元)
OpenWrtをインストールしたWZR-HP-AG300Hをオリジナルファームウェアへ戻す(復元する)手順を見ていきましょう。
復元するためにはWZR-HP-AG300Hのオリジナルファームウェアが必要であり、これは第三章「バックアップ編」でバックアップしたファイル名6(手順では「mtdblock6」)のファイルを使います。
SSHでOpenWrtルーターへログイン
復元作業はOpenWrtへSSHでログインしターミナルで行います。
ここでは「Teraterm」を使ってOpenWrtルーターへSSH接続します。
- STEP1接続先IPアドレスの入力
- STEP2セキュリティ警告の対応
- STEP3ログイン情報の入力
- STEP4ログイン完了
バックアップファイルをSCP転送
ローカルPCに保存してあるバックアップファイルの「6」(手順ではファイル名「mtdblock6」)をOpenWrtルーターの/tmpディレクトリへアップロードします。
ここではsshクライアントとしてTeraTermを使っているので、TeraTermが持っている「scpファイル転送機能」によりOpenWrtルーターへアップロードします。
- STEP1scpファイル転送を起動
TeraTermの「ファイルメニュー⇒SSH SCP転送」を選択します。
- STEP2バックアップファイルの選択と転送先の設定
転送元(From)はバックアップファイルを選択します(手順では「mtdblock6」です)。
転送先(To)は「/tmp」を指定します。
正しく選択・入力したら「Send」ボタン押下によりファイル転送が開始されます。
- STEP3アップロード完了まで待つ
バックアップのアップロード結果を確認
バックアップファイルのscpアップロードが完了しました。
正常にアップロードできたかを確認しましょう。
root@OpenWrt:/ cd /tmp ←コマンド入力
root@OpenWrt:/tmp# ls -l ←コマンド入力
-rw-r--r-- 1 root root 6 Aug 26 16:15 TZ
-rw-r--r-- 1 root root 776 Jan 1 1970 board.json
-rw-r--r-- 1 root root 33095680 Nov 12 2021 mtdblock6 ←アップロードファイル
-rw-r--r-- 1 root root 72 Aug 26 23:45 dhcp.leases
drwxr-xr-x 2 root root 40 Apr 16 21:59 dnsmasq.d
drwxr-xr-x 3 root root 80 Aug 26 16:15 etc
drwxr-xr-x 2 root root 80 Aug 26 23:45 hosts
drwxr-xr-x 3 root root 60 Apr 16 21:59 lib
drwxrwxrwt 2 root root 380 Aug 26 16:17 lock
drwxr-xr-x 2 root root 80 Apr 16 21:59 log
「cd /tmp」コマンドでファイルをアップロードした場所へ移動します。
「ls -l」コマンドで/tmpのファイル一覧を表示します。アップロードしたファイルが存在していることを確認してください。
バックアップを復元する場所の確認
バックアップファイルを復元する場所を確認しておきます。
バックアップファイルはOpenWrtルーターの「firmware」パーティションへ復元します。
root@OpenWrt:~# cat /proc/mtd ←コマンド入力
dev: size erasesize name
mtd0: 01000000 00010000 "spi0.0"
mtd1: 01000000 00010000 "spi0.1"
mtd2: 00040000 00010000 "u-boot"
mtd3: 00010000 00010000 "u-boot-env"
mtd4: 00010000 00010000 "art"
mtd5: 01f90000 00010000 "firmware"
mtd6: 00200000 00010000 "kernel"
mtd7: 01d90000 00010000 "rootfs"
mtd8: 01a60000 00010000 "rootfs_data"
mtd9: 00010000 00010000 "user_property"
root@OpenWrt:~#
「cat /proc/mtd」コマンドでmtdブロックを一覧表示します。
“firmware”パーティションが存在することを確認します。
バックアップを復元する(注意!!!)
バックアップファイルを”firmware”パーティションへ復元します。
復元コマンドを入力する前に現在のカレントディレクトリが「/tmp」になっていることを確認してください。
大事をとってもう一度「cd /tmp」コマンド入力してもよいですね。
root@OpenWrt: cd /tmp
root@OpenWrt: mtd write ./mtdblock6 "firmware" ←コマンド入力
Unlocking firmware ...
Writing from ./mtdblock6 to firmware ... [e]
「mtd write ./mtdblock “firmware”」コマンドでバックアップを”firmware”パーティションへ復元します。
[e][w][e][w][e][w]…とチカチカするのがバックアップファイルを”firmware”パーティションへ復元している状態です。
OpenWrtルーターの再起動
[e][w][e][w]….の繰り返しが終了しコマンドプロンプト(root@OpenWrt)に戻ってきたらバックアップファイルの復元が完了です。
あとはOpenWrtルーターを再起動すればオリジナルファームウェアでルーターが起動してきます。
root@OpenWrt:/tmp# reboot ←コマンド入力
root@OpenWrt:/tmp#
コマンド「reboot」によってルーターを再起動します。
再起動コマンド(reboot)を実行すると、復元したバックアップからオリジナルファームウェアのインストールが行われてからルーターが起動します。
※ルーター本体の「DIAG」ランプが赤色点滅し、その後起動します。
この状態でルーター本体の電源が切れるとルーターが壊れるので電源プラグには十分注意してください。
まとめ「OpenWrt入門にベスト!WZR-HP-AG300H」
以上、OpenWrtのインストールから楽天ひかりへの接続までを一通りやってみました。
OpenWrtルーターは、市販品のメーカー純正ファームウェアのように最初から「便利・簡単に使える」ようにはなっていませんが、自由にカスタマイズすることができて結果としてメーカー純正ファームウェアではできないこともできてしまいます。
「ネット環境で遊んでみたい」「パソコンいじりが好き」という人なら、一台はOpenWrtルーターを持っておくと面白いですよ。
なんでもできるOpenWrtルーター
OpenWrtは市販品のルーターのように「買ってきてつなげるだけで使える」というようには初期設定されていません。
ただし、この記事でも説明してきたようにちょっとした操作(カスタマイズ)により何でもできるルーターになります。
Wi-Fi機能やUSBポートなど、ハードウェアさえ揃っていればメーカー純正ファームウェアではできないことも自由にできるようになります。
- 「IPv4 over IPv6」のすべてが使える
- 「IPv4 over IPv6」とIPv4/PPPoEの同時利用ができる
- 広告ブロックやセキュリティソフトなど自由にカスタマイズできる
- USBポートを使ってスマホ・iPhoneのUSBテザリングでネット接続できる
- 複数のネット回線につなげることができる(デュアルWAN)
- Wi-Fiを使ってネット接続できる(ワイアレスWAN)
- などなど・・・なんでもできる!
WZR-HP-AG300HでデュアルWAN構成
WZR-HP-AG300HにOpenWrtをインストールすると簡単なVLAN定義により本来のLANポートをWANポートとして使うことができます。
つまり1台のルーターに2つ以上のインターネット接続が確保できるデュアルWAN構成になる、ということです。
WZR-HP-AG300HをデュアルWANルーターとして使うための構築手順は以下の記事を参考にしてみてください。
WZR-HP-AG300HでスマホとUSBテザリング
WZR-HP-AG300HにはUSBポートがあります。
本来の機能はUSBハードディスクを接続してネットワークディスク(簡易NAS)として使うためのポートです。
これをOpenWrt化することであらゆるUSBデバイスを接続・認識し環境構築することができるようになります。
WZR-HP-AG300HをOpenWrt化し、そのUSBポートを使ってスマホとUSB接続することでスマホのネット回線を簡単に利用できるようにするための手順は以下の記事を参考にしてみてください。
WZR-HP-AG300HでWi-Fiスポット接続
OpenWrt化されたルーターは諸事情による初期値としてWi-Fi機能がオフになっています。
これをオンにすることでOpenWrtルーターはWi-Fi親機として使うこともできるしWi-Fi子機(クライアント)として使うこともできるようになります。
OpenWrtルーターをWi-Fi子機(クライアント)として設定し、上位のWi-FiスポットやスマホとWi-Fiテザリングするための手順は以下の記事を参考にしてみてください。
豊富な情報と格安のWZR-HP-AG300H
OpenWrtは非常にたくさんの市販ルーターに対応しています。
OpenWrt入門用としてのおすすめルーターは「バッファローWZR-HP-AG300H」です。
- 安く中古品を入手できる(500円~1,000円程度)
- OpenWrtの実績が豊富で情報量も多い
- USBポートもついている
はじめてOpenWrtにチャレンジする場合はまずは「WZR-HP-AG300H」から始めてみましょう。
1000円程度で作れる最強のルーター
新しいネット回線サービスに契約・乗り換えした場合、プロバイダーが提供している高速通信サービスに対応したルーターが必要です。
お手持ちのルーターがすでに対応していればよいですが、対応していない場合にはわざわざ別途購入しなければなりません。
OpenWrtルーターなら500円程度から購入することができ、導入・カスタマイズも簡単です。
また、さらにネット環境を見直した場合でもほぼOpenWrtルーターで対応することができます。
新しいルーターの購入を検討している方は、まずは1,000円程度でOpenWrtルーターにチャレンジしてみましょう!