0%

公開用のネットワークを持つために VPS を利用するとどの VPS プロバイダが快適なのか

きっかけ

今の自宅の回線がマンション共用の物なので、ルーターがいじれません。
ルーターがいじれないという事はインターネットからのアクセスのポートマッピング(ポート開放)ができないという事です。
ただ、回線の速度や安定感はあるので追加で回線を契約するほどのコストをかけたくないですし、
今までは宅内サーバーをインターネットに公開するために ngrok (HTTPやTCP) や localtonet (UDP) を利用して公開していましたが、
localtonet は 日本サーバーが無いために ping 値が高くなる等、歯がゆい状況でした。

そこで他に方法ないかなと探していたら見つけました。
インターネットからのアクセスを受けた マシン(VPS) から tailscale ネットワーク内のマシンにポートフォワーディングして、
VPS のマシンが実質ルーター代わりになるという方法

例えば yayoi_8128 さんのこんな方法

ポートフォワーディングについては、uredir を使わずに nginx や iptables でフォワーディングの設定をする、でもよかったんですが、以下の理由で uredir を採用してます。

  • uredir のコマンドが覚えやすかった (uredir :8211 フォワーディング先IP:8211)、redir と同じ
  • iptables のコマンドを覚えるのがむずかしかった
  • nginx を使用してフォワーディングさせて比較しても体感できる差がなかった
1
2
2025/05/27 追記
uredir が arm 非対応なため、ラズパイ等の SBC を活用し始めた段階でまた結局 iptables を使う必要が出てきました。

各 VPSで パルワールドサーバーの UDP フォワーディング を試した結果、安定性や速度が異なったので感想とともに記録を残します。

VPS マシン側の構築

OS: ubuntu 22.04 server

  1. tailscale をインストール
1
2
curl -fsSL https://tailscale.com/install.sh | sh
sudo tailscale up
  1. VPS 管理コンソールにて ポート 8211 (palworld server) の inbound を許可

  2. uredir や redir 等で、tailscale 内のマシンにフォワーディングする様設定

UDP

1
uredir :8211 サーバーマシンのtailscale内IP:8211

TCP

1
redir :25565 サーバーマシンのtailscale内IP:25565

2024/05/12 追記
 VPS マシンの exitnode の有効化とその直後の IP フォワーディング許可設定は不要だったので削除しました。

サーバーマシン側の構築

  1. tailscale をインストール
1
2
curl -fsSL https://tailscale.com/install.sh | sh
sudo tailscale up
  1. サーバーを起動

注意点

その時たまたま VPS プロバイダ側で障害があったとか、一時的な問題が起きていた可能性もあるのであくまで参考程度にしてください。

条件もきっちり揃えられていません。

各 VPS で試してみた

Azure VM

テストに利用したスペック

  • コア数とメモリ: 1コア1GB
  • ネットワーク: 100Mbps
  • 金額: 1271円/月 以上

image

速度

速度は出ているけど、レイテンシの値が高い。
何故かコロンビアやインドのサーバーを利用してました。

image

念のため別のサイトでも試してみる。

image

Ping も Jitter も良好

パルワールドを遊んでみる

ロードがなかなか終わらない・・・

image

10分程度待てば接続はされた。
とはいえ建築物の表示にもかなりの時間がかかるため遊ぶのはきびしそう

image

image

その他気になった事

tailscale up したときに見覚えのないログが出た、何か改善の余地あり?

Warning: UDP GRO forwarding is suboptimally configured on eth0, UDP forwarding throughput capability will increase with a configuration change.

この方法で最適化されるらしいですが、残念ながら体感できず。。。

1
2
NETDEV=$(ip route show 0/0 | cut -f5 -d' ')
sudo ethtool -K $NETDEV rx-udp-gro-forwarding on rx-gro-list off

サーバーがマインクラフトだとしてもサーバーに繋がるまでに時間がかかりました。なんでだろう

Sakura VPS

テストに利用したスペック

  • コア数とメモリ: 2コア1GB
  • ネットワーク: 100Mbps
  • 金額: 990円/月

image

速度

image

パルワールドを遊んでみる

tailscale ネットワークだけで接続するのと体感は変わらず快適

image

WebArena Indigo

テストに利用したスペック

  • コア数とメモリ: 1コア1GB
  • ネットワーク: 100Mbps
  • 金額: 449円/月

image

安くてよさそう

速度

ちょっと遅いかな

image

パルワールドを遊んでみる

なんだかパケロスが激しい

接続してから数十秒の間、建築物のオブジェクトが読み込まれず、これで遊ぶのは厳しそう、と感じました。

image

Conoha VPS

テストに利用したスペック

  • コア数とメモリ: 2コア1GB
  • ネットワーク: 100Mbps(インターネット)
  • 金額: 1064円/月(時間課金)

image

速度

image

パルワールドを遊んでみる

ロード時間がそこそこ長くかかった

建築物等がなかなか読み込まれず、表示されるまでに5分くらいかかった

Azure VM を少しマシにした様なレベルで、これで遊ぶのは厳しい

image

AWS Lightsail

テストに利用したスペック

  • コア数とメモリ: 2コア1GB
  • ネットワーク: 1Gbps?
  • 金額: $5/月

image

速度

シアトル経由になってしまった
image

別のサイトで測るとジッターもpingも良好
image

パルワールドを遊んでみる

体感は Sakura と変わらない
image

その他

採用されたのは・・・

さくら VPS でした。安定感がどエライです。
LIghtsail も快適だったので、こっちへの乗り換えもアリ

なんで安定感に差がでるのか

わからないです。知ってる人いたら教えてほしいです。

他の VPS について

他に試したい VPS もいくつかあるので試したら追記していきます。