Netgear R7800 の OpenWrt 化

最新の OpenWrt R7800 用ファームウェア(hnyman ビルド)のインストール

R7800 は一部のハードウェアチップ用ドライバーが非公開のためサポートされていないもの(ハードウェア NAT 機能)もあるが、全体としては Linux カーネルの更新に追従し続けているため、発売当時の OpenWrt ベースのままである純正 OEM ファームウェアよりもはるかに良くなっている(👉 Some notes on the current support in OpenWrt

このルーターは 2016 年末頃から OpenWrt コミュニティによってサポートされ続けており、既に十分に安定化しているので、迷わず OpenWrt 化することを決意した。特に、R7800 についてはコミュニティの中心的人物である hnyman 氏がコミュニティビルドを用意しており、絶大な支持を集めているので、その通称 hnyman ビルドの stable 版を用いた。

OEM 版からの GUI のファームウェア更新機能を利用してファームウェアを乗せ換えるので、使ったのは *-factory.img である(*-sysupgrade.bin は OpenWrt 化済の場合に OpenWrt の GUI からアップデートする場合に使うもの)。もちろん、TFTP から *-factory.img を書き込むことも可能(反対に純正 OEM 版に戻す場合も TFTP から R7800-V1.0.2.68.img を書き戻せばよい)。

ちなみに、コミュニティで hnyman 氏らが慎重に検証していたが、OpenWrt 化に先立って予め、何らかの失敗に備えるために純正版の mtd をバックアップしておくような作業をする必要はない。OEM 版ファームウェアを書き戻す際に、付随する設定値を格納するパーティションも初期化されて復活するようになっているようである。そういう意味でやはり Netgear はカスタムファームウェアに対しては非常に寛容で好感の持てるメーカーであり、チップのドライバーの公開・非公開次第では OpenWrt フレンドリーな製品となりやすいブランドだと思う。

Wi-Fi 設定の初期化

OpenWrt 化後、最初にやらなければならないのは Wi-Fi の設定である。OpenWrt 化自体は Wi-Fi 経由でも何の問題もなくやれるが、OpenWrt 化後の初期状態では Wi-Fi は無効化されているので、LAN 側ポートに LAN ケーブルを挿して何らかの PC と繋げ、最低でも Wi-Fi を有効化してからでないと、以後の作業を MacBook のような Wi-Fi 専用の PC から行うことができない。

設定自体は特に難しくはなく、基本的には暗号化キーを決め、SSID や周波数チャンネル、出力強度をカスタムしたりする程度。最後に Enable して Save & Apply する。

ポートマップ・パケットフィルターの設定と実運用環境への設置

次に、この OpenWrt 化 R7800 は前回の記事における実家のネットワークにおける GateKeeper として設置するために行っているので、最小限のセットアップを整えたら、GateKeeper として実家に配置して、以後、配置された状況の中でセットアップを続行する必要がある。一旦、実家のネットワークに組み入れてしまえば、元々 OpenVPN も使える環境なので、以後は実家に行かずとも、OpenVPN 越しに設定作業を続けることができる。

従来の GateKeeper は DMZ と家庭内 LAN との間の L3 ハブとなるルーターだったので、ポートマップパケットフィルターの設定だけは最低限受け継いで置く必要がある。

ゼロから始めるLinuxセキュリティ
OpenWrt はあくまでも Linux なので、ファイアーウォールの設定などは Linux の仕様に従うことになる。
Linuxで作るファイアウォール
OpenWrt: Firewall
全体では膨大なドキュメント量だが、特に必要なのは“Firewall configuration /etc/config/firewall”だろう。
Poor Man's Bridge Mode
OpenWrt の公式ドキュメントによると、プロバイダーから提供される HGW(ホームゲートウェイ)と OpenWrt ルーターとの接続方法については、レイヤーの高い順に 1: ゲートウェイ; 2: ルーター; 3: ブリッジと大別されている(ゲートウェイはルーター+ WAN モデムとしての運用)。
そのドキュメントの中で IPv4 における Double NAT 問題に対して採りうるストラテジーとして、最良なのは HGW をブリッジとして運用することだが、これは VoIP 電話を使う場合は断念せざるを得ない(VoIP 電話が HGW のルーター機能を前提としているため)。そこで次善の策となるのが、“Poor Man's Bridge Mode(貧者のブリッジモード)”で、HGW をルーターモードで運用しつつ、DMZ 機能を使って OpenWrt ルーターを接続するストラテジーである。自分の場合も、実家では、VoIP(ひかり)電話を利用しているので、このストラテジーを採用する。
ブロードバンドルータの内と外
  1. IPマスカレードは、LAN側ノードのIPアドレスとポート番号を、ルータのWAN側のIPアドレスと任意のポート番号に変換して、LAN側ノードにインターネットへのアクセス手段を提供する。また結果的に、WAN側からのLAN側への侵入を阻止する
  2. フォワーディングやDMZは、LAN側の任意のIPアドレスへと変換することによって、逆にLAN側へのアクセス手段を提供する
  3. パケットフィルタリングは、ある一定のルールによりパケットのルーティングの許可/禁止を行う。ブロードバンドルータでは、LAN→WAN方向のみに適用される

コメント

人気の投稿