【追記:2023-09-27】二重ルーター解消方法
【追記:2023-09-28】再起動後の Exit Node 無効問題の解消
   いずれも本文中に追記しています 
 
 
 
あれこれ問題が発生して疲れました。 
いまは解消しています。
さて、開封です。
 
真ん中のビニールに包まれたのが本体です。上にあるのは電源関連と LAN ケーブルです。
左の "REGISTER" と書かれた紙はユーザー登録でサポートが受けられる、というもの。
その下は初期セットアップと
サポートに関する注意書きと保証書です。
マニュアルはホームページにあり、英文です。
 初期セットアップ  
次の接続をします。
 RTX830 ルーター >> SW-Hub >> WANポート:GL.iNet MT2500A:LAN ポート >> Macbook Air mid 2012
 
通電すると約 90秒ほどで本体が起動完了しますので、ブラウザから 192.168.8.1 と入力して管理画面を表示します。
 
 
GL-iNet の著作権表示で「画面転用不可」とありますので、以下はセットアップの説明になります。
 
 
1.言語選択画面
 
  箱から出して給電すると言語選択画面になっており、すでに「日本語」になって
  いますので【次へ】をクリックすると2項のパスワード設定画面になります。
 
 
2.パスワード設定画面 
 
  「新しいパスワード」欄と「パスワードの再入力」欄にパスワードを入力します。
  10文字以上の 大文字、小文字、数字、記号のうち、少なくとも2種類が必要
  ですが「脆弱なパスワードを使用しない」をオフにすればこの限りではありません。
 
  【適用する】ボタンをクリックします。
 
 
3.ファームウェアアップデート
 
  ファームウェアアップデートがある場合通知がきていますので【アップグレード】
  をクリックしますと、アップグレードが始まります。
4.タイムゾーンを【Asia/Tokyo】に設定
 「システム」→「タイムゾーン」と進み設定します。
5.IPv6 を有効化
 
  「ネットワーク」→「IPv6」と進み、モードは【NAT6】にします。
 
  【適用する】ボタンをクリックします。
 
6.Tailscale を有効化
 
  「アプリケーション」→「Tailscale」と進み、「有効にする Tailscale」スイッチ
  をオンにし【適用する】をクリックします。 
 
  WAN 側を Subnets にするか、 LAN 側を Subnets にするかですが、
  前者を Subnets にしますので、【リモートアクセスWANを許可する】の
  スイッチをオンにし【適用する】をクリックします。
7.マルチWANの設定
  「ネットワーク」→「マルチWAN」と進みます。
  GL.iNet MT2500A はマルチ WAN 対応なので、インタフェースステータス
  の追跡を【IPv6】メインにするため【有線】欄の右の ❂ マークをクリックします。
 
  【IPv6】をクリックして【適用する】をクリックします。
  
  モードは【フェイルオーバー】のままで結構です。 
 
8.MAC アドレスの設定
 
  IPv6 アドレス付与は EUI64 方式なので、MAC アドレスを【クローン】設定
  しておいた方がよいでしょう。 
 
  「ネットワーク」→「MACアドレス」で「クローン」を選択し【適用する】を
  クリックします。
 
 
 
 
管理画面からの設定は以上で終わりです。 
 
 
今回はインターネットアクセスルーターとしては使わず、Tailscale の Subnets & Exit Node 利用なので、V6 プラスや DS lite、PPPoE などの設定は行いません。家庭内ルーターとして RTX830 の後段に置きます。
 
 
なので、LuCi の設定は IPv4 の DNS 設定だけです。
 
これは後で記載する、Tailscale の最新版の wget でのダウンロードの際に DNS が引けず Permission エラーになるのを防ぐためです。
 
 
 
まず、【システム】→【詳細設定】に移り「アドレス/cgi-bin/luci」の部分をクリックし OpenWrt LuCi 画面に移動します。
 
 
LuCi のログイン画面になります。
 
 
ID = root と パスワードを入力してログインするとステータス画面になります。
 
  次に【Network】→【Interfaces】と移り、▢ の箇所をクリックします。
  
【Edit】→【Advanced Settings】と移ります。
 上の方の ▢ の箇所に WAN 側のデフォルトG/W アドレスと 8.8.8.8 を追加します。
 
下の方の ▢ の箇所の【Delegate IPv6Prefixes】にチェックを入れ【IPv6 assignment length】に "64" を入れ【Save】します。
 
これは Exit Node の IPv6 を有効にするためです。
 
Exit Node での IPv6 は、現在の OpenWrt ではサポートされていないようです。
 
IPv6 のみのサイトにはアクセスできませんが、ほとんどが IPv4 も OK なので、実質的には問題はありません。
 
 
また、Exit Node はフリー WiFi 時のセキュリティ対策のためなので、使うことはまずないでしょう。 
 
戻った画面で【Save & Apply】をクリックして反映させます。
 
 
家庭内ルーターなので、以上で設定は終わりです。 
 
 
 
 
 
 Tailscale の最新化  
 
初期セットアップを終えた当初は、IPv6 化がどうしてもできず、あれこれいじりますが一向に解消しません。
 
 
丸一日奮闘するも虚しく、解消しません。
 
 
ひょっとして Tailscale のバージョンが古すぎる(1.32.2-1)のではないか、と思い立ち、最新化を行うことに・・・
 
 
結果的にはビンゴ!! 
 
 
1.ターミナルから、ssh で入ります
 Mac ~ % ssh root@192.168.8.1 
 
 
 
