旧MacBook Air(Big Sur)で外出先から自宅のマイクラサーバへアクセスするまでの記録
古い Surface はバッテリー不良で CPU が常に数%しか出ない状態になっていました。自力でバッテリー交換を行い性能は復活したものの、分解の途中で液晶を破損。表示前提の使い方は難しくなったため、表示を必要としない“おうちサーバ”へ役割を切り替えました。(導入時の記事はこちら→ 【Ubuntu 24.04】ノートPCのふたを閉じるとスリープしてWi-Fiが切れる問題と対策(Surface Pro 5実例))、省電力かつ停電時も粘れるバッテリ付きサーバとして運用し、Minecraftサーバを常時稼働させています。
今回は、旧 MacBook Air(macOS 11 Big Sur) を使って外出先から安全にアクセスする方法を、Tailscale で実現した手順をまとめます。
旧Macbook Air(Big Sur)で外出先からマイクラサーバへアクセス
外からも家族で楽しめるように、外出先から安全に自宅のマイクラへ接続する方法を検討しました。手元のPCは 旧 MacBook Air(macOS 11 Big Sur) です。
ここでひとつ壁がありました。Big Sur の古い Mac では App Store(および公式 GUI パッケージ)から Tailscale をそのまま入れられないため、今回は CLI 版(tailscale / tailscaled)を Go で自前ビルドする方針に切り替えています。
具体的には Go 1.24 系 + Tailscale v1.86 系タグでビルドし、起動は launchd(install-system-daemon) で常駐化。
さらに Subnet routes(Advertise / Enable / Accept) を正しく整えて、自宅 LAN(例:192.168.1.0/24)の先にある Minecraft サーバへ、ポート開放なしで到達する構成にしました。
つながったと言える基準
- tailscale status に Subnet routes: 192.168.1.0/24 … (active) と出る
- ping 192.168.1.10(例:サーバのLAN IP)に応答がある
- nc -vz 192.168.1.10 25565 が open を返す
- Minecraftクライアントで実接続できる
※ここまで揃えば“外からマイクラOK”の判定
ここでつまずいた:Big Sur・Go・Tailscaleの三重苦
- Big Surは現行Tailscaleアプリ(GUI)の対応外 → Appやpkgは不可
- go install tailscale@main は Go 1.25+ 前提 → Big Surには1.25が入らない
- したがって Go 1.24系 + Tailscale旧タグ(v1.86系) で CLI版(tailscale / tailscaled) を自前ビルドする路線に変更
- GUIがない=DNS(MagicDNS)やサブネットルートの受け入れを自分で整える必要あり
- sudo 時にPATHが変わり tailscale が見つからない問題(→ /usr/local/bin へシムリンクで解決)
Big SurでもTailscaleを使う手順
Go 1.24系を入れる(誤って1.25に上がらない工夫込み)
brew update brew install go go version # → go1.24.x を確認 go env -w GOTOOLCHAIN=local # 自動で新ツールチェーンを取りに行かせない
Tailscale(CLI/デーモン)を旧タグでビルド
# v を忘れずに go install tailscale.com/cmd/tailscale@v1.86.2 go install tailscale.com/cmd/tailscaled@v1.86.2 # ユーザーのPATH echo 'export PATH="$HOME/go/bin:$PATH"' >> ~/.zshrc && exec $SHELL -l # sudoでも使いやすく(任意) sudo ln -s $HOME/go/bin/tailscale /usr/local/bin/tailscale sudo ln -s $HOME/go/bin/tailscaled /usr/local/bin/tailscaled
常駐化(再起動後も自動でVPNが張られる状態へ)
sudo tailscaled install-system-daemon sudo tailscale up # 初回のみブラウザでログイン tailscale status
以後はmac再起動でも tailscaled が自動起動し、保存済み設定で数秒〜十数秒後に再接続。
Subnet routes を正しく通す(“Advertise/承認/受け入れ”の三段構え)
- サブネットルータ(例:pikvmなどLAN側Linux機)で“Advertise”
sudo tailscale set --advertise-routes=192.168.1.0/24 # ルータやLAN機に静的ルートを置きたくないならSNATも sudo tailscale set --snat-subnet-routes=true # (Linuxなら念のため)sudo sysctl -w net.ipv4.ip_forward=1
- 管理コンソールで“承認(Enable)”
Machines → サブネットルータ → Route settings → 192.168.232.0/24 を Enable - クライアント(Big SurのMBA)で“受け入れ”
sudo tailscale set --accept-routes=true tailscale status # 「… (active)」が付けばOK
Subnet routesってつまり何?(仕組みを“絵が浮かぶ言葉”で)
- 100.x.x.x は各ノード自身のTailscale IP
- Subnet routes は「そのノードの向こう側の既存LAN(例:192.168.1.0/24)を丸ごとVPNに載せる」ための経路共有
- だから Advertise(どのLANを載せるか)→承認(配る許可)→受け入れ(クライアント適用) の3ステップが必須
- 物理的に同じサブネットにいるクライアントは、そのプレフィクスのVPN経路を基本使いません(競合避けの仕様)
動作確認と最終チェック(“実害ベース”で締める)
tailscale status route -n get 192.168.1.1 netstat -rn | egrep '192\.168\.232|utun' ping -c 3 192.168.1.10 nc -vz 192.168.1.10 25565
nc が open まで通れば、Minecraftクライアントでも概ねOK。名前で繋ぎたい場合はMagicDNSの設定も忘れずに。
まとめ:古い機材に“もう一役”お願いするやり方
- 液晶が壊れても、Surfaceは静音・省電力のサーバとして十分に働ける。Ubuntu導入の要点は既存記事に集約済み。
- Big SurのMBAはアプリ非対応でも、Go 1.24 + Tailscale v1.86系(CLI) 路線で実用化できた。
- つまずきポイントは Subnet routes(広告/承認/受け入れ) と DNS(MagicDNSは手動)。一度通してしまえば、再起動後も自動でVPNが立ち上がる。
- ポート開放いらずで、外からも家のマイクラに安心参加。古い機材にもう一度出番を作る、現実的なやり方だと思います。








ディスカッション
コメント一覧
まだ、コメントがありません