OpenWrtをWXR-2533DHPへインストールする、復元もやってみる

スポンサーリンク
OpenWRTルーター OpenWrtルーター
本記事はPRによる消費税込みの価格表示です
本記事はOpenWrt(21.02.3/23.05.0)で検証しています。

OpenWrtルーターは拡張モジュールをインストールすることでさまざまな機能を実現できる仕組みです。

業務用ルーターなどでしか提供されていない機能もOpenWrtルーターを使えばほぼ同様の機能が利用可能、それが一般家庭用の格安ルーターで実現できるのがOpenWrtルーターの魅力です。

しかし、本来一般家庭向けのメーカー独自機能をベースに設計されたハードウェアであることからメモリ容量やディスク容量があまり多くありません。

あまりにも多くの拡張モジュールをインストールしていくとインストール用ディスクの容量不足やプロセス増加によるメモリ不足などに陥る場合もあります。

この点について、OpenWrtが対応している市販ルーターの中でかなりハイスペックなルーターがバッファロー「WXR-2533DHP」です。

ディスク容量/メモリ容量も潤沢でさらにCPUもハイスペックな高機能・高性能ルーターです。

OpenWrtを使いこなしてくるといずれはハイスペックルーターでOpenWrt化を実現したくなります。

この記事ではバッファロー「WXR-2533DHP」にOpenWrtファームウェアをインストールし、楽天ひかり回線に接続する設定までを説明していきます。

  1. OpenWrt最強!?「バッファローWXR-2533DHP」
    1. WXR-2533DHPのスペック
    2. WXR-2533DHPの入手方法
  2. 準備編:必要なものをダウンロード
    1. OpenWrtインストールに必要なもの
    2. 必要なもの① OpenWrt対応ルーター「WXR-2533DHP」
    3. 必要なもの② OpenWrtファームウェア
    4. 必要なもの③TELNET/SSHソフトウェア
    5. 必要なもの④SCPファイル転送ソフトウェア
    6. 必要なもの⑤TFTPサーバーソフトウェア
  3. OpenWrtインストール(WXR-2533DHP)の流れ
    1. インストール手順の概要
  4. インストール① WXR-2533DHPの初期ブート
    1. まずは作業用パソコンの設定
    2. WXR-2533DHPの起動(電源投入)
    3. OpenWrt(WXR-2533DHP)への初期ログイン
  5. インストール② オリジナルファームウェアのバックアップ
    1. バックアップ対象ブロック(パーティション)の確認
    2. ブロックデバイスのバックアップ
    3. バックアップファイルの転送(ルーター→パソコン)
  6. インストール③ OpenWrtファームウェアのインストール
    1. OpenWrtファームウェア本体のファイル転送
    2. OpenWrtファームウェアのインストール
  7. 初期設定編 やっておきたいOpenWrtの初期設定
    1. 管理者パスワードの設定
    2. 管理画面(LuCI)を日本語化しておこう
    3. タイムゾーンを日本(Asia/Tokyo)に設定しておこう
  8. 通信設定① フレッツ光回線へIPv6/IPoE接続設定
    1. 「IPv6/IPoE」を設定してみよう
    2. WAN6インターフェースの「DHCPサーバー・タブ」が表示されない場合
  9. 通信設定② IPv4 over IPv6「DS-Lite」接続設定
    1. DS-Liteインターフェース定義
    2. DS-Liteによる接続の確認
  10. 通信設定③ ついでにPPPoE接続も併用設定
    1. 1台のルーターでDS-LiteとPPPoEを併用する環境
    2. IPv4/PPPoEインターフェース定義
    3. DS-LiteとPPPoEの基本ルーティング設定
    4. 個別ルーティング(特定IPアドレスへの通信)の定義
  11. 復元編:オリジナル「WXR-2533DHP」に戻す(復元)
    1. SSHでOpenWrtルーターへログイン
    2. バックアップファイルをSCP転送
    3. バックアップのアップロード結果を確認
    4. バックアップを復元する場所の確認
    5. バックアップを復元する(注意!!!)
    6. OpenWrtルーターの再起動
  12. まとめ「OpenWrt最強ルーター!?WXR-2533DHP」
    1. なんでもできるOpenWrtルーター
    2. WXR-2533DHPでスマホとUSBテザリング
    3. WXR-2533DHPでWi-Fiスポット接続
    4. 豊富な情報と格安のWZR-HP-AG300H
    5. 5000円程度で作れる最強のルーター

OpenWrt最強!?「バッファローWXR-2533DHP」

バッファローWXR-2533DHPはOpenWrtが対応しているルーターの中ではかなりスペックの高い部類に入ります。

とくにRAM(メモリー)やFlash(ディスク)が比較的大きく、よりたくさんのOpenWrt拡張モジュールをインストールできる、たくさんのプロセスを動かせる、というメリットがあります。

WXR-2533DHP | バッファロー

後継機種としてWXR-2533DHP2という機種もありますがスペック的に大きな違いはなく、OpenWrtのインストール手順・復元手順なども同じです。

ただし、後継機種WXR-2533DHP2はUSB3.0が1ポート(WXR-2533DHPは2ポート)という違いがあります。

WXR-2533DHP2 | バッファロー

本記事ではWXR-2533DHPを対象としてOpenWrtファームウェアをインストール/復元する手順を説明していきますが、後継機種WXR-2533DHP2でも同じ手順でのインストール/復元が可能です。

WXR-2533DHPのスペック

WXR-2533DHPおよび後継機WXR-2533DHP2のスペックは以下の通りです。

比較のためにOpenWrtのスタンダードとして人気のWZR-HP-AG300Hも比較のために乗せてみます。

製品名 WXR-2533DHP WXR-2533DHP2 WZR-HP-AG300H
CPU Qualcomm
IPQ8064
Atheros
AR7161
RAM 512MB 128MB
FLASH 256MB 32MB
WANポート 10BASE/100BASE/1000BASE
※1ポート
LANポート 10BASE/100BASE/1000BASE
※4ポート
Wi-Fi 802.11b/g/n/ac 802.11b/g/n
USBポート USB3.0 × 2 USB3.0 × 1 USB2.0 × 1

発売時期が違うのでWXR-2533DHPがハイスペックなのがわかりますが、特にRAM/FLASHが大きいことが魅力です。

OpenWrtルーターはさまざまな拡張モジュールをインストールして機能追加することができるので、拡張モジュールをインストールするためのFLASH領域やたくさんのプログラムを動かすためのRAMが大きいというのは魅力です。

WXR-2533DHPの入手方法

WXR-2533DHPは2015年発売、後継機WXR-2533DHP2は2016年の発売で、すでにどちらも製造を終了しています。

どちらも発売当時はバッファローのフラッグシップモデルとしての高機能ルーターであり、また大ヒットしたルーターでもあることから、今でも程度の良い中古品がフリーマーケットなどで安く購入することができます。

メルカリでWXR-2533DHPを検索 | メルカリ

また、一部在庫としてAmazonではWXR-2533DHP2の新品が今でも販売されています。

Amazonでも新品がかなり安く、フリーマーケットで売られている中古品との価格差もあまりないことから、WXR-2533DHP2についてはAmazonでの新品購入もおすすめです。

準備編:必要なものをダウンロード

ではここからWZR-HP-AG300HにOpenWrtをインストールしていきます。

まずは「準備編」としてOpenWrtファームウェアのダウンロードとWZR-HP-AG300Hの状態初期化について説明していきます。

OpenWrtインストールに必要なもの

前提として私の作業環境はWindowsPC(OS:Windows10)とします。

OpenWrtルーター構築に必要なもの

  • 作業用パソコン
    ⇒ ここではWindows10のノートパソコンを使用
  • OpenWrt対応ルーター
    ⇒ ここでは「バッファローWXR-2533DHP」
    ⇒ 後継機種「WXR-2533DHP2」でも可
  • OpenWrtファームウェア(初期ブート用)
    ⇒ 公式サイトからダウンロード
  • OpenWrtファームウェア(ファームウェア本体)
    ⇒ 公式サイトからダウンロード
  • TELNET/SSHツール
    ⇒ ここではTeraTermを利用
  • SCPファイル転送ソフト
    ⇒ ここではTeraTermのssh/scp機能を利用
  • TFTPサーバーソフトウェア
    ⇒ ここではtftpd64を利用

