コミュニティソリューション

CasaOSのPalworldサーバーを安全にインターネットへ公開する

A 2024 community tutorial showed how to make a Palworld server on ZimaBoard or ZimaBlade reachable from the internet.

CasaOSで動作しているPalworld専用サーバーをインターネットに公開するには、サーバーが実際に待ち受けているUDPポートへのインバウンド経路が必要です。ゲームサーバーのコンテナをインストールするだけでは不十分です。 2024年のフォーラム投稿では、動画とサードパーティ製のCasaOSアプリストアが紹介されていましたが、現在のPalworldサーバーのドキュメントでは、ネットワーク要件がより明確に説明されています。

Palworld専用サーバーのデフォルトの待ち受けポートはUDP 8211で、変更も可能です。サーバーが実際に使用するポートだけを公開し、ゲームサーバーと同時にCasaOSやDockerの管理インターフェースを公開しないでください。

まずLAN上でPalworldコンテナが動作することを確認する

ルーターの設定を変更する前に、サーバーが起動すること、セーブデータの保存先が永続化されていること、同じLAN上のクライアントから、設定したゲームポートを使ってZimaBoard/ZimaBladeのIPアドレスに接続できることを確認してください。

公式のPalworldサーバー要件では、デフォルトのネットワークポートとしてUDP 8211が記載されており、インターネット上で直接ホスティングするにはルーターのポート転送が必要とされています。

Dockerとルーターで同じUDPポートを指定する

Palworldコンテナが8211/UDPで待ち受ける場合、Dockerはそのポートを公開し、ルーターは同じ外部UDPポートをZimaホストへ転送する必要があります。-port=で待ち受けポートを変更する場合は、3つすべての層を更新してください。

現在のPalworldサーバー引数では、待ち受けポートとコミュニティサーバーのパブリックポート情報も区別されています。

CGNATではポート転送ができない場合がある

ルーターのWAN側IPv4アドレスが真のパブリックアドレスでない場合、通常のポート転送では自宅ネットワークに到達できないことがあります。その場合は、ISPのパブリックIPオプション、対応していればIPv6、またはゲームトラフィック向けに設計されたリレー、VPN、トンネルソリューションを利用してください。

DDNSでCGNATが解決すると思い込まないでください。DDNSは名前をアドレスに紐付けるだけです。

NASのダッシュボードを公開しない

必要なPalworldサービスのポートだけを公開してください。CasaOS/ZimaOSの管理パネル、SSH、Docker管理機能は、LANアクセス、VPN、または別の認証済みリモートアクセス層の内側に保護してください。

このゲームサーバーをプライベートなNASデータと同じホストで運用する場合は、ホームサーバーのファイアウォールガイドが役立ちます。

まとめ

2024年のチュートリアルが目指していた方向性は今も有効ですが、現在のPalworldのネットワークルールを使用してください。まずサーバーをローカルで動作させ、Dockerとルーターを通じて正確なUDP待ち受けポートを公開し、パブリックなインバウンド経路があることを確認したうえで、NASの管理領域ではなくゲームサービスだけを公開しましょう。