0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

Starlink Statuspageに参加してStarlinkのパフォーマンスを可視化しよう!

Posted at

はじめに

Starlink。
高度300~500kmのLEO(低軌道)に大量の人工衛星を打ち上げ、空さえ見えればどこでも高速なインターネット接続を可能にするやべーやつです。日本では期間限定で接続に必要なハードウェアが半額で手に入り、月額料金も当初の半額程度に値下げされ、そのロマンとお得感にポチってしまった人も多いはず。
しかし、衛星通信ゆえに光回線ほどの安定した接続は望めず、時間によって通信速度の低下やping値が悪化することも...
Starlink Statuspageは、世界中のStarlinkユーザー有志による自動化されたスピードテストの結果を集計し、Starlinkのパフォーマンスの可視化に挑戦しているコミュニティです!
Starlink Statuspage はStarlinkを利用している一般ユーザの協力により成り立っています。より多くのユーザによるデータを収集できれば、より詳細かつ正確なパフォーマンスの把握に役立ちます。あなたも是非やってみませんか?

セットアップ

セットアップに必要な情報はStarlink StatuspageのGitHubに記されていますが、ここではより分かりやすく説明することを目的とし、日本語で詳細に手順を記したいと思います。

ユーザ登録

Starlink Statuspageにアクセスし、ページを下へスクロールします。
"First - Register" にメールアドレス・パスワード・ユーザネームを入力し"Join Us"をクリック。
image.png
登録が完了したらサインイン。
image.png
ページ上部の"Dash"をクリックすると、自分のStationの設定画面が表示されます。
右上の歯車ボタンを押すことでStationの名前の変更や位置の設定が可能です。
image.png
Nameにお好みの名前、latitudeに緯度、longitudeに経度を入力します。
たとえ正確な座標を入力しても、Starlink Statuspage側で意図的に座標に数kmの誤差を与える配慮がなされているようです。
地方さえ合っていれば、わざと他県の座標で登録したりするのもアリだと思います。
image.png
Station Key は後々必要になりますのでコピーしておきます。

プログラムのセットアップ-Windowsの場合

WSLのインストール

このツールの実行にはWindows上でLinux用のプログラムを実行できるWindows Subsystem for Linuxを利用します。
Microsoftのドキュメントに従ってWSLをインストールしてみましょう!

まずはWindowsのコマンドプロンプトを起動します。
"Windows"キーと"R"キーを同時に押し、「ファイル名を指定して実行」ダイアログを表示します。「名前(O):」の入力窓に"cmd"と入力して、"Shift"キーと"Ctrl"キーを押しながら"OK"をクリックします。これはコマンドプロンプト管理者権限で実行するために必要です。「ユーザアカウント制御」ダイアログが表示されたら"OK"をクリックします。
image.png
するとこのような真っ黒なウィンドウが開きます。
ここからの作業はここに文字を入力することで進めていきます。
image.png
では、以下のコマンドをコピー&ペーストして、Enterを押して実行してみてください!

wsl --install -d Debian

これによってWinwowsにWSLがインストールされます。今回は個人的に馴染みのある、Debianと呼ばれるディストリビューションを利用しています。
インストールが完了するとこのようなウィンドウが起動します。
image.png
ここではWSL上のユーザのusernameとpasswordを設定します。
英数字・半角記号でお好みのものを設定しましょう。
設定が成功するとこのような表示になります。これにてWSLのセットアップは完了です!
image.png

各種ソフトウェアのインストール

先ほどの緑文字が表示されたターミナルにコマンドを入力して進めていきます。

git/wget

ソフトウェアのデータをダウンロードするために利用します。

sudo apt install git wget

こんな警告が表示されましたか?

We trust you have received the usual lecture from the local System
Administrator. It usually boils down to these three things:

    #1) Respect the privacy of others.
    #2) Think before you type.
    #3) With great power comes great responsibility.

[sudo] password for kitakami:

この警告は、Linuxで初めて管理者権限を使おうとした際に表示されます。大きな力には大きな責任が伴うのです...ということで先ほど設定したpasswordを入力します。

"Do you want to continue? [Y/n]"と聞かれたら、"y"を入力してEnterします。

ookla speedtest-cli

スピードテストを行うプログラムです。