必要なもの① OpenWrt対応ルーター「WXR-2533DHP」

この記事ではOpenWrt化するルーターとしてバッファローWXR-2533DHPを使用します。

後継機種であるWXR-2533DHP2も同様の手順でOpenWrt化することができます。

必要なもの② OpenWrtファームウェア

OpenWrtファームウェアはOpenWrtプロジェクト公式サイトより事前にダウンロードしておきます。

OpenWrtプロジェクト(公式サイト) | OpenWrtプロジェクト

注意点として、WXR-2533DHPをOpenWrt化するためには「初期ブート用ファームウェア」と「ファームウェア本体」が必要という点です。

つまり2つのファームウェアをダウンロードしておく必要があります。

初期ブート用ファームウェアって何?

初期ブート用ファームウェアとは、「とりあえずOpenWrt環境でルーターを起動する」ためだけのファームウェアです。

まずはこの初期ブート用ファームウェアでWXR-2533DHPをOpenWrtルーターとして仮に起動し、その環境の中で本格的なOpenWrt本ファームウェアのインストールを行う、という環境になります。

ファイル名末尾が「****buffalo_wxr-2533dhp-initramfs-uImage」というファイル名になります。

ファームウェア本体

ファームウェア本体が実際にWXR-2533DHPへインストールするファームウェア本体になります。

初期ブート用ファームウェアで仮起動させたWXR-2533DHPの環境を使い、「sysupgradeコマンド」によりファームウェア本体をWXR-2533DHPへインストールする、という手順になります。

ファイル名末尾が「****buffalo_wxr-2533dhp-squashfs-sysupgrade.bin」というファイル名になります。

必要なOpenWrtファームウェアのダウンロード

インストールに必要なOpenWrtファームウェアは以下のリンク(ファームウェアセレクター)からダウンロードしてください。

OpenWrtファームウェアセレクター | OpenWrtプロジェクト

お好きなバージョンを選択できますが、バージョンはリリースビルド(“-RC”のついていないもの)が良いでしょう。

OpenWrtファームウェアセレクター

「KERNEL」イメージが初期ブート用ファームウェアです。

「SYSUPGRADE」イメージがファームウェア本体です。

両方ともダウンロードしておきます。

必要なもの③TELNET/SSHソフトウェア

OpenWrtファームウェアはLinuxベースのOSなので、環境操作にはtelnetクライアントやsshクライアントが必要です。

本記事ではtelnetクライアントおよびsshクライアントとしてTeraTermを利用します。

TeraTerm ダウンロード | OSDN

必要なもの④SCPファイル転送ソフトウェア

WindowsパソコンとOpenWrtルーター間でのファイル転送のため、scpファイル転送ソフトウェアが必要です。

ファイル転送はパソコンへダウンロードしたOpenWrtファームウェアの転送やバックアップしたオリジナルファームウェアの転送に使います。

本記事ではteratermが持っている「ssh/scp」機能を使ってファイル転送を行います。

TeraTerm ダウンロード | OSDN

必要なもの⑤TFTPサーバーソフトウェア

WXR-2533DHPへOpenWrtをインストールするための「初期起動用ファームウェア」を転送するために使用します。

WXR-2533DHPは「AOSS」ボタンを押下しながら電源投入することで、特定のTFTPサーバーへ初期ファームウェア(起動用)を要求し、その初期ファームウェアを使って初期起動します。

この「特定のTFTPサーバー」の環境構築のためにTFTPサーバーソフトウェアが必要です。

本記事ではフリーソフト「tftpd64」を使ってファイル転送を行います。

tftpd64 ダウンロード | Github

OpenWrtインストール(WXR-2533DHP)の流れ

必要なものがそろったら早速WXR-2533DHPへOpenWrtをインストールしていきましょう。

インストール手順の概要

インストールの手順は大きく分けて以下のような3つの手順となります。

  • STEP1
    WXR-2533DHPの初期ブート(initramfs)

    TFTPサーバーから初期ファームウェア(initramfs)を流し込むことでWXR-2533DHPを初期ブートします。

    ダウンロードしたファイルの「****buffalo_wxr-2533dhp-initramfs-uImage」のファイルを使って初期ブートします。

  • STEP2
    オリジナルファームウェアのバックアップ(任意)

    この時点で必要であればWXR-2533DHPのオリジナルファームウェアをバックアップします。

    バックアップは任意ですが、この時点でしか取得できません。

  • STEP3
    OpenWrtファームウェアのインストール(sysupgrade)

    OpenWrtファームウェアをインストールします(sysupgrade)。

    ダウンロードした「****buffalo_wxr-2533dhp-squashfs-sysupgrade.bin」のファイルをインストールします。

    インストール完了で自動的にOpenWrtルーターとして再起動します。

インストール① WXR-2533DHPの初期ブート

WXR-2533DHP初期ブートに必要なもの

  • OpenWrtの初期ブート用ファームウェア(initramfs)
  • TFTPサーバー環境
  • WindowsPC

まずは作業用パソコンの設定

作業用パソコンのIPアドレス設定

WXR-2533DHPの初期ブート機能には以下のような決まりがあります。

WXR-2533DHP初期ブートの起動条件

  • ルーター本体のIPアドレスは192.168.10.1となる
  • 要求する初期ファームウェアのファイル名はwxr2300dhp-initramfs.uImage
  • 要求するTFTPサーバーのIPアドレスは192.168.11.10となる

まず、作業用パソコンのIPアドレスを「192.168.11.10/24」に設定します。

以下のようにパソコンのIPアドレスを設定します。

OpenWrtをWXR-2533DHPへインストール

TFTPサーバー環境

WXR-2533DHPが初期ブート用のファームウェアを要求してくるためのtftpサーバーの環境を構築します。

本記事ではtftpサーバーとしてフリーソフトウェアtftpd64を使います。

TFTPサーバー「TFTPD64」 | Github

上記のGithubから適当なファイルをダウンロードします。

現時点での最新版として「TFTPD64.464.zip」をダウンロードし、パソコンの適当なディレクトリに解凍(圧縮展開)しておきます。

また、要求される初期ファームウェアとして同じディレクトリにOpenWrt初期ファームウェアを「wxr-2300dhp-initramfs.uImage」にリネームして置いておきます。

以下のようなディレクトリになります。

OpenWrtをWXR-2533DHPへインストール

※リネームする初期ファームウェアはダウンロードしたファイルの「****buffalo_wxr-2533dhp-initramfs-uImage」のファイルです。

初期ブート用ファームウェアを配置したらtftpサーバーを起動します。

tftpd64.exeをクリックすると以下のような画面となります(特に設定は不要)。

OpenWrtをWXR-2533DHPへインストール

パソコンのファイアウォールを停止

パソコンにはファイアウォールの機能があり、これが通信を遮断してしまいます(TFTP通信ができない)。

このため、事前にファイアウォールを一時的に停止しておきます。

Windows標準のファイアウォールは以下の手順で停止します。

「コントロールパネル > システムとセキュリティ > Windows Defender ファイアウォール」を開き、「Windows Defenderファイアウォールの有効かまたは無効化」を選びます。

OpenWrtをWXR-2533DHPへインストール

プライベートネットワークおよびパブリックネットワークに対してWindowsDefenderファイアウォールを無効化します。

OpenWrtをWXR-2533DHPへインストール

以上でWindows Defenderファイアウォールは無効化されました。

なお、インストール完了後には忘れずに有効化しておきましょう。

WXR-2533DHPの起動(電源投入)

ではWXR-2533DHPを初期ブートモードで起動します。

WXR-2533DHPを初期ブートさせるための操作は以下のような手順となります。

WXR-2533DHPの初期ブートプロセス
  • STEP1
    AOSSボタンを押しながら電源投入(操作)

    WXR-2533DHP本体の「AOSS」ボタンを押しながら電源を投入します。

    電源投入時には本体前面の4つのランプが点灯し、消灯します。

  • STEP2
    Wireless LEDが点滅したらAOSSボタンを離す(操作)

    WXR-2533DHP本体の「Wireless」ランプが点滅を開始したら「AOSS」ボタンを離します。
  • STEP3
    TFTPサーバーより初期ファームウェアをロード(内部処理)

    WXR-2533DHPがTFTPサーバーから初期ファームウェアをダウンロードし、OpenWrtが起動します。
  • STEP4
    初期ファームウェアで起動(内部処理)

    起動処理中は「Power」ランプが点滅します(約3分くらい?)。
    また、TFTPサーバーのログを確認してみましょう、ログが残ってない場合には初期ファームウェアのダウンロードに失敗していると思われます。
  • STEP5
    OpenWrt初期起動完了(内部処理)

    パソコンからping(192.168.1.1)を打って疎通確認しましょう。

STEP2の「Wirelessランプが点滅を開始したらAOSSボタンを離す」というところが慌ててしまいそうですが、時間的な余裕もあるので慌てる必要はありません。

また、STEP1の「電源投入時に本体前面の4つのランプが点灯・消灯」とSTEP2の「Wirelessランプの点滅」は別なので注意です。

「電源投入時には4つのランプが点灯・消灯(STEP1)」「Wirelessランプの点滅開始でAOSSボタンを離す(STEP2)」という手順になります。

「AOSS」ボタン、および「Wireless」ランプの場所は以下のようになります。

OpenWrtをWXR-2533DHPへインストール

「AOSSボタン押したまま電源を入れる」「Wirelessランプが点滅したらAOSSボタンを離す」だけで、あとは勝手にWXR-2533DHPがTFTPサーバーから初期ファームウェアをダウンロードしてくれます。

WXR-2533DHPとTFTPサーバー間の通信が正常に通信できる環境であれば、「AOSSボタンを離す」の1~2秒後にはTFTPサーバーからの初期ファームウェア転送が完了しているはずです。

TFTPサーバー側の通信ログを確認して、正常にTFTP通信が完了しているかどうか確認してみてください。

tftpd64の場合は以下のように「Log Viewer」タブから通信ログを確認することができます。

OpenWrtをWXR-2533DHPへインストール

「AOSSボタンを離す」のあと、1分程度たっても上記のログが確認できない場合、おそらくTFTP通信に失敗しています。

「失敗かな?」と思ったら再度WXR-2533DHPの電源を切り、以下の点を確認してみてください。

TFTP通信に失敗した場合の確認事項

  • AOSSボタンを離すタイミングを変えてみる(もう一度やり直し)
  • パソコンのファイアウォールを確認してみる(停止している?)
  • パソコン環境を確認してみる(IPアドレス)
  • 初期ファームウェアのファイル名を確認してみる

正常にTFTP通信により初期ファームウェアがロードされると、WXR-2533DHPは自動的にOpenWrt初期ファームウェアで再起動してきます。

再起動には2~3分程度の時間がかかり、「POWER」ランプが点滅します。

OpenWrt初期ファームウェアの環境ではOpenWrtルーターの本体IPアドレスは「192.168.1.1」となっているため、パソコンのIPアドレスも変更しておきましょう。

OpenWrt(WXR-2533DHP)への初期ログイン

OpenWrtルーターは本体アドレス「192.168.1.1」で起動してきます。

また、DHCPサーバー機能も有効になっています。

作業用パソコンのIPアドレスは「192.168.11.10」に設定しているため、この時点でIPアドレスを「DHCPから取得する」に変更し、再起動しておきましょう。

OpenWrtをWXR-2533DHPへインストール

IPアドレスの取得設定を変更し、パソコンを再起動(IPアドレスの再取得)したらSSHクライアント(teraterm)でWXR-2533DHPへログインします。

初期ブートしているOpenWrtルーターのIPアドレスは「192.168.1.1」になっています。

OpenWrtをWXR-2533DHPへインストール

SSH鍵の認証画面が表示されるので、そのまま「続行」を押下します。

OpenWrtをWXR-2533DHPへインストール

ログイン画面になります。

初期ブートしているOpenWrtルーターの管理者IDは「root」パスワードはなし(未入力)となっています。

OpenWrtをWXR-2533DHPへインストール

OpenWrtをWXR-2533DHPへインストール

管理人
管理人
以上でOpenWrtで初期ブートしているWXR-2533DHPへのSSHログインが完了です。
引き続き、オリジナルファームウェアのバックアップやOpenWrtの本インストールを行っていきます。

インストール② オリジナルファームウェアのバックアップ

ここからWXR-2533DHPにOpenWrtをインストールしていきますが、必要であればバッファロー製のオリジナルファームウェアのバックアップを取ることができます。

バックアップを取得できるタイミングはこの時点だけになるため、ここでバックアップを取らない場合には(基本的に)オリジナルファームウェアに戻すことはできません。

バックアップは任意ですが、まぁとっておいたほうが良いでしょう。

バックアップ対象ブロック(パーティション)の確認

OpenWrtのシステム領域はブロックデバイスで管理されています。

まずはどのようなブロックデバイスがあるのかを確認してみます。

ブロックデバイスのブロック名は「dev」の欄であり、対応するパーティション名は「name」の欄となります。


root@OpenWrt:~# cat /proc/mtd
dev:    size   erasesize  name
mtd0: 04000000 00020000 "ubi"
mtd1: 04000000 00020000 "rootfs_1"
mtd2: 00010000 00010000 "SBL1"
mtd3: 00020000 00010000 "MIBIB"
mtd4: 00030000 00010000 "SBL2"
mtd5: 00030000 00010000 "SBL3"
mtd6: 00010000 00010000 "DDRCONFIG"
mtd7: 00010000 00010000 "SSD"
mtd8: 00030000 00010000 "TZ"
mtd9: 00020000 00010000 "RPM"
mtd10: 00070000 00010000 "APPSBL"
mtd11: 00010000 00010000 "APPSBLENV"
mtd12: 00040000 00010000 "ART"
mtd13: 00010000 00010000 "BOOTCONFIG"
mtd14: 00070000 00010000 "APPSBL_1"
root@OpenWrt:~# 

バックアップとして取得すべきパーティションは「ubi」パーティションです。

上記のような環境において、バックアップ対象となる「ubi」パーティションは「mtd0」ブロックであることがわかります。

つまりmtd0ブロックがバックアップ対象ということになります。

ブロックデバイスのバックアップ

では、「ddコマンド」で「mtd0ブロック(ubiパーティション)」をバックアップしてみます。


root@OpenWrt:~# cd /tmp
root@OpenWrt:/tmp# dd if=/dev/mtd0 of=/tmp/mtdblock0.ubi

**ファイルを確認する**

root@OpenWrt:/tmp# ls -l ←コマンド入力
-rw-r--r--    1 root     root             4 Apr 27 20:28 TZ
-rw-r--r--    1 root     root          1204 Jan  1  1970 board.json
-rw-r--r--    1 root     root            71 Aug  6 14:32 dhcp.leases
drwxr-xr-x    2 root     root            40 Apr 27 20:28 dnsmasq.d
drwxr-xr-x    3 root     root            80 Apr 27 20:28 etc
drwxr-xr-x    2 root     root            80 Apr 27 20:28 hosts
drwxr-xr-x    3 root     root            60 Apr 27 20:28 lib
drwxrwxrwt    2 root     root           380 Apr 27 20:28 lock
drwxr-xr-x    2 root     root            80 Apr 27 20:28 log
-rw-r--r--    1 root     root      67108864 Aug  6 14:44 mtdblock0.ubi
-rw-r--r--    1 root     root            47 Apr 27 20:28 resolv.conf
drwxr-xr-x    2 root     root            60 Aug  6 14:43 resolv.conf.d
drwxr-xr-x    7 root     root           280 Apr 27 20:28 run
drwxrwxrwt    2 root     root            40 Jan  1  1970 shm
drwxr-xr-x    2 root     root            80 Aug  6 14:30 state
drwxr-xr-x    2 root     root            80 Jan  1  1970 sysinfo
drwxr-xr-x    2 root     root            40 Apr 27 20:28 tmp
root@OpenWrt:/tmp# 

