2019年2月23日土曜日

OpenWrt on WZR-HP-AG300H: ブリッジ化

WZR-HP-AG300H では初期状態ではルーターとしてセットアップされている。つまり、図においての物理インターフェース eth1 が論理インターフェスの wan に紐付けられている状態である。

Network > Interfaces 設定

なので、論理インターフェース的に wan と lan の二段構成になっている状態を解消して、単なるブリッジ状態にするには、LuCI 上で Network > Interfaces 設定で wan のエントリーを削除した上で、lan の Physical 設定で物理インターフェスの eth1 を lan に紐付け、さらに IPv4 のアドレス、ネットマスク、ゲートウェイ等の設定を UP ポート側の LAN に合わせたものにすればいい。基本的にこれだけで ok のはずである。

作業上の注意としては、先に wan のエントリーを削除して lan の設定をする前の段階で、一旦変更を反映させてしまうと、UP ポートが単に使えない状態になってしまい、UP ポートに LAN ケーブルを接続して設定作業をしていたならば、LuCI 自体にアクセスできない状態になり、焦ってしまうかもしれない点である。Wi-Fi か、LAN ポートに LAN ケーブルを接続すれば問題ないはずである。

Network > Switch 設定

初期状態では VLAN がセットアップされており、LAN ポート 1 〜 4 は、VLAN のノード 1 である eth0.1 に属している。VLAN を使わないのであれば、VLAN 関係の設定を削除して、単純に eth0 で扱っても良さそうだが、もしかしたら、一度試して支障が生じたことがあるかもしれない。現状ではデフォルトのまま放置している。

/etc/config/network

以上のような形で、/etc/config/network の内容は、wan のエントリーが削除され、lan のエントリー部分が以下のようになった:

config interface 'lan'
 option type 'bridge'
 option proto 'static'
 option netmask '255.255.255.0'
 option gateway '192.168.0.1'
 option broadcast '192.168.0.255'
 option dns '192.168.0.1'
 option ip6assign '60'
 option ifname 'eth0.1 eth1'
 option ipaddr '192.168.0.10'

もちろん、IP アドレスやゲートウェイ等の設定内容は、環境に依るので、ここでのポイントはインタフェースとして eth0.1 と eth1 がアサインされている点だろう。

ちなみに、LuCI 上では Wi-Fi の物理インターフェス wlan0 と wlan1 がアサインされているにもかかわらず、/etc/config/network 上では記載されていないのは、Linux(OpenWrt)の仕様である。論理インターフェースである lan がセットアップする段階では Wi-Fi に関するデバイスの初期化が追い付かず、後からセットアップされるため、/etc/config/wireless 側で紐付けされる論理インターフェースを定義することになる。そして LuCI の表示はこれらを総合した情報を出力している。

Network > Firewall 設定

初期状態のファイアーウォールの(Zone、Traffic Rules)設定はすべて、ルーターとして機能する場合の wan ⇔ lan 間に関するものであり、lan ⇔ lan 間でブリッジとして機能する際に必要なものではない。特に何もせずデフォルトのまま放置しているが、完全に削除しても問題はないはずである。

OpenWrt on WZR-HP-AG300H: Timezone and NTP

System 設定

Timezone を Asia/Tokyo にした。

NTP サーバー候補には 1: ntp.nict.jp; 2: ntp.jst.mfeed.ad.jp; 3: openwrt.pool.ntp.org を入れておいた。

OpenWrt on WZR-HP-AG300H: SSH

Wi-Fi の有効化作業と並んで、SSH の有効化作業もその後の設定作業環境に関わる物事なので、最優先となる作業だ。

👉 SSH Configuration

System > Administration 設定

ルーターのパスワードを設定し、さらに SSH 用の公開鍵を登録しておく。

公開鍵を登録した場合、パスワード認証を無効化することも可能だが、現状では実質的に LAN 内部からしかアクセスできない状態のため、それほどセキュリティを心配する必要がないと考え、(Dropbear の設定で)特に無効化するようなことはしていない。むしろ現状では、設定を色々といじっていて、公開鍵認証でログインができなくなったりした場合に、パスワードで SSH ログインできないと面倒なことになるというリスクの方が大きい。

また、現状ではこの OpenWrt 機自体が LAN 内部からしかアクセスできない状態だが、そうではない(DMZ に設置したり、公開用の WWW サーバーを兼ねている等の)場合は、Dropbear の設定で Interface を LAN のものに絞っておくことによって、SSH が LAN 内部からしかアクセスできないようにすることができる。