2023年7月30日日曜日

OpenWrt 22.03.5 OpenVPN の tun を NAT で接続する

ELECOM WRC-1167GST2 に OpenVPN を入れて,Andoid で外出先から自宅 LAN に接続しできるようにしてみた.
OpenWRT への OpenVPN のインストール・設定自体はここを参考に割と簡単にできるのだが,ここの説明にもある通り,Android がクライアントの場合,ブリッジモード (TAP) が使えず,トンネルモード (TUN) しか使えない.つまりそのままでは,自宅 LAN 配下の機器と通信できない.
で昔 PPTP サーバ立ち上げたときのように iptables の設定で NAT 設定すりゃいいや,と思ったら,OpenWrt 22.03.5 では FireWall の設定が iptables から nftables に変わったみたいで,そのせいでマニュアルでルールを追加する手段がなさげ?
なので,GUI で設定する方法を探してみた.

# 以下,tun0 は人によって違うので適当に読み替えて

(1) OpenVPN 設定時に tun0 を追加するときに,Firewall Setting で tun0 の zone を lan に設定する.

(2) Firewall - NAT Rules で Add して,General Setting の
- Name: てきとう
- Soure address: tun0 のサブネット
- Action: MASQUERADE

Advanced Settings の
- Outbound device: br-lan

で,無事 Android から LAN 配下の資源にアクセスできた.

ちなみに,OpenVPN クライアントとして OpenVPN for Android を使用する場合,DNS の設定を,自宅 LAN の DNS で override すると,自宅 LAN のマシン名とかで名前引きできるので便利.

2023年7月28日金曜日

4台目 OpenWRT

自分,ルータは OpenWRT 化必須で対応ルータは限られているんだけど,ELECOM WRC-1167GST2 がセール \2,838 と安くなってて,念のため OpenWRT サポートリスト確認したら対応してたので,衝動買いしたw
今のは 11年前に買った WZR-HP-AG300H で WiFi も 11n/a と古いので,そろそろアップグレードしたいと思ってたところなのでちょうどよかった.
と思ったら USB ポートないじゃん(;´д⊂)ちょっと早まったかも.

まぁ後悔しても仕方ないので,旧ルータの設定を新ルータに移して乗り換え,と思ったら,WZR-HP-AG300H 用にコンパイルした stone が WRC-1167GST2 で動かなかった.
仕方がないので OpenWRT の mipsel 環境を構築しようと過去の blog 見たら,肝心なところがリンク切れてて意味ねぇ.自分の blog のゴミっぷりを改めて反省した.

なので改めて手順を記載しておく.(基本的な手順はこれ,以下 Fedora での手順)

(1) 環境ビルドに必要なパッケージをインストールする.コマンドラインも載ってるので,コピペするだけ.
sudo dnf --setopt install_weak_deps=False --skip-broken install \
bash-completion bzip2 gcc gcc-c++ git make ncurses-devel patch \
rsync tar unzip wget which diffutils python2 python3 perl-base \
perl-Data-Dumper perl-File-Compare perl-File-Copy perl-FindBin \
perl-IPC-Cmd perl-Thread-Queue

(2) OpenWRT のソースを取得
git clone https://git.openwrt.org/openwrt/openwrt.git

(3) make menuconfig を実行して,ターゲットデバイスを設定する.
Target System --> MediaTek Ralink MIPS
Subtarget --> MT7621 based boards
Target Profile --> ELECOM WRC-1167GST2

(4) make したら,WRC-1167GST2 用のコンパイル環境が生成される.

で,問題なく stone コンパイルできて WRC-1167GST2 で動いたヽ(´ー`)ノ

で,ルータ変えた感想としては,
・ハード的には 11ac が使えるようになったが USB ストレージが使えなくなった.それ以外の差は無いと言って良い
・自分,使うのは基本有線で,WiFi で帯域が足りないシーンは無い
ので,正直変えなくても良かった気がする.