ここでは「mtd0ブロック(ubiパーティション)」をファイル名「mtdblock0.ubi」としてバックアップしました。
※ファイル名は任意です。

「lsコマンド」でバックアップファイルがあることを確認します。

バックアップファイルの転送(ルーター→パソコン)

バックアップしたファイル(ここではmtdblock0.ubi)はscpファイル転送によりパソコンへダウンロードし、大切に保管しておきます。

この記事ではteratermの「ssh/scp」転送機能を使ってファイル転送します。

OpenWrtをWXR-2533DHPへインストール

OpenWrtをWXR-2533DHPへインストール

管理人
管理人
以上でメーカー製オリジナルファームウェアのバックアップは完了です。
転送したバックアップファイルは大切に保管しておきましょう。

インストール③ OpenWrtファームウェアのインストール

現在、OpenWrtルーターが初期ファームウェアで起動している状態です。

この時点ではまだOpenWrtファームウェア本体はインストールされていないため、このまま電源を落としてWXR-2533DHPを再起動するとバッファロー製のオリジナルファームウェアで起動する状態です。

OpenWrtファームウェア本体のファイル転送

では、OpenWrtルーターへファームウェア本体をインストールしていきます。

インストール手順は簡単で、「OpenWrtファームウェア本体をパソコンからルーターへ転送」「sysupgradeコマンドでインストール」という手順です。

では、まずOpenWrtファームウェア本体をルーターへ転送します。

この記事ではteratermの「ssh/scp」転送機能でファイル転送します。

OpenWrtをWXR-2533DHPへインストール

ファイル転送の画面より、転送元はパソコンに保存しているOpenWrtファームウェア本体を指定します。

転送先ディレクトリは「/tmp」とします。

OpenWrtをWXR-2533DHPへインストール

ファイル転送が終わったら転送されているかどうかを確認してみましょう。


root@OpenWrt:~# cd /tmp
root@OpenWrt:/tmp# ls -l
-rw-r--r--    1 root     root             4 Apr 27 20:28 TZ
-rw-r--r--    1 root     root          1204 Jan  1  1970 board.json
-rw-r--r--    1 root     root            71 Aug  6 14:32 dhcp.leases
drwxr-xr-x    2 root     root            40 Apr 27 20:28 dnsmasq.d
drwxr-xr-x    3 root     root            80 Apr 27 20:28 etc
drwxr-xr-x    2 root     root            80 Apr 27 20:28 hosts
drwxr-xr-x    3 root     root            60 Apr 27 20:28 lib
drwxrwxrwt    2 root     root           380 Apr 27 20:28 lock
drwxr-xr-x    2 root     root            80 Apr 27 20:28 log
-rw-r--r--    1 root     root       6488219 Aug  3 14:07 openwrt-22.03.5-ipq806x-generic-buffalo_wxr-2533dhp-initramfs-uImage
-rw-r--r--    1 root     root            47 Apr 27 20:28 resolv.conf
drwxr-xr-x    2 root     root            60 Aug  6 14:43 resolv.conf.d
drwxr-xr-x    7 root     root           280 Apr 27 20:28 run
drwxrwxrwt    2 root     root            40 Jan  1  1970 shm
drwxr-xr-x    2 root     root            80 Aug  6 14:30 state
drwxr-xr-x    2 root     root            80 Jan  1  1970 sysinfo
drwxr-xr-x    2 root     root            40 Apr 27 20:28 tmp
root@OpenWrt:/tmp# 

OpenWrtファームウェアがファイル存在し、ファイルサイズも正しいことを確認します。

OpenWrtファームウェアのインストール

では「sysupgradeコマンド」でOpenWrtファームウェアをインストールします。


root@OpenWrt:/tmp# sysupgrade ./openwrt-22.053.5-ipq806x-generic-buffalo_wxr-2533dhp-squashfs-sysupgrade.bin
Cannot save config while running from ramdisk.
Sun Aug  6 14:49:35 UTC 2023 upgrade: Commencing upgrade. Closing all shell sessions.
Command failed: Connection failed
root@OpenWrt:/tmp# 

「sysupgradeコマンド」を実行すると、ssh接続は切断されるためsshクライアント(この記事ではteraterm)は強制終了します。

この後、WXR-2533DHP本体の「Power」ランプが点滅を開始し、インストールが完了すると(約3分程度)自動的にOpenWrtが起動してきます。

パソコンから「192.168.1.1」にpingを打って疎通確認できれば再起動しています。


C:\>ping -t 192.168.1.1

192.168.1.1 に ping を送信しています 32 バイトのデータ:
要求がタイムアウトしました。
要求がタイムアウトしました。
要求がタイムアウトしました。
要求がタイムアウトしました。
要求がタイムアウトしました。
192.168.1.1 からの応答: バイト数 =32 時間 <1ms TTL=64 ←ルーターが起動した!
192.168.1.1 からの応答: バイト数 =32 時間 <1ms TTL=64
192.168.1.1 からの応答: バイト数 =32 時間 <1ms TTL=64
192.168.1.1 からの応答: バイト数 =32 時間 <1ms TTL=64

*Ctl-Cでブレイクしておく


ルーターが再起動したことを確認したらパソコンでブラウザを立ち上げ「http://192.168.1.1」でOpenWrtルーターの管理画面(LuCI)へ接続できます。

OpenWrt管理画面(LuCI)ログイン画面

上記のような管理画面へのログイン画面が表示されるとOpenWrtのインストールは完了しています。

管理人
管理人
以上でWXR-2533DHPへのOpenWrtファームウェアインストールは完了です。

初期設定編 やっておきたいOpenWrtの初期設定

OpenWrtのインストールが完了したところで、ここからはOpenWrtを使ってルーターの設定を行っていきます。

ゴールとしてはプロバイダー接続(この記事では楽天ひかり)してIPv4およびIPv6によるインターネット接続ができるとことまで、とします。

管理者パスワードの設定

インストール直後のOpenWrtは管理者権限のパスワードが設定されていないので、まずはパスワードを設定しましょう。

管理者パスワードの設定手順
  • STEP1
    パスワード入力画面へ

    OpenWrt管理画面(LuCI)パスワード設定

    メニュー「System > Administration」からパスワード設定画面へ遷移します。

  • STEP2
    パスワードの設定

    OpenWrt管理画面(LuCI)パスワード設定

    タブ「Router Password」画面でパスワードを設定(2か所・確認用)し、「Save」ボタンを押下します。

  • STEP2
    パスワードの確認

    OpenWrt管理画面(LuCI)パスワード設定

    パスワード設定を行ったらメニュー「Logout」からいったんログアウトし、再度ログインしてみましょう。

いったんログアウトして再ログインすることで、パスワードの確認を行ってください。

管理画面(LuCI)を日本語化しておこう

IPv6/IPoEでのインターネット接続ができるようになったところで、管理画面(LuCI)を日本語化してみましょう。

※「英語メニューのほうが好き!」という方、お好みで!