sudo apt install curl
curl -s https://packagecloud.io/install/repositories/ookla/speedtest-cli/script.deb.sh | sudo bash
sudo apt install speedtest

インストールが完了すると、以下のコマンドでスピードテストを行えるようになります。

speedtest --accept-license --accept-gdpr

このコマンドは各種ライセンス・規約への同意を行うオプション(--accept-license --accept-gdpr)が含まれています。
内容は以下のページをご確認ください。
https://www.speedtest.net/gdpr-dpa
https://www.speedtest.net/about/eula
https://www.speedtest.net/about/terms
https://www.speedtest.net/about/privacy

gRPCUrl

Starlink Dish (アンテナ)と通信を行い、pingなどの情報を得るために利用されます。
同時に、これをセットアップするためにGoogleの"GO SDK"もインストールします。

wget https://go.dev/dl/go1.20.1.linux-amd64.tar.gz
sudo tar -C /usr/local -xzf go1.20.1.linux-amd64.tar.gz
export PATH=$PATH:/usr/local/go/bin
go install github.com/fullstorydev/grpcurl/cmd/grpcurl@latest
sudo cp ./go/bin/grpcurl /usr/bin

starlinkstatus

これまでにセットアップしたプログラムを使って情報を収集し、Starlink Statuspageに送信します。

git clone https://github.com/Tysonpower/starlinkstatus
sed -i 's/speedtest -V --accept-license/speedtest --accept-license/g' ./starlinkstatus/starlinkstatus_client.sh
cd ./starlinkstatus && sudo chmod 700 starlinkstatus_client.sh && pwd

最後のコマンドを実行すると"/home/username/starlinkstatus"のような文字列が表示されます。後ほど必要になるためコピーしておきます。

自動定期実行の設定

Windowsのタスクスケジューラ機能を用いて、定期的に自動で計測が行われるようにします。
"Windows"キーと"R"キーを同時に押し、「ファイル名を指定して実行」ダイアログを表示します。「名前(O):」の入力窓に"taskschd.msc"と入力して"OK"をクリックします。
下のようなウィンドウが表示されたら「タスクスケジューラライブラリ」をクリックします。
image.png
画面が切り替わったら、ウィンドウ右側の「タスクの作成」をクリックします。
image.png
以下のような感じに設定します。
image.png

基本設定。
image.png
image.png
トリガー設定。測定に2分程度かかるため、xx時58分30秒を起点に30分や1時間ごと実行されるようにしておくとアップロード時刻が00分,30分になって気持ちが良い...
image.png
image.png

操作内容の設定。
「プログラム/スクリプト(P):」には"wsl.exe"
「引数の追加(オプション(A):」には"-u root 'path to starlinkstatus'/starlinkstatus_client.sh -k 'Your Station ID' -s -d"
「開始(オプション)(T):」にはwsl.exeが存在しているフォルダのパス
をそれぞれ入力する。
'path to starlinkstatus'は先の作業でコピーしておいた"/home/username/starlinkstatus"のような文字列
'Your Station ID'はユーザ登録時コピーしておいた"37fcbca1ae96a3e0"のような文字列
image.png
wsl.exeが存在しているフォルダのパスは、デスクトップ左下の"ここに入力して検索"にWSLと入力すると現れる「ファイルの場所を開く」から知ることができる。
例:"C:\Program Files\WindowsApps\MicrosoftCorporationII.WindowsSubsystemForLinux_1.0.3.0_x64__8wekyb3d8bbwe"
一通り入力が終わったら"OK"をクリックし、Windowsのアカウントのパスワードを入力する。
image.png
作成したタスクを右クリック・実行
image.png
このようなウィンドウが表示され計測が始まったら成功です!
image.png

計測結果を確認しよう

Starlink Statuspageの"Dash"ページでは、ログインすると自分のStationからアップロードされたデータの最新情報を閲覧することができます。
また、データ送信から数時間経過すると、"stations"ページの地図上にピンが表示され、通信速度やping値のプロットが見られるようになります!
image.png
image.png
image.png
私の環境では過去最高でDL285Mbps,UL42Mbpsだそうです。
私のStationの結果はこのリンクから見ることができます。

注意

StarlinkStatus.spaceはコミュニティベースのStarlinkステータスサイトであり、SpaceXやStarlink公式とのつながりはありません。(とのことです。)

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?