文書の過去の版を表示しています。
NanoPi R2SでSoftEther VPNの拠点間L2-VPN中継器を作る
知り合いの会社では、遠隔地という名の役員の自宅にデータバックアップサーバーを置いてある。昨今の電気代高騰と猛暑により、バックアップ開始時に自動的にサーバーの電源が入り、終わったら自動的に電源が切れるようにできないか、という相談を受けた。
サーバーはBMC/IPMIが載ってるので、リモートで電源ON/OFFをするのは造作ない。問題は現状BMCのネットワークが物理的に繋がっておらず、仮に繋いだとしてもルータ越しなのでアクセスできないってこと。技術的にはポートフォワードなりしてやれば行けるけど、さすがにBMCをインターネッツに解き放つのはね…
バックアップサーバー自体はOS側のSoftEther VPN Clientで社内に繋がっている。であるならば、BMC側もSoftEtherで社内に繋がってくれれば都合がよい。かと言って、BMCで動くSoftEtherなんてものは当然存在しないので、NanoPi R2SでSoftEther VPN Bridgeを動かし、BMCを社内LANにVPN接続してしまおうというわけで記事タイトルに繋がる。
試した環境
- SoftEtherが簡単に動きそう、物理LANポート2個、お手頃価格、低消費電力あたりを重視して選定。
- 性能は二の次(と言っても十分すぎる性能だけど)
- FriendlyWrt 23.05-20240314
- OpenWrtをNanoPi向けにカスタマイズした公式ディストリビューション
- とっつきやすそう、他のディストリビューションだとSoftEtherで速度が出ないらしいというあたりを加味して選定。
- SoftEther VPN Bridge 4.38-9760-2
手順
FriendlyWrtの準備と起動
NanoPiの各モデルのページからダウンロードページをたどり、FriendlyWrtのSDカードイメージをダウンロードする。
何種類かあるようだけど、最新版で軽量そうなFriendlyWrt 23.05を選んだ。
gzを展開したimgファイルをDD for WindowsなりでmicroSDカード(8GB以上)に書き込む。
NanoPi R2SにmicroSDカードを挿し、USB-C経由で電源を供給するとFriendlyWrtが起動する。
初回は初期設定で少し時間がかかるが、完了すればNanoPiのLAN側のEthernetポートから192.168.2.1で管理Webページにアクセスできるようになる。また、この時点でWAN側のDHCPクライアント、LAN側のDHCPサーバ、WAN-LAN間のNAPTが動いている。すなわち、PC ←→ [LAN] NanoPi [WAN] ←→ ルータ と接続し、PCのIPアドレスをDHCP取得にしておけば、デフォルトでFriendlyWrtをいじりながら、いつも通りネットが使える状態となる。大変フレンドリーでありますね。
ファイヤウォールの停止
NanoPiのWAN側ポートを宅内LANセグメント、LAN側ポートをSoftEther VPN Bridgeによる社内LANセグメントとする。
つまり、この先はWAN側からFriendlyWrtの管理Webページにアクセスできた方が都合が良いが、デフォルトではファイヤウォールで遮断されている。
よって、ファイヤウォールを止めてしまう。生かしたままポリシーを変える方法もあるが、なるべくシンプルに行きたいので止めてしまう。
FriendlyWrtの管理画面、システム>スタートアップページで firewall を停止、無効にする。
WAN側ポートに振られたIPアドレスで管理画面にアクセスできることを確認する。
DNSサーバ、DHCPサーバの停止
LAN側ポートは社内LAN側で管理を掌握したいので、DNSサーバ、DHCPサーバを停止する。
FriendlyWrtの管理画面、システム>スタートアップページで dnsmasq と odhcpd を停止、無効にする。
ブリッジの削除
LAN側のネットワークブリッジも不要なので消す。
FriendlyWrtの管理画面、ネットワーク>インタフェース>インタフェースタブで br-lan を削除する。
同様に、デバイスタブで br-lan を設定解除する。
SoftEther VPN Bridgeのインストール
FriendlyWrtの管理画面、システム>ソフトウェアページでSoftEther VPN Bridgeをインストールする。
安定性重視で、バージョン4系統の4.38をインストールした。