Jetson Xavierを使ってみる その2(通信周りの設定、Node-RED、TailScale)

はじめに

 今回は以前OSのセットアップを行ったJetson Xavierの通信周りの設定を行いました。

 自宅サーバーとして使いたかったので、外部のネットワークからでもアクセスできるようにしています。今回利用したTailscaleが便利で、Windowsでも導入して利用しています。

▼以前の記事はこちら

ちょっと買い物:ノートPCのメモリ交換(ASUS TUF Gaming A15、gpt-oss-20b)

はじめに  今回はいつも使っているノートPCのメモリを交換して、16GBから64GBに増やしてみました。  リリースされたばかりのgpt-oss-20bをローカルで実行したときにメモ…

Jetson Xavierを使ってみる その1(JetPack 5.1.5のセットアップ)

はじめに  最近TechSeeker Hackathon 2025というハッカソンに参加しているのですが、参加者特典でJetson Xavierを1万円で購入できました。今回はそのセットアップをして…

インターネットとの接続

 Jetson Nanoのときもそうだったのですが、Jetson Xavierには無線接続するための部品がありません。

▼Jetson NanoのときはUSBで挿して使えるWi-Fi無線LANで接続していました。

Jetson Nanoを使ってみる(周辺機器、リモートデスクトップ接続)

はじめに  以前Jetson Nanoを手に入れたので、今回はこれからロボットの開発をするための準備です。追加で購入しないといけないものが色々とありました。  CLI(コマン…

 有線LANのポートはあるのですが、無線LANが別の部屋にあったので、有線LANを差すことができない状況でした。今回は中継機があったので、そこに有線LANで差しています。

▼使わずに余っていたこちらの中継機を使っています。有線LANのポートもあります。

 無線LANと中継機を接続するための設定を行いました。中継機への接続先のアドレスやユーザー名、パスワードは本体に書かれていました。

▼中継機のアクセスポイントに接続して、ログインしました。

▼接続先を設定しました。

 この後Jetson Xavierと中継機を有線で接続し、別のPCからSSH接続で入ることができました。

Node-REDをインストールする

 普段から使い慣れているNode-REDをインストールしました。フロー型のプログラミングツールで、特に通信周りの実装が簡単にできます。

▼以下のページのRaspberry Pi用のスクリプトは、Ubuntuでも利用できます。

https://nodered.jp/docs/getting-started/raspberrypi

 別のPCからJetson XavierにSSH接続し、コマンドを実行しました。

sudo apt update
sudo apt upgrade
sudo apt install curl
bash <(curl -sL https://raw.githubusercontent.com/node-red/linux-installers/master/deb/update-nodejs-and-nodered)

▼curlが無いというエラーは起きていたので、インストールしました。

 ターミナルに表示される設定項目は基本的にデフォルトのままなのですが、今回はネットワークを超えて入れるようにしたかったので、セキュリティの設定を行いました。

▼User Securityを有効にしておくと、アクセスしたときにユーザー名とパスワードの入力が求められます。

▼この後ターミナルでnode-redを実行し、http://<IPアドレス>:1880にアクセスすると、ユーザー名とパスワードの入力が求められました。

 Node-REDのエディタ画面にアクセスできました。

Tailscaleを使ってみる

 ローカルネットワークではSSH接続やNode-REDへのログインはできるようになりました。さらにネットワークを超えて、どこからでも家のJetson Xavierにアクセスする方法を探していました。

▼以前Ngrokは使ったことがあるのですが、無料枠では通信量が月に1GBまでで、すぐに使い果たしたことがありました。

ngrokを使ってみる(OAuth、GitHub、Node-RED)

はじめに  今回はngrokを使ってみました。ローカルで起動しているサーバーを、グローバルに公開することができます。 ▼こちらの記事で紹介されていました。 https://qiit…

 ChatGPTに聞いてみたところ、Tailscaleというものがあることを教えてもらいました。

▼Tailscaleの説明についてはこちら。

https://tailscale.com/blog/how-tailscale-works

 簡単にVPNを導入するための仕組みのようです。VPNについては詳しくないのですが、まずは使ってみました。

▼Tailscaleの各環境へのインストール方法は以下のページにあります。

https://tailscale.com/kb/1347/installation

 今回はChatGPTにコマンドを提示してもらいました。snapでインストールできました。

sudo snap install tailscale
sudo tailscale up

▼問題なくインストールできました。

▼ログイン用のURLが表示されました。

 sudo tailscale upを実行した時点で、ログインするためのURLが表示されます。そのURLにアクセスし、ログインしたところ、問題なくセットアップできました。

▼他のデバイスでもインストールしてセットアップした状態ですが、このようにブラウザでアドレスを確認できます。このアドレスでSSH接続もできました。

 Ngrokのようにポートを開放する、Funnelという仕組みもあります。

▼Funnelについてはこちらのページで説明されています。現在はベータ版の機能のようです。

https://tailscale.com/kb/1223/funnel

▼ブラウザの管理画面でFunnelを有効にしました。

 1880ポートで起動しているNode-REDに外部からアクセスしたかったので、1880ポートに対してFunnelを利用しました。

sudo tailscale funnel 1880

▼sudoをつけて実行する必要がありました。

 HTTPS通信で接続するためのURLが発行されるので、そのURLにアクセスすると、またNode-REDのログイン画面が表示されました。

 SSH接続したターミナルを閉じるとFunnelも無効になるので、Node-REDのexecノードを利用して、起動時に1880ポートに対してFunnelを実行するようにしてみました。

▼sudoをつけて実行する必要があるので、コマンドを実行するときにパスワードを渡す必要があります。

▼フローは以下のように作成してみました。

 これで起動時にFunnelも実行されるようになりました。

▼emailノードと組み合わせて、発行されたURLを通知するようになっています。

Node-REDを使ってみる その3(ui-tableノード、emailノード)

はじめに  今回はNode-REDのui-tableノードとemailノードを使ってみました。  デスクトップPCの作業を自動化して、遠隔でも状態を確認するためにdashboard画面を確認し…

 なおFunnelで発行されたURLは、Tailscaleの管理画面でも確認できます。

最後に

 Tailscaleを利用して、簡単に外部ネットワークからでもアクセスできるようになりました。WindowsのPCでも便利に利用できたので、また別の記事にまとめようと思っています。

▼SSH接続だとコマンドでの操作なので、GUIでの操作はGoogle Chromeのリモートデスクトップを使っています。

Google Chromeのリモートデスクトップを試してみる

はじめに  今回はGoogle Chromeのリモートデスクトップを試してみました。  普段はノートPCを持ち運んで使っているのですが、よりGPUの処理性能が高いデスクトップPCに…

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です