管理画面(LuCI)の日本語化はOpenWrt公式サイトから日本語モジュールをダウンロードして適用、という手順を踏みます。

  • STEP1
    ソフトウェアアップデート画面へ

    OpenWrt管理画面(LuCI)ソフトウェア更新画面

    メニュー「System > Software」からソフトウェアアップデート画面へ遷移します。

  • STEP2
    更新プログラムの一覧を更新

    OpenWrt管理画面(LuCI)ソフトウェア更新画面

    まずは更新・インストール可能なプログラム一覧を取得します。

    ソフトウェア画面のアクション(Actions)「Update List」から更新可能なプログラム一覧を更新します。

    OpenWrt管理画面(LuCI)ソフトウェア更新画面

    更新可能プログラム一覧の更新が完了するとメッセージが表示されるので、画面下の「Dismiss(閉じる)」ボタンでメッセージ画面を閉じます。

  • STEP3
    日本語モジュールのインストール

    OpenWrt管理画面(LuCI)ソフトウェア更新画面

    日本語モジュールは「luci-i18n-base-ja」というモジュールになり、これをインストールすることでOpenWrt管理画面(LuCI)を日本語化することができます。

    インストールする日本語化モジュール
    ・luci-i18n-base-ja

以上でOpenWrt管理画面(LuCI)を日本語化することが可能です。

タイムゾーンを日本(Asia/Tokyo)に設定しておこう

ルーターのタイムゾーンを日本(Asia/Tokyo)に設定しておきましょう。

タイムゾーンの設定手順
  • STEP1
    タイムゾーン設定画面へ

    OpenWrt管理画面タイムゾーン設定

    メニュー「システム > システム」でタイムゾーン設定画面へ遷移します。

  • STEP2
    タイムゾーン「Asia/Tokyo」の設定

    OpenWrt管理画面タイムゾーン設定

    「一般設定」タブの「タイムゾーン」一覧から「Asia/Tokyo」を選択します。

    選択後「保存&適用」ボタン押下でタイムゾーンが「Asia/Tokyo」に変更されます。

通信設定① フレッツ光回線へIPv6/IPoE接続設定

インストール直後のOpenWrtルーターにはIPv4用とIPv6用の通信用インターフェースが定義されています。

この時点ではそれぞれ「DHCP(IPv4)クライアント」「DHCPv6クライアント」用のインターフェースとして定義されているので、上位ルーターへ接続することで即インターネット利用可能な状態になっています。

たとえば「ひかり電話ルーター」「NTTドコモhome5G」などの上流ルーターなど、すでに自宅で利用中のルーターということです。

「IPv6/IPoE」を設定してみよう

フレッツ光回線(NGN網)はIPv6/IPoEでの接続通信が前提としたネットワークです。

IPv6/IPoE対応ルーターをONU(またはVDSLモデム)に接続するとVNEより付与されたIPv6アドレスを使って即インターネットが利用できる環境になります。

では、インストールしたばかりのOpenWrtルーターをIPv6/IPoEでフレッツ光回線に接続してみましょう。

IPv6/IPoEのインターフェース定義
  • STEP1
    インターフェース定義画面へ

    OpenWrt管理画面インターフェース定義

    メニュー「ネットワーク > インターフェース」からインターフェース定義画面へ遷移します。

  • STEP2
    インターフェース定義の確認

    OpenWrt管理画面「インターフェース定義」

    インターフェース定義画面の「インターフェース」タブにて現在(初期値)のインターフェース定義を確認しておきましょう。

    インストール直後の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」の定義変更

    OpenWrt管理画面「インターフェース定義」

    まずはLANインターフェース定義を変更します。

    現時点でもWAN6(IPv6)インターフェースはNTTフレッツ光回線網のIPv6アドレスが付与されているのですが、このアドレスをLAN内のデバイス(パソコンやスマホ)へリレーしてあげる設定を行います。

    「LAN」インターフェースの「編集」ボタンを押下します。

    OpenWrt管理画面「インターフェース定義」

    「LAN」インターフェース編集画面の「DHCPサーバー > IPv6設定」より上記3か所の設定を見直し・修正します。

    RA-Service リレーモード
    DHCPv6サービス サーバーモード
    NDPプロキシ リレーモード

    上記3か所を修正したら「保存」ボタン押下で画面を閉じます。

  • STEP4
    インターフェース「WAN6」の定義変更

    OpenWrt管理画面「インターフェース定義」

    次にLAN6インターフェース定義(IPv6接続定義)を変更します。

    こちらもLANインターフェース定義と同じで、NTTフレッツから付与されているIPv6アドレスをLANインターフェースへリレーしてあげる設定を行います。

    「WAN6」インターフェースの「編集」ボタンを押下します。

    OpenWrt管理画面「インターフェース定義」

    「WAN6」インターフェース編集画面の「DHCPサーバー」タブ画面より「DHCPサーバーをセットアップ」を押下します。

    OpenWrt管理画面「インターフェース定義」

    「DHCPサーバー > IPv6設定」画面よりDHCPv6の定義を以下のように変更します。

    Designaled master チェックする
    RA-Service リレーモード
    DHCPv6サービス リレーモード
    NDPプロキシ リレーモード

    上記4か所を修正したら「保存」ボタン押下で画面を閉じます。

  • STEP5
    設定の反映

    OpenWrt管理画面「インターフェース定義」

    インターフェース定義画面に戻りました。

    この時点ではまだインターフェース定義は「保留中」です。

    画面下の「保存&適用」ボタン押下により「IPv6/IPoE」インターフェースが有効になります。

    なお、この設定変更はWAN6側に付与されているIPv6アドレスをLAN内のデバイス(パソコンやスマホ)へリレーしてあげる設定なので、パソコンも再起動しておきましょう。

  • STEP6
    IPv6/IPoE接続の確認

    OpenWrt管理画面「インターフェース定義」

    IPv6接続確認サイトで接続状況を確認してみましょう。

    IPv6-test.com

    上記のように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'


通信設定② IPv4 over IPv6「DS-Lite」接続設定

「IPv6/IPoE」によるIPv6通信環境の設定が完了したら次は「DS-Lite」によるIPv4通信カプセル化の仕組みを構築します。

この手順は「DS-Liteモジュールのインストール(ダウンロード)」を行い「DS-Lite用インターフェース作成」という手順になります。

DS-Liteインターフェース定義

では早速DS-Liteインターフェースの定義を行っていきます。

DS-Lite通信設定手順
  • STEP1
    ソフトウェアアップデート画面へ

    OpenWrt管理画面(LuCI)ソフトウェア更新画面

    メニュー「System > Software」からソフトウェアアップデート画面へ遷移します。

  • STEP2
    更新プログラムの一覧を更新

    OpenWrt管理画面(LuCI)ソフトウェア更新画面

    まずは更新・インストール可能なプログラム一覧を取得します。

    ソフトウェア画面のアクション(Actions)「Update List」から更新可能なプログラム一覧を更新します。

    OpenWrt管理画面(LuCI)ソフトウェア更新画面

    更新可能プログラム一覧の更新が完了するとメッセージが表示されるので、画面下の「Dismiss(閉じる)」ボタンでメッセージ画面を閉じます。

  • STEP3
    ds-liteモジュールのインストール

    OpenWrt管理画面ds-liteモジュールのインストール

    更新・インストール可能プログラムの一覧から「ds-lite」で絞り込みを行います。

    一覧に表示される「ds-lite」をインストールします。

  • STEP4
    ルーターの再起動

    OpenWrt管理画面システム再起動

    「ds-lite」モジュールはルーターを再起動して反映させる必要があります。

    メニュー「システム > 再起動」からルーターを再起動してください。

  • STEP5
    DS-Liteインターフェースの作成

    OpenWrt管理画面インターフェース定義

    メニュー「ネットワーク > インターフェース」からインターフェース定義画面へ遷移します。

    OpenWrt管理画面インターフェース定義

    インターフェース定義画面より「インターフェースを新規作成」ボタンを押下します。

    OpenWrt管理画面インターフェース定義

    インターフェース名は何でもよいので自分でわかりやすい名前を設定します。

    プロトコルにはDS-Lite規格である「Dual-Stack Lite(RFC6333)」を選択します。

    名前 ご自由に
    ※「xpass」など
    プロトコル Dual-Stack Lite(RFC6333)

    プロトコルを選択したらいったん「インターフェースの作成」ボタンを押下しておきます。

    OpenWrt管理画面インターフェース定義

    画面「一般設定」タブから利用する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

  • STEP6
    ファイアウォールゾーンの設定

    OpenWrt管理画面インターフェース定義

    作成したインターフェースを「ファイアウォール設定」タブから「WANファイアウォールゾーン」に追加定義しておきます。

    ファイアウォールゾーンの設定が完了したら「保存」ボタンを押下して画面を閉じます。

  • STEP7
    設定の反映

    OpenWrt管理画面インターフェース定義

    以上でDS-Lite(今回はクロスパス)のインターフェース定義が完了です。

    ただし、ここまでのインターフェース定義は現時点ではまだルーターに反映されていません(保有中)。

    なので「保存&適用」を押下してインターフェース定義をルーターに反映させます。

