2024-05-12

GL.iNet AXT1800 を WiFi-AP 兼 tailscale の Subnets & Exit Node にする

 

 

GL.iNet AXT1800 を WiFi-AP 兼 tailscale の Subnets & Exit Node にするため、AP モードで動作させます。

 

AXT1800 はメインルーター配下に置きます。

 

メインルーターの LAN ポートと、AXT1800 の WAN ポートを LAN ケーブルで接続します。 


 

tailscale の Subnets は、Mac mini M1 のファイルやフォルダを外からもアクセスできるようにすることが目的です。

 

Mac の場合、スリープ中でもファイルやフォルダアクセスでスリープが解除されますので、Wake on LAN は不要です。

 

 

 

Exit Node 化は Free WiFi 接続時に、VPN で自宅ネットワークを介して安全にインターネットアクセスできるようにすることが目的です。

 

しかしながら Free WiFi を使うことはまずありませんので Exit Node は設定しても使わないでしょう。

 

 

 

WiFi-AP 兼 tailscale の Subnets & Exit Node 化は、次の手順を踏みます。

 

1.あらかじめルーターモードで tailscale を有効化する

  AP モードでは tailscale の設定・有効化ができないため、ルーターモードで
  設定・有効化します。

  そのあとで AP モードにしても設定は有効状態が保持されます。

 

2.静的 IP アドレス化を行う

  AP モードではメインルーターの DHCP による IP 割り当てがされます。

  ⇨ ログイン時のアドレスを固定するため、静的 IP にします

 

3.tailscale の最新化

 

4.AP モードでは再起動で tailscale が停止してしまうので対策を講じる

  GL.iNet 機器を AP モードにすると再起動でなぜか tailscale が
  停止してしまうのです。


 

 

 

1.ルーターモードで tailscale を有効化

 

AP モードでは tailscale を設定・有効化できないためです。

 

いったんルーターモードで設定・有効化しておけば、AP モードに変更しても tailscale が有効な状態は保持されます。

 

管理パネルを開き[アプリケーション]⇨[Tailscale]⇨[有効にする:オン]⇨[適用するボタンをクリック]

 

 The Device Bind Link をクリックし、現れた tailscale サイトにログインします。 

 

次のように、AXT1800 が接続されたのがわかります。


 

管理パネルには デバイスは Tailscale 仮想ネットワークに接続されています。 と通知されます。

 

tailscale 有効化ができたら AP モードにします。

 

[ネットワーク]⇨[ネットワークモード]⇨[ルーターモードからAPモードに変更] ⇨[適用するボタンをクリック]

 

 

 

 

2.静的 IP アドレス化


LuCi で LAN2 インタフェースを追加し、静的アドレスを設定します。

 

元々の LAN インタフェースの削除はしなくてもよい。

 

 

この静的アドレスは管理画面にログインするときや、LuCi にログインするときのアドレスになります。

 




 

 

 

 

3.tailscale 最新化

 

本記事掲載時点での最新バージョンは 1.66.1 です。

 

ターミナルから ssh root@192.168.xxx.yyy とし、AXT1800 に入ります。

 

 

/overlay に 60MB ほどの空き領域が必要です。

 

バージョンが 1.66.1 の場合、

 ・/usr/sbin/tailscale :15.817MB

 ・/usr/sbin/tailscaled:28.948MB

 合計で 約 45MB です。

 これに tailscale_1.66.1_arm.tgz と、これを解凍したファイルを格納する領域が
 /root に必要です。

 

次のコマンド群を実行します。

 

~# opkg flag hold tailscale tailscaled
~# wget https://pkgs.tailscale.com/stable/tailscale_1.66.1_arm.tgz
~# tar zxf tailscale_1.66.1_arm.tgz
~# mv tailscale_1.66.1_arm/tailscale* /usr/sbin
~# /etc/init.d/tailscale restart
~# /etc/init.d/tailscale status
running
~# rm -r tailscale*
~#



次のコマンドを入力して、Subnets と Exit Node を有効化します。


~# tailscale up --advertise-routes=192.168.xxx.0/24 --accept-routes --advertise-exit-node --accept-dns=false

 

 

 

 

4.再起動時に tailscale が停止してしまう対策

 

/usr/bin/gl_tailscale の 119〜123 行が、「ルーターモード以外の場合、tailscale を停止」しているために再起動で停止してしまいます。

 

なぜ AP モードで停止させるのか意味不明です。

 

推定ですが、AP モードで tailscale の有効化ができないので、停止しないとエラーログを吐くためかも知れません。

 

ですが、ルーターモードでいったん有効化しておけば AP モードに変更後も tailscale の有効性は保持されます。

 

 

/usr/bin/gl_tailscale の 119〜123 行を vi を使ってコメントアウトすれば再起動で tailscale は停止状態になりません。

 

下記のようにコメントアウトをします。

 

 ・
 ・

118|     sys_mode=$(uci -q get glconfig.general.mode)
119| #    if [ "$sys_mode" != "router" ]; then
120| #        /etc/init.d/tailscale stop
121| #        modify_dns_resolv 0
122| #        exit 0
123| #    fi

 ・
 ・

 

 

 

 

 

 

 

 

0 件のコメント: