Starlink(スターリンク)がやってきたのでネットワークを調べました
2022年12月12日 月曜日
CONTENTS
【IIJ 2022 TECHアドベントカレンダー 12/11(日)の記事です】
皆さんはStarlink(スターリンク)をご存知でしょうか?通信衛星経由でインターネットに繋ぐ事ができるサービスです。今年の1月におきたトンガの火山噴火では同国のインターネット復旧に使われたり、ロシアによるウクライナ侵攻では、ウクライナ支援で活躍したりで色々な意味で世界中から注目されています。事業主はあのイーロン・マスク氏です。そのサービスが10月から日本でも利用できるようになりました(KDDIさんは法人向けに12/1日提供開始とのこと)。ここではStarlinkについてIIJ的にちょっとネタとなりそうな情報提供を綴っていきたいと思います。
これまで過去投稿の一覧を書いていましたが、記事が増えてきたので、タグでまとめた先のリンクにします。IIJのスターリンク関係の記事が集まっていますので活用してください。
動画も公開していますので、よろしければそちらもあわせてご覧ください。
ブログ | 動画(YouTube) |
---|---|
Starlinkとは?
インターネットは学術利用から発展し、耐障害性の高さ、誰もが情報発信できる自由な空気と利便性によりその後もSNSや配信、P2P、IoT、インターネットはプラットフォームになり社会を支えるインフラの一つになりました。
インターネットを支える通信手段として衛星は昔から使われていました。赤道上空36,000kmの静止軌道上に配置された衛星をつかったインターネット通信は航空機・船舶など移動体における高速インターネット接続環境の提供や通信インフラ不足の国や地域での通信サービスとして活躍してきました。そして、最近では低軌道上に多数の通信衛星を配置して協調動作させる事で衛星通信の弱点だった遅延などを解決する方法が登場してきました。これは衛星コンステレーションと呼ばれ、その代表格と呼べるのがSpaceX社のStarlinkです。
Starlinkのプロトタイプ は2018年2月に開始され、現在は3,500を超える衛星が打ち上げられて、多くの国でサービスされています(FCCから7,500機までの追加が承認されました)
日本向けの提供
筆者は去年の6月ぐらいには予約してまっていました。そして8月ぐらいから徐々にサイトの日本語化が進んで日本でのサービスインも近いかなと思っていたところ、10/11日に東日本向けにサービス開始がアナウンスされ、11/4日で日本全国が網羅されました。最近ではStarlink for RVも正式に始まりました。
現在公式サイトから契約できるのは、「Starlink レジデンシャル」と「STARLINK for RV」です。接続に必要な機材一式(アンテナ、Wi-Fiルータ、電源及びマウント)をまとめたStarlinkキットは73,000円、月額費用は12,300円(RVは15,100円)になります。筆者の契約時点では「Starlink レジデンシャル」のみでしたのでこちらを注文しました。
Starlinkキットは初期型の円形のアンテナ(G1)と新型の四角いアンテナ(G2)があるのですが筆者のところにはG1キットが到着しました。サポートに確認したところ、機器認証の関係でG1での提供になったそうです。ネットの書き込みを見ていると最近はG2に切り替わったようですね。そのほかにも高性能版のKitが2種類存在します。
G1は古い機材なんだ!と思う方もいらっしゃるかと思いますが、アンテナケーブルのコネクタがRJ45だったり、Wi-FiルータにEthernetの口がついている等、ネットワーク機器としては使い勝手は悪くはないです(G2は独自コネクタで、Ethernetの口を出そうと思ったら追加の機器購入が必要)。ただアンテナが重くて運ぶのが大変です。
リリース当日の10/11日に発注して15日には到着。さっそく近所の公園に機材を持ち込んでテストしてみました。北東の方角の空が開けた場所で、電源を入れるだけでインターネットへの接続口が現れます。接続までの手順としては何も特別な事は必要なくつながります。通信速度も230Mbpsを超えています。
Starlinkキットのネットワーク構成を調べてみる
IIJがネットワークを調べるとなれば相応の機器を使ってしっかり解析したと言いたいところですが、今回はPCを要所に繋いでパケットをみたりするレベルの調査です。変な事をしてStarlinkに怒られても困りますしね(笑)。あとSNS(reddit)とかの情報や公式のFAQも参考にしています。
やはりというかDish(アンテナ部分)自体がルータになっていました。ネットワークの構成は決め打ちでユーザ側で設定できる事は少ないです。IPv6は見える範囲では使われていないようです。
Dish配下に複数の機器をネットワークスイッチ等を介して繋ぐことは可能ですが、DishのIPアドレスと物理アドレス(Macアドレス)も決め打ちです。複数のDishを同じスイッチに繋ぐとIPアドレスや物理アドレスの衝突などが起きるので自分で解決していく形になると思われます。Wi-FiルータのLAN側設定も決め打ち(192.168.1.0/24)で設定できる事はアプリ経由でのSSIDの変更と周波数(2.4GHz/5GHz)まわりの変更ぐらいになります。
StarlinkとSpaceXのネットワークを調査する
早速 traceroute してみました。接続先はGoogleのパブリックDNSサーバ(8.8.8.8)です。どのISPを通過しているか分かりやすいようにAS番号も表示するようにしています。AS14593がSpace Exploration Technologies Corporation(SpaceX)になります。
$ traceroute -A -I 8.8.8.8 traceroute to 8.8.8.8 (8.8.8.8), 30 hops max, 60 byte packets 1 StarlinkRouter.lan (192.168.1.1) [*] 0.909 ms 0.935 ms 1.207 ms 2 100.64.0.1 (100.64.0.1) [*] 51.058 ms 51.050 ms 51.069 ms 3 172.16.249.6 (172.16.249.6) [*] 51.020 ms 50.996 ms 51.012 ms 4 149.19.109.16 (149.19.109.16) [AS14593] 50.955 ms 57.291 ms 57.276 ms 5 as15169.ix.jpix.ad.jp (210.171.224.96) [AS7527] 57.250 ms 57.268 ms 57.370 ms 6 108.170.242.193 (108.170.242.193) [AS15169] 57.347 ms 48.871 ms 64.958 ms 7 216.239.57.163 (216.239.57.163) [AS15169] 51.445 ms 64.772 ms 64.756 ms 8 dns.google (8.8.8.8) [AS15169] 51.385 ms 51.366 ms 51.433 ms
通常Starlinkは衛星から先はすぐに地上局におりそこから先は地上で通信しています。tracerouteの2番目に現れる100.64.0.1は遅延を考慮すると地上局のアドレスであることがわかります。Starlinkが使っている100.64.0.1は「キャリアグレードのNAT(CGNAT)を使用する場合の、サービスプロバイダーとそのサブスクライバー間の通信用の共有アドレススペース」になっています。その後はAS14593(SpaceX)→AS7527(JPIX)→AS15169(Google)と繋がっていきます。
海外のStarlinkについて
IIJにはネットワーク好きの技術者が多いので当然のように有志が契約しています(笑)。US(サンノゼ)とDE(デュッセルドルフ)で使っています。USはG2タイプです。
これらの場所からもtracerouteを実施して比較してみました。GoogleのDNSサーバ(8.8.8.8)はAnycastという技術を使って、地理的にもっとも近い所を参照できるように経路制御されていますのでいずれも地理的に近いサーバと通信しているようです。
US(サンノゼ)から
$ traceroute -I -A 8.8.8.8 traceroute to 8.8.8.8 (8.8.8.8), 30 hops max, 60 byte packets 1 192.168.1.1 (192.168.1.1) [*] 1.718 ms 4.307 ms 4.204 ms 2 100.64.0.1 (100.64.0.1) [*] 47.626 ms 48.178 ms 48.327 ms 3 172.16.248.36 (172.16.248.36) [*] 54.396 ms 54.553 ms 56.829 ms 4 149.19.108.29 (149.19.108.29) [AS14593] 56.895 ms 56.959 ms 57.024 ms 5 72.14.208.64 (72.14.208.64) [AS15169] 54.413 ms 56.672 ms 56.675 ms 6 216.239.57.29 (216.239.57.29) [AS15169] 56.478 ms 43.021 ms 61.374 ms 7 142.250.226.115 (142.250.226.115) [AS15169] 108.425 ms 108.412 ms 108.406 ms 8 dns.google (8.8.8.8) [AS15169] 106.785 ms 107.478 ms 107.639 ms
DE(デュッセルドルフ)から
$ traceroute -I -A 8.8.8.8 traceroute to 8.8.8.8 (8.8.8.8), 30 hops max, 60 byte packets 1 StarlinkRouter.lan (192.168.1.1) [*] 0.897 ms 1.085 ms 1.316 ms 2 100.64.0.1 (100.64.0.1) [*] 43.267 ms 59.096 ms 59.208 ms 3 172.16.248.40 (172.16.248.40) [*] 59.137 ms 59.401 ms 59.335 ms 4 149.19.108.139 (149.19.108.139) [AS14593] 58.183 ms 58.270 ms 58.459 ms 5 149.19.109.49 (149.19.109.49) [AS14593] 58.803 ms 58.883 ms 58.831 ms 6 142.251.48.235 (142.251.48.235) [AS15169] 57.781 ms 47.286 ms 54.970 ms 7 142.251.241.75 (142.251.241.75) [AS15169] 54.875 ms 55.160 ms 55.184 ms 8 dns.google (8.8.8.8) [AS15169] 54.733 ms 54.787 ms 54.728 ms
これをみるとUSやDEではIXを介することなくSpaceXからGoogleに直接繋がっている事がわかります。
次に各国での出口となるゲートウェイのアドレスを確認しました。日本は 206.83.125.96、USが 98.97.57.170、DEが 145.224.72.19 といった形になっていました。ゲートウェイはアドレスプールとして管理されているはずなので実際にはネットワーク単位でそれぞれの国で設定されていると思われます。
IIJへの接続性も調査しました
次にIIJに traceroute してみます。www.iij.ad.jp までのtracerouteです。
最初に日本からですが、うーん、あまりよくありません(笑)。改善が必要ですね。調べてみた所IIJのサービスとかお客様のネットワークとの接続性は問題ありませんでしたので今後ゆっくり対応を検討します。
$ traceroute -A -I www.iij.ad.jp traceroute to www.iij.ad.jp (202.232.2.180), 30 hops max, 60 byte packets 1 StarlinkRouter.lan (192.168.1.1) [*] 0.624 ms 0.833 ms 1.104 ms 2 100.64.0.1 (100.64.0.1) [*] 54.028 ms 54.020 ms 54.104 ms 3 172.16.249.6 (172.16.249.6) [*] 53.998 ms 53.989 ms 54.065 ms 4 149.19.109.16 (149.19.109.16) [AS14593] 53.961 ms 53.952 ms 54.004 ms 5 * * * 6 be3093.rcr51.b060372-1.tyo01.atlas.cogentco.com (154.24.11.137) [*] 54.002 ms 31.541 ms 31.376 ms 7 be3074.ccr71.tyo01.atlas.cogentco.com (154.54.2.177) [AS174] 55.393 ms 55.360 ms 55.387 ms 8 be3696.ccr41.sjc03.atlas.cogentco.com (154.54.86.137) [AS174] 157.893 ms 157.863 ms 157.954 ms 9 be3142.ccr21.sjc01.atlas.cogentco.com (154.54.1.193) [AS174] 157.779 ms 157.757 ms 157.821 ms 10 be3176.ccr41.lax01.atlas.cogentco.com (154.54.31.189) [AS174] 157.973 ms 158.006 ms 158.102 ms 11 be3243.ccr41.lax05.atlas.cogentco.com (154.54.27.118) [AS174] 157.579 ms 157.570 ms 157.610 ms 12 38.104.85.34 (38.104.85.34) [AS174] 134.310 ms 135.534 ms 143.392 ms 13 osk004bb00.IIJ.Net (58.138.88.113) [AS2497] 151.414 ms 143.319 ms 147.114 ms 14 osk008agr02.iij.net (210.130.143.174) [AS2497] 151.173 ms 151.147 ms 155.079 ms 15 www.iij.ad.jp (202.232.2.180) [AS2497] 155.048 ms 155.075 ms 155.188 ms
USは問題なさそうです
$ traceroute -I -A www.iij.ad.jp traceroute to www.iij.ad.jp (202.232.2.180), 30 hops max, 60 byte packets 1 192.168.1.1 (192.168.1.1) [*] 7.040 ms 7.100 ms 7.165 ms 2 100.64.0.1 (100.64.0.1) [*] 57.382 ms 75.170 ms 75.802 ms 3 172.16.248.36 (172.16.248.36) [*] 75.350 ms 75.487 ms 76.019 ms 4 149.19.108.27 (149.19.108.27) [AS14593] 75.025 ms 75.371 ms 76.057 ms 5 76.74.57.134 (76.74.57.134) [AS6517] 75.868 ms 75.869 ms 75.868 ms 6 ae28.cr2-sjc1.ip4.gtt.net (89.149.136.149) [AS3257] 77.105 ms 56.902 ms 55.527 ms 7 as2497.cr2-sjc1.ip4.gtt.net (173.241.128.62) [*] 65.807 ms 66.413 ms 66.549 ms 8 osk004bb00.IIJ.Net (58.138.88.185) [AS2497] 179.289 ms 179.889 ms 180.189 ms 9 osk008agr02.iij.net (210.130.143.205) [AS2497] 180.181 ms 180.178 ms 180.582 ms 10 www.iij.ad.jp (202.232.2.180) [AS2497] 180.574 ms 180.570 ms 180.566 ms
DEはUS経由になっていますが、これも問題はありません。ユーラシア大陸をまわるか、アメリカ大陸をまわるかという話です。
$ traceroute -I -A www.iij.ad.jp traceroute to www.iij.ad.jp (202.232.2.180), 30 hops max, 60 byte packets 1 StarlinkRouter.lan (192.168.1.1) [*] 0.787 ms 0.892 ms 1.095 ms 2 100.64.0.1 (100.64.0.1) [*] 49.182 ms 53.034 ms 52.057 ms 3 172.16.248.40 (172.16.248.40) [*] 51.907 ms 52.050 ms 52.234 ms 4 149.19.108.137 (149.19.108.137) [AS14593] 51.753 ms 51.955 ms 52.099 ms 5 ffm-b5-link.ip.twelve99.net (62.115.37.20) [AS1299] 51.982 ms 52.180 ms 52.073 ms 6 ffm-bb1-link.ip.twelve99.net (62.115.124.116) [AS1299] 51.069 ms 46.994 ms 58.790 ms 7 prs-bb1-link.ip.twelve99.net (62.115.123.13) [AS1299] 66.711 ms 55.301 ms * 8 ldn-bb1-link.ip.twelve99.net (62.115.135.24) [AS1299] 71.006 ms 71.125 ms 71.274 ms 9 ldn-b1-link.ip.twelve99.net (62.115.121.27) [AS1299] 70.824 ms 70.952 ms 71.095 ms 10 202.232.1.61 (202.232.1.61) [AS2497] 70.648 ms 70.766 ms 70.902 ms 11 lax002bb12.IIJ.Net (58.138.83.186) [AS2497] 202.563 ms 202.361 ms 198.955 ms 12 osk004bb00.IIJ.Net (58.138.88.113) [AS2497] 314.642 ms 314.728 ms 307.116 ms 13 osk008agr02.IIJ.Net (210.130.142.26) [AS2497] 312.090 ms 312.277 ms 311.955 ms 14 www.iij.ad.jp (202.232.2.180) [AS2497] 310.908 ms 310.843 ms 311.026 ms
統計情報の取得
通信衛星を使ったインターネット接続では通信に使っている電波が雨などの影響で切れるといった話があります。Starlinkでは衛星とのリンクが切れた時間などの情報も収集しています。収集した情報はStarlinkのスマートフォンアプリ経由で取得できるようになっています。またDishのIPアドレス(192.168.100.1)にブラウザをつかってアクセスする事でも同様の画面が確認できます。
これをみていると短い停止はわりとよくあります。理由のところが3種類に分類されています。
1. NO SIGNAL RECEIVED (電波がこない?)
2. NETWORK ISSUE (衛星の切り替え?)
3.POSSIBLY OBSTRUCTED (障害物検出?)
この瞬断が致命的かといえばそんな事はありません、十分運用で吸収可能です。
最後に
衛星コンステレーションでは軌道上の衛星が増えることで全体で使える通信帯域も大きくなっていきます。SpaceXは毎週のようにロケットを打ち上げ55台とかの単位でStarlink衛星を投入しています。この勢いに追いつける事業者はちょっと思い浮かびません。2023年はスマートフォンとの直接通信をサポートし、性能も大幅に強化された新しい衛星が打ち上げられると聞いています。また地上局を介さず衛星同士をレーザーリンクで繋ぐといったこともするようです。これだけのものをスマートフォンぐらいの値段の機材と携帯キャリアよりは高いですが変な縛りとかもない通信費で使えるのですから触ってみると面白いのではないでしょうか?
追記
IPv6について
補足を書いている時点(12/5日)の時点でIPv6のサポートが世界各国で始まっている事がわかりました。日本とドイツはまだでしたが、USでは使えるようになっていました。USでGoogleのIPv6のパブリックDNSサーバにTracerouteしてみるとこんな感じでした(端末のIPアドレスのアドレス部分はマスクしています)
端末に割り当てられたIPアドレスからインターネットに向けて直接通信ができますが、インターネット側からはフィルタされていました。
$ traceroute -I -A 2001:4860:4860::8888 traceroute to 2001:4860:4860::8888 (2001:4860:4860::8888), 30 hops max, 80 byte packets 1 customer.lsancax1.pop.starlinkisp.net (2605:59c8:3178:7200:xxxx:xxxx:xxxx:xxxx) [AS14593] 4.576 ms 5.785 ms 5.890 ms 2 customer.lsancax1.pop.starlinkisp.net (2605:59c8:3100:28ae::1) [AS14593] 42.727 ms 43.138 ms 43.243 ms 3 host.starlinkisp.net (2620:134:b0fe:248::36) [AS14593] 75.535 ms 76.085 ms 76.016 ms 4 host.starlinkisp.net (2620:134:b0ff::21) [AS14593] 75.931 ms 75.857 ms 75.781 ms 5 2001:4860:1:1::25a0 (2001:4860:1:1::25a0) [AS15169] 75.697 ms 75.621 ms * 6 2607:f8b0:80ef::1 (2607:f8b0:80ef::1) [AS15169] 105.045 ms 105.957 ms 68.472 ms 7 dns.google (2001:4860:4860::8888) [AS15169] 66.016 ms 66.674 ms 67.210 ms
アプリの日本語化
Starlinkアプリが日本語化されました(12/6日に確認)。停止理由が日本語になるだけで少しわかった気がしますね。停止がなければ「この調子でかんばれ」と出ます。
価格改定
12月10日に新価格の通知がきました(11,100円)、1200円の値下げですね。一方で通信内容に関しては公正利用ポリシーが追加されて若干仕様も変わっているので、このあたりのバランスもあるかもしれません。いずれにせよ日々変化していきますので気づいたら更新するつもりです。
Twitterフォロー&条件付きツイートで、「IoT米」と「バリーくんストラップ」と「バリーくんシール」のセットを抽選でプレゼント!
応募期間は2022/12/01~2022/12/31まで。詳細はこちらをご覧ください。
今すぐツイートするならこちら→ フォローもお忘れなく!