以上で「DS-Lite」のインターフェース定義は完了です。

DS-Liteによる接続の確認

これでDS-Liteによる通信環境の設定は完了です。

以下のIPv6接続確認サイトにて通信状態を確認してみましょう。

IPv6接続確認サイト | ipv6-test.com

OpenWrt管理画面「インターフェース定義」

上記のようにIPv6での接続が確認できました。接続ISPは「日本ネットワークインフォメーションセンター(JPNIC)」になっていますね・・・

また、前節で登録した楽天ひかりの「IPv4/PPPoE」も有効になっているため、IPv4は楽天ひかりと提携するISP(ARTERIA)になっています。

つまり、この状態は「IPv4/PPPoE + IPv6/IPoEデュアルスタック」での接続状態になっています。

通信設定③ ついでにPPPoE接続も併用設定

ここまでの作業でWXR-2533DHPをOpenWrt化し、楽天ひかりへ「IPv6/IPoE + IPv4 over IPv6(クロスパス)」で接続することができました。

楽天ひかりは高速通信クロスパスに加えて従来の通信方式「IPv4/PPPoE通信方式」も標準提供しており、どちらも標準で利用することができます。

せっかく使える機能なのでクロスパスによる通信に加えてIPv4/PPPoE通信も併用できる環境を構築してみましょう。

1台のルーターでDS-LiteとPPPoEを併用する環境

一般的な家庭用ルーターでは1つのWANポートには1つの通信方式のみ定義することができます。

業務用の高機能ルーターになると、1つのWANポートに複数の通信方式を定義して「DS-LiteとPPPoEを使い分ける」という使い方ができます。

そしてOpenWrtをインストールしたルーターはこの業務用ルーター並みの機能となり、楽天ひかりのクロスパスとPPPoEを併用可能な環境が作れてしまいます。

構成としては以下のような構成になります。

OpenWrtをWXR-2533DHPへインストール

クロスパスとPPPoEが併用できると何がうれしいの?

高速通信方式IPv4 over IPv6「クロスパス」を利用することで、通信の混雑する夜間の時間帯でもフレッツ光の混雑による通信速度の低下を迂回して高速通信を利用することができます(快適通信)。

よって通常のインターネット利用はクロスパス通信を利用するとよいでしょう。

一方でクロスパスに限らず「IPv4 over IPv6」通信は自宅ルーターに不完全なIPv4アドレスが付与される仕組みであることから以下のような問題が発生します。

高速通信IPv4 over IPv6のデメリット

  • 外出先(インターネット側)から自宅への接続ができない
  • 自宅から(一部の)VPN接続ができない
  • 匿名掲示板などに書き込みできない場合が多い(アクセス禁止)

このような場合にIPv4/PPPoEを併用する(使い分ける)ことで「クロスパスで高速通信」「一部のデメリットはPPPoEで回避」という使い方ができます。

そこで、本記事ではIPv4/PPPoE通信を併用して以下の環境構築を行います。

クロスパスとPPPoEの併用環境

  • 主回線はクロスパスで高速通信(メイン回線)
  • 特定のIPアドレスに対する通信はIPv4/PPPoE通信(サブ回線)

ここで「特定のIPアドレスに対する通信」は匿名掲示板5ch.netを想定します。

つまり「通常の通信はクロスパス、匿名掲示板5ch.netへの通信はPPPoE」という環境を構築してみます。

必要な環境構築作業

現在、ここまでの作業でWXR-2533DHPは高速通信クロスパスにより通信できる環境となっています。

ここからはクロスパス通信とPPPoE通信の併用のため、さらに以下2点の作業を行います。

併用のための環境構築

  • IPv4/PPPoE通信インターフェースの定義
  • クロスパスとPPPoEのルーティング定義(回線の使い分け)

IPv4/PPPoEインターフェース定義

OpenWrtインストール直後はIPv4インターフェースは「DHCPクライアント」として設定されています。

OpenWrtの上位にネットワーク接続しているルーター(HGWなど)があればそのままインターネットに接続できているはずです。

ここではOpenWrtルーターをONUやVDSLモデムに直接接続している場合においてプロバイダーから付与されている「IPv4/PPPoE」での接続設定をやってみましょう。

「IPv4/PPPoE」接続設定で必要なものはプロバイダーから通知されているPPPoEの「ユーザーID」と「接続パスワード」です。

IPv4/PPPoEのインターフェース定義
  • STEP1
    インターフェース定義画面へ

    OpenWrt管理画面インターフェース定義

    メニュー「ネットワーク > インターフェース」からインターフェース定義画面へ遷移します。

  • STEP2
    インターフェース定義の確認

    OpenWrt管理画面「インターフェース定義」

    インターフェース定義画面の「インターフェース」タブにて現在(初期値)のインターフェース定義を確認しておきましょう。

    インストール直後のOpenWrtインターフェース定義は以下のように設定されています。

    LAN IPアドレス:192.168.1.1/24
    DHCPサーバー:有効
    WAN
    (IPv4定義)
    DHCP(IPv4)クライアント
    WAN6
    (IPv6定義)
    DHCPv6クライアント

    IPv4通信の設定は上記インターフェース「WAN」においてDHCPクライアントとして定義されています。

    このインターフェース定義を「IPv4/PPPoE」に設定変更していきます。

  • STEP3
    インターフェース「WAN」の定義変更

    OpenWrt管理画面「インターフェース定義」

    インターフェース定義「WAN」の「編集」ボタンを押下して編集画面へ遷移します。

    OpenWrt管理画面「インターフェース定義」

    プロトコルに初期値として設定されている「DHCPクライアント」を「PPPoE」に選択変更し「プロトコルを切り替える」ボタンを押下ます。

    OpenWrt管理画面「インターフェース定義」

    「PAP/CHAPユーザー」欄にユーザー名(接続名)とパスワード(接続パスワード)を設定し「保存」ボタンを押下します。

    PAP/CHAユーザー名 プロバイダーより付与された接続ID
    PAP/CHAパスワード プロバイダーより付与された接続パスワード

  • STEP5
    設定の反映

    OpenWrt管理画面「インターフェース定義」

    インターフェース定義画面に戻りました。

    この時点ではまだインターフェース定義は「保留中」です。

    画面下の「保存&適用」ボタン押下により「IPv4/PPPoE」インターフェースが作成されます。

  • STEP6
    IPv4/PPPoE接続の確認

    IPv6接続確認サイト

    IPv6接続確認サイトで接続状況を確認してみましょう。

    IPv6-test.com

    上記のようにIPv4プロバイダー(私の場合は楽天ひかり「vectant.ne.jp」)経由での接続が確認できました。

    ※この時点ではまだIPv6接続は確認できていません。

以上で「IPv4/PPPoE」接続インターフェースの定義は完了です。

DS-LiteとPPPoEの基本ルーティング設定

DS-LiteとPPPoEの2つの通信インターフェースが定義されました。

ではこの2つの通信インターフェースはどのように使われるのでしょうか?

どんな通信がDS-Liteインターフェースで通信し、どんな通信がPPPoEインターフェースで通信するのか、はルーティングで定義されています。

メニュー「ステータス > ルーティング」から現在のOpenWrtルーターのルーティング定義を見てみましょう。

私の環境では現時点で以下のようなIPv4ルーティング定義となっていました。

OpenWrtをWXR-2533DHPへインストール

この定義に従うと、通信インターフェースはどのように使われるのでしょうか?

