Klipper(mainsailos)のwebUIを外出先からでも見れるようにする
はじめに
tailscaleというVPNサービスを使ってローカルネットワークにアクセスし、外出先からでもmainsailのwebUIを見れるようにしたので参考までにメモしておきます。
本記事は以下のnoteを参考にさせていただきました。途中詰まる所があったのでそこを補足する形となります。
tailscaleは簡単に安全なVPNを構築することを目指したサービスです。オープンソースの技術をベースに開発され、メルカリでの使用実績もあるので信頼性は問題ないかと思います。
本編
準備するもの
Klipper化された3Dプリンター
スマホ
1. tailscaleの会員登録
https://tailscale.com/にアクセスし、会員登録を済ませます。プランはいくつかありますが、無料のFreeプランで問題ありません。
![](https://assets.st-note.com/img/1689526504545-WddxljU985.png?width=1200)
2.スマホにtailscaleアプリをインストール
Appleの方は次から
Androidの方は次から
それぞれアプリをインストールします。
今回はAndroidを使用します。インストールすると次のような画面になるので、1で登録したアカウントでログインします。
![](https://assets.st-note.com/img/1689527097390-fF6jCI9Mdr.jpg?width=1200)
ログインすると、自分の端末名と100.~から始まるIPアドレスのようなものが割り当てられます。
![](https://assets.st-note.com/img/1689527221131-crIb8XGk0G.jpg?width=1200)
3. ラズパイにtailscaleをインストール
以下の公式ページを参考にmainsailOSが動いているラズパイにも同様にtailscaleをインストールします。
https://tailscale.com/download/linux/rpi
手順は非常に簡単で、ラズパイへssh接続し、コマンドライン上で
curl -fsSL https://tailscale.com/install.sh | sh
を入力するだけです。
インストールが終わると、https://login.tailscale.com/a/XXXXXXXXXXの形のURLが表示されるのでそこにアクセスし、はじめに作ったアカウントでログインして完了です。
2024/1/11追記
最新バージョンだと、インストール後にURLが表示されないそうです(記事を読んだ方から教えていただきました。ありがとうございます。)。
インストール後、"sudo tailscale up"でTailscaleをスタートしてログインするよう表示されるので、指示に従います。
![](https://assets.st-note.com/img/1704900042150-6eo985p5h9.png)
表示されたURLにアクセスし、ログインします。
4.moonraker.confの設定
スマホから接続できるようにするため、moonrakerのファイルにテキストを1行追加する必要があります。
ローカルネットワーク内でmainsailosにアクセスし、mainsailos > MACHINE > moonraker.confの順に進み、
![](https://assets.st-note.com/img/1689528326183-4AVdsguhny.png)
trusted_clientsの部分に
100.0.0.0/8
を追記します。
![](https://assets.st-note.com/img/1689528310486-gjy42cmUpU.png)
追記した後、mainsailos webUIの右上からmoonraker横の丸矢印を押して再起動します。(その下のHost Control > Rebootでも良い)
![](https://assets.st-note.com/img/1689529386366-JWMcApSERI.png)
これによって、それぞれの端末に割り当てられた100.~で始まるIPアドレスからラズパイにアクセスできるようになります。
5.スマホからwebUIにアクセスする
上記の手順が完了すると、スマホアプリ上にmainsailosとそのIPアドレスが表示されるようになります。「mainsailos」の部分をタップしてIPアドレスをコピーし、ブラウザに貼り付けるとwebUIにアクセスできます。
![](https://assets.st-note.com/img/1689527968269-P6rqVo7f0N.jpg?width=1200)
下の画像を見てみると、(ローカルネットワーク内にいなくても)4G回線でmainsailosのwebUIにアクセスできていることが分かるかと思います。
![](https://assets.st-note.com/img/1689528611834-coovpP7dFQ.jpg?width=1200)
また、ここで一つ詰まった点なのですが、ブラウザに入力するのはmainsailos.localや192.168~のようなアドレスではなく、tailscaleで指定されたものを入力する必要があります。
![](https://assets.st-note.com/img/1689529155902-WVETtTKjBq.jpg?width=1200)
tailscaleで割り当てられたIPアドレスはログアウトしたり、アプリを再インストールしない限りは変わらないようなのでブックマークしておくと便利かもしれません。
おわりに
本記事ではローカルネットワーク外から3Dプリンターの様子を確認できる方法を紹介しました。外出先からでもカメラで印刷状況を確認し、失敗時にweb経由で停止できるのは非常に便利だと思います。
他にもtailscaleの機能として、端末間のファイル共有も非常に便利でした(本記事を作成するためのスクリーンショットを送る際に使用しました)。Airdropのような感覚でandroid-windows間のファイル送受信ができるのは魅力的だと思います。
その方法については下の記事にて紹介されていますので、気になる方はご覧になってみてください。
この記事が気に入ったらサポートをしてみませんか?