2.バイナリファイルをパッケージとすげ替えします
 
 整合性を確保のための呪文です。
 
 root@GL-MT2500:~# opkg flag hold tailscale tailscaled
 
 バイナリファイルをダウンロードします。 
 root@GL-MT2500:~# wget https://pkgs.tailscale.com/stable/tailscale_1.48.2_arm64.tgz 
 
 解凍し、/usr/sbin に移します。
 
 root@GL-MT2500:~# tar zxf tailscale_1.48.2_arm64.tgz   
 
 root@GL-MT2500:~# mv tailscale_1.48.2_arm64/tailscale*  /usr/sbin
 
 Tailscale サービスをリスタートさせます。  
 
 root@GL-MT2500:~# service tailscale restart
 
 
  
3.Subnets & Exit Node を有効化 
 
 Subnets 有効化です。
 
 root@GL-MT2500:~# tailscale up --advertise-routes=<WAN側アドレス> --accept-routes --advertise-exit-node
 
 Subnets は Tailscale Console 画面から有効化できますので、上記コマンド
 は不要かもしれません。
 
 
 Exit Node 有効化です。
 
 root@GL-MT2500:~# tailscale up --advertise-exit-node --accept-routes --advertise-routes=<WAN側アドレス>     
 
  ※ <WAN側アドレス> は "192.168.xxx.0/24" 
 
 
この最新化の直後にバージョン 1.50.0 がデリバリされ、再度最新化を行うことになりました。
 
 
2項のコマンド中の "1.48.2" を "1.50.0" で置き換えて再度やり直しです(トホホ・・・)。
 
 
 
 
以上で Tailscale の Subnets & Exit node 化と最新化ができました。
 
 
  
 
 
 
 
 
 【番外編】 
 
再起動のたびに GL.iNet MT2500A の Exit Node が無効になってしまい、そのたびにコマンドラインから有効化することに。。。
永続化できないかと探っていますがまだ見つけきれていません(😢)。
 
【追記:2023-09-28】次のようにして解消しました 
/usr/bin/gl_tailscale の中の 173行に、
/usr/sbin/tailscale up --reset --accept-routes $param --timeout 3s > /dev/null
という行があり、この中の朱字部分を削除します。
削除後:/usr/sbin/tailscale up $param --timeout 3s > /dev/null
以上で、MT2500A 再起動後も Exit Node が無効にならなくなりました。
また、二重ルーター構成になっているのももどかしい。
 
 
これもなんとかしなくては。。。
 
 
いまは便宜上 Mac mini M1 の LAN ポートと GL.iNet MT2500A の LAN ポートを接続し、こちらのアドレスを 192.168.8.0/24 ドメインのアドレスにしています。
 
WiFi を 192.168.xxx.0/24 という、RTX830 の LAN 側のドメインアドレスにしています。
 
これにより、どちらのドメインも Mac mini M1 からアクセスできますが、ちょっと邪道です(美しくない)。
 
 
GL.iNet MT2500A を越えるルーティング設定すればいいのですが、面倒なので、とりあえず美しくないやり方でしのいでいます。 
 
 
 
 
【追記:2023-09-27】次のようにして解消しました
 LAN の接続形態とドメインは次です
  RTX830 >> GL.iNet MT2500A >> Mac mini M1
   <192.168.xxx.0/24> <192.168.8.0/24> <192.168.8.yyy>
 
 ① Mac の WiFi 接続はしない(オフ)
 ② Mac の LAN 接続は有効(オン)
   アドレスは 192.168.8.yyy に設定(GL.iNet MT2500 配下)
 ③ Mac を tailscale のクライアントにします
   Subnets と Exit Node 設定せず、None にする
 
 
 
 こうすることで 192.168.8.0/24 ドメインだけでなく 192.168.xxx.0/24
 ドメインもアクセスできる
 さらに tailscale アドレス(100.zzz.vvv.www)でもアクセスできる
 インターネットアクセスは Exit Node 経由時は、RTX830 配下時に比べて
 かなり速度低下しますが、それでも DL=120Mbps 前後、UP=240Mbps 
 前後は出ます
 
 Exit Node 経由しないで RTX830 ドメインのときは DL=900Mbps
 前後、UP=800Mbps前後です
 
 なので、Mac の tailscale は "None" に設定します
 
 
 つまり tailscale のクライアントとしてログインしているので、tailscale VPN
  メンバーだが、Exit Node は使わない、ということです
 
 メンバーなので、外から Mac のファイル共有は可能です 
 
 また RTX830 接続時に比し、ネット速度低下は殆どない、 ということです 
 
 
 
Tailscale 仮想 VPN の Exit Node 経由でのネット速度は、Raspberry Pi3 B のときに比べて3倍くらい改善されました。
 
 
 
また、
 
 RTX830 >> Mac mini M1 
 
接続時と、
 
 RTX830 >> DL.iNet MT2500A >> Mac mini M1 
      (Exit Node ではない接続時) 
 
接続時の ookla speedtest 結果は、下記のようになっています。
 
|  | 
| RTX830 >> Mac mini M1 
 | 
 
|  | 
| RTX830 >> DL.iNet MT2500A >> Mac mini M1 
 | 
  
 
DL.iNet MT2500A での速度低下はわずか 4% 以下にとどまっており、大変高性能であることがわかります。
 
 
 
前述したように Exit Node 経由だともっと低下しますが、100Mbps 以上は出ます。
 
 
Raspberry Pi3 B をExit Node にしたときは 3〜40Mbps 程度でした。
   
 
当初目的の一つである、スピード改善はできました。
 
 
もう一つの目的である発熱ですが、かなり暖かくなり、40℃ を越えているのではないでしょうか。
 
50℃まではいってなさそうなのでまぁまぁでしょうか。