ネットワーク ターゲット ゲートウェイ メトリック
xpass
※クロスパス
0.0.0.0/0 - 0
wan
※PPPoE
163.***.***.*** 163.***.***.*13 0

外部(インターネット)への通信は「ターゲット=0.0.0.0/0」として定義されます。

ルーティング定義には「xpass(DS-Lite)」も「wan(PPPoE)」も存在しますが、「ターゲット=0.0.0.0/0」として定義されているのは「xpass(DS-Lite)」のみです。

つまり、すべてのインターネット通信は「xpass(DS-Lite)」インターフェース定義を通じて行われ、「wan(PPPOE)」インターフェースはインターネット通信に利用されない、という定義内容です。

※ルーティング定義は環境により異なります。

このルーティング定義を「PPPoE通信(wan)でもインターネット通信できる」「xpass通信がメイン回線(優先度高)、PPPoE通信がサブ回線(優先度低)」という定義に修正していきます。

基本ルーティング(回線優先順位)の定義

「xpass(DS-Lite)」インターフェースがメイン回線、「PPPoE」インターフェースがサブ回線という回線インターフェース単位の優先付けは「メトリック」という値を設定することで行います。

メトリック値は小さいほど優先順位が高い、という意味となり、OpenWrtルーターの場合はそれぞれのインターフェース定義(xpass/wan)に対して定義していきます。

「xpass(クロスパス)」「wan(PPPoE)」それぞれのインターフェース定義からメトリック値を編集していきます。

OpenWrtをWXR-2533DHPへインストール

まず、インターフェース「xpass(クロスパス)」定義の「詳細設定」タブより「ゲートウェイメトリック」を「10(優先順位高)」に設定します。

OpenWrtをWXR-2533DHPへインストール

次にインターフェース「wan(PPPoE)」定義の「詳細設定」タブより「ゲートウェイメトリック」を「20(優先順位低)」に設定します。

OpenWrtをWXR-2533DHPへインストール

最後に「保存&適用」ボタンで設定を反映させます。

OpenWrtをWXR-2533DHPへインストール

ではメニュー「ステータス > ルーティング」よりルーティングの定義を確認してみましょう。

OpenWrtをWXR-2533DHPへインストール

「アクティブなIPv4ルート」は以下のように定義されています。

ネットワーク ターゲット ゲートウェイ メトリック
xpass
※クロスパス
0.0.0.0/0 - 10
※優先順位高
wan
※PPPoE
0.0.0.0/0 163.***.***.*13 20
※優先順位低

メトリック値の定義により、「通常のインターネット通信(ターゲット0.0.0.0/0)はクロスパスで通信」「クロスパスが通信できない場合にはPPPoEで通信」という内容のルーティング定義になりました。

個別ルーティング(特定IPアドレスへの通信)の定義

前節の定義により回線ごとの優先順位は定義が完了しました。

ここからは「個別接続先へのルーティング定義」を行います。

現在は「クロスパス(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への個別ルーティングを定義していきます。

個別ルーティングはメニュー「ネットワーク⇒ルーティング」で設定します。

OpenWrt デュアルWAN設定(WZR-HP-AG300H)

ルーティング設定画面で「追加」ボタン押下します。

OpenWrt デュアルWAN設定(WZR-HP-AG300H)

5ch.netはIPアドレスが2つあるので、まずは1つ目のIPアドレスをルーティング設定します。

OpenWrt デュアルWAN設定(WZR-HP-AG300H)

1つ目のIPアドレスに対してルーティング設定画面より以下のように選択・入力します。

インターフェース 「WAN」を選択
ターゲット 「172.64.106.36/32」を入力
※1個目のIPアドレス

入力確認後「保存」ボタンで設定を保存します。

次に2つ目のIPアドレスに対してルーティング設定を行います。

OpenWrt デュアルWAN設定(WZR-HP-AG300H)

2つ目のIPアドレスに対してルーティング設定画面より以下のように選択・入力します。

インターフェース 「WAN」を選択
ターゲット 「172.64.107.36/32」を入力
※2個目のIPアドレス

入力確認後「保存」ボタンで設定を保存します。

OpenWrt デュアルWAN設定(WZR-HP-AG300H)

「IPv4静的ルーティング」に2つのルーティング定義が行われたことを確認し、「保存&適用」ボタンを押下して設定を反映させます。

個別ルーティングの通信経路を確認

ではここで設定した個別通信先に対するルーティング情報を確認してみます。

メニュー「ステータス > ルーティング」よりルーティング情報を確認します。

OpenWrt デュアルWAN設定(WZR-HP-AG300H)

「アクティブなIPv4ルート」に今回定義した2つの個別ルーティング情報が反映されているのがわかります。

OpenWrt デュアルWAN設定(WZR-HP-AG300H)

設定した通信先(今回は5ch.netを想定)に対してはサブ回線である「WAN(PPPoE)」回線を使って通信するようにルーティング設定がなされているのがわかります。

実際に通信経路を確認

実際の通信が「アクティブなIPv4ルート」に従って通信しているのか?を確認しておきましょう。

現在、「アクティブなIPv4ルート」は以下のように定義されています。

OpenWrt デュアルWAN設定(WZR-HP-AG300H)

まずは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通信)を経由して通信していることがわかります。

以上で特定の通信先に対する個別ルーティング定義が終了です。

復元編:オリジナル「WXR-2533DHP」に戻す(復元)

OpenWrtをインストールしたWXR-2533DHPをオリジナルファームウェアへ戻す(復元する)手順を見ていきましょう。

復元するためにはWXR-2533DHPのオリジナルファームウェアが必要であり、これは「インストール② オリジナルファームウェアのバックアップ」で取得したしたファイル(手順では「mtdblock0.ubi」)のファイルを使います。

SSHでOpenWrtルーターへログイン

復元作業はOpenWrtへSSHでログインしターミナルで行います。

ここでは「Teraterm」を使ってOpenWrtルーターへSSH接続します。

SSHでOpenWrtへログインする手順
  • STEP1
    接続先IPアドレスの入力

    OpenWrtからオリジナルへの復元
  • STEP2
    セキュリティ警告の対応

    OpenWrtからオリジナルへの復元
  • STEP3
    ログイン情報の入力

    OpenWrtからオリジナルへの復元
  • STEP4
    ログイン完了

    OpenWrtからオリジナルへの復元

バックアップファイルをSCP転送

ローカルPCに保存してあるバックアップファイル(手順ではファイル名「mtdblock0.ubi」)をOpenWrtルーターの/tmpディレクトリへアップロードします。

ここではsshクライアントとしてTeraTermを使っているので、TeraTermが持っている「scpファイル転送機能」によりOpenWrtルーターへアップロードします。

SCPによるファイル転送手順
  • STEP1
    scpファイル転送を起動

    OpenWrtからオリジナルへの復元

    TeraTermの「ファイルメニュー⇒SSH SCP転送」を選択します。

  • STEP2
    バックアップファイルの選択と転送先の設定

    OpenWrtをWXR-2533DHPへインストール

    転送元(From)はバックアップファイルを選択します(手順では「mtdblock0.ubi」です)。

    転送先(To)は「/tmp」を指定します。

    正しく選択・入力したら「Send」ボタン押下によりファイル転送が開始されます。

  • STEP3
    アップロード完了まで待つ

    OpenWrtからオリジナルへの復元

バックアップのアップロード結果を確認

バックアップファイルのscpアップロードが完了しました。

正常にアップロードできたかを確認しましょう。

root@OpenWrt:/ cd /tmp ←コマンド入力
root@OpenWrt:/tmp# ls -l ←コマンド入力
-rw-r--r--    1 root     root             4 Apr 27 20:28 TZ
-rw-r--r--    1 root     root          1204 Jan  1  1970 board.json
-rw-r--r--    1 root     root            71 Aug  6 14:32 dhcp.leases
drwxr-xr-x    2 root     root            40 Apr 27 20:28 dnsmasq.d
drwxr-xr-x    3 root     root            80 Apr 27 20:28 etc
drwxr-xr-x    2 root     root            80 Apr 27 20:28 hosts
drwxr-xr-x    3 root     root            60 Apr 27 20:28 lib
drwxrwxrwt    2 root     root           380 Apr 27 20:28 lock
drwxr-xr-x    2 root     root            80 Apr 27 20:28 log
-rw-r--r--    1 root     root      67108864 Aug  6 14:44 mtdblock0.ubi
-rw-r--r--    1 root     root            47 Apr 27 20:28 resolv.conf
drwxr-xr-x    2 root     root            60 Aug  6 14:43 resolv.conf.d
drwxr-xr-x    7 root     root           280 Apr 27 20:28 run
drwxrwxrwt    2 root     root            40 Jan  1  1970 shm
drwxr-xr-x    2 root     root            80 Aug  6 14:30 state
drwxr-xr-x    2 root     root            80 Jan  1  1970 sysinfo
drwxr-xr-x    2 root     root            40 Apr 27 20:28 tmp
root@OpenWrt:/tmp# 

「cd /tmp」コマンドでファイルをアップロードした場所へ移動します。

「ls -l」コマンドで/tmpのファイル一覧を表示します。アップロードしたファイルが存在していることを確認してください。

バックアップを復元する場所の確認

バックアップファイルを復元する場所を確認しておきます。

「cat /proc/mtd」コマンドでmtdブロックを一覧表示します。


cat /proc/mtd
dev:    size   erasesize  name
mtd0: 04000000 00020000 "ubi"
mtd1: 04000000 00020000 "rootfs_1"
mtd2: 00010000 00010000 "SBL1"
mtd3: 00020000 00010000 "MIBIB"
mtd4: 00030000 00010000 "SBL2"
mtd5: 00030000 00010000 "SBL3"
mtd6: 00010000 00010000 "DDRCONFIG"
mtd7: 00010000 00010000 "SSD"
mtd8: 00030000 00010000 "TZ"
mtd9: 00020000 00010000 "RPM"
mtd10: 00070000 00010000 "APPSBL"
mtd11: 00010000 00010000 "APPSBLENV"
mtd12: 00040000 00010000 "ART"
mtd13: 00010000 00010000 "BOOTCONFIG"
mtd14: 00070000 00010000 "APPSBL_1"
root@OpenWrt:~# 

バックアップファイルはOpenWrtルーターの「rootfs_1」パーティションへ復元します。

私の環境ではrootfs_1はmtd1であることがわかります。

つまりバックアップファイルをmtd1ブロックへ復元する、ということになります。

バックアップを復元する(注意!!!)

バックアップファイル(mtdblock0.ubi)をmtd1ブロック("rootfs_1"パーティション)へ復元します。

復元コマンドを入力する前に現在のカレントディレクトリが「/tmp」になっていることを確認してください。

大事をとってもう一度「cd /tmp」コマンド入力してもよいですね。


root@OpenWrt:# cd /tmp
root@OpenWrt:/tmp# ubiformat -f ./mtdblock0.ubi /dev/mtd1 ←コマンド入力
ubiformat: mtd1 (nand), size 67108864 bytes (64.0 MiB), 512 eraseblocks of 131072 bytes (128.0 KiB), min. I/O size 2048 bytes
libscan: scanning eraseblock 511 -- 100 % complete
ubiformat: 512 eraseblocks have valid erase counter, mean value is 1
ubiformat: flashing eraseblock 511 -- 100 % complete

root@OpenWrt:/tmp#

「ubiformat -f ./mtdblock0.ubi /dev/mtd1」コマンドでバックアップをmtd1ブロック("rootfs_1"パーティション)へ復元します。

ファームウェアの書き込み中メッセージが表示され、最後に「100 % complete」がメッセージ表示されたらファームウェアの復元完了です。

OpenWrtルーターの再起動

「100 % complete」が表示され、コマンドプロンプトに戻るととファームウェアの復元は完了です。

あとはOpenWrtルーターを再起動すればオリジナルファームウェアでルーターが起動してきます。


root@OpenWrt:/tmp# reboot ←コマンド入力
root@OpenWrt:/tmp# 

コマンド「reboot」によってルーターを再起動します。

再起動コマンド(reboot)を実行すると、復元したバックアップからオリジナルファームウェアのインストールが行われてからルーターが起動します。

ルーターが再起動するとWXR-2533DHPオリジナルファームウェアで起動します。

ルーターのIPアドレスはバックアップ取得時のIPアドレスとなります。

このため、パソコンも再起動してIPアドレスを取得しなおしておくとよいでしょう。

まとめ「OpenWrt最強ルーター!?WXR-2533DHP」

以上、OpenWrtのインストールから楽天ひかりへの接続までを一通りやってみました。

OpenWrtルーターは、市販品のメーカー純正ファームウェアのように最初から「便利・簡単に使える」ようにはなっていませんが、自由にカスタマイズすることができて結果としてメーカー純正ファームウェアではできないこともできてしまいます。

「ネット環境で遊んでみたい」「パソコンいじりが好き」という人なら、一台はOpenWrtルーターを持っておくと面白いですよ。

なんでもできるOpenWrtルーター

OpenWrtは市販品のルーターのように「買ってきてつなげるだけで使える」というようには初期設定されていません。

ただし、この記事でも説明してきたようにちょっとした操作(カスタマイズ)により何でもできるルーターになります。

Wi-Fi機能やUSBポートなど、ハードウェアさえ揃っていればメーカー純正ファームウェアではできないことも自由にできるようになります。

OpenWrtならこんなことができる

  • 「IPv4 over IPv6」のすべてが使える
  • 「IPv4 over IPv6」とIPv4/PPPoEの同時利用ができる
  • 広告ブロックやセキュリティソフトなど自由にカスタマイズできる
  • USBポートを使ってスマホ・iPhoneのUSBテザリングでネット接続できる
  • 複数のネット回線につなげることができる(デュアルWAN)
  • Wi-Fiを使ってネット接続できる(ワイアレスWAN)
  • などなど・・・なんでもできる!

WXR-2533DHPでスマホとUSBテザリング

WXR-2533DHPにはUSBポートがあります。

本来の機能はUSBハードディスクを接続してネットワークディスク(簡易NAS)として使うためのポートです。

これをOpenWrt化することであらゆるUSBデバイスを接続・認識し環境構築することができるようになります。

WZR-HP-AG300HをOpenWrt化し、そのUSBポートを使ってスマホとUSB接続することでスマホのネット回線を簡単に利用できるようにするための手順は以下の記事を参考にしてみてください。

WXR-2533DHPで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」です。

WZR-HP-AG300Hがおすすめの理由

  • 安く中古品を入手できる(500円~1,000円程度)
  • OpenWrtの実績が豊富で情報量も多い
  • USBポートもついている

はじめてOpenWrtにチャレンジする場合はまずは「WZR-HP-AG300H」から始めてみましょう。

そしてOpenWrtに慣れてきて「もっといろんな拡張モジュールを使ってみたい!」という場合、さらにハイスペックなWXR-2533DHPを使ってみるという使い方がおすすめです。

5000円程度で作れる最強のルーター

新しいネット回線サービスに契約・乗り換えした場合、プロバイダーが提供している高速通信サービスに対応したルーターが必要です。

お手持ちのルーターがすでに対応していればよいですが、対応していない場合にはわざわざ別途購入しなければなりません。

OpenWrtルーターなら500円程度から購入することができ、導入・カスタマイズも簡単です。

また、さらにネット環境を見直した場合でもほぼOpenWrtルーターで対応することができます。

WXR-2533DHPなら5,000円程度でハイスペックなOpenWrtルーターを作ることができます。

「入門用なら1,000円程度で作れるWZR-HP-AG300H」がおすすめです。

OpenWrtに慣れてきていろんな拡張モジュールをどんどん使っていきたい!となったら、ぜひWXR-2533DHP/DHP2を試してみてください。

タイトルとURLをコピーしました