私の所属しているサークル(UniProject)では無料でVMが提供されています。しかし、その現在ではポート開放が可能なのはIPv6しか提供されておらず、IPv4オンリー環境ではアクセスできず、Webサイト等はCloudflare DNSのプロキシを使ってアクセスしています。
マイクラサーバー等を運営するとIPv6だけでは不十分なので、IPv6を使用してアクセスできるようにしてみました。
今回は最近無料版が提供されるようになったXserver VPSを使用しました。
現在UDPには対応していません。
必要な物
- 公開するサーバー
- 今回私はマイクラサーバーを用意しました
- Cloudflare
- ドメイン
- Zero Trustを有効化していること
- IPv4が降ってきているVPS
今回は無料版が提供されているXserver VPSを使用しました。
サーバー側の準備
Cloudflare tunnelに接続する
ダッシュボードから「Zero Trust」→「ネットワーク(networks)」→「Tunnels」を選択すると
こんな画面が表示されると思うので、「トンネルを追加する」を選択します。
すでに追加している場合等は表示が異なると思いますが、その際もトンネルを追加する操作を行ってください。
トンネルの種類を選択する画面になったら「Cloudflared」を選択します。
トンネルの名前は任意で大丈夫です。
「コネクタをインストールして実行する」という画面になったら、サーバー側にそのコマンドを実行します。
OSやアーキテクチャは自身の環境を選択ください。Ubuntuの方はDebianを選択したら大丈夫です。
二つの選択肢がでてきますが、左側を選択したら大丈夫です。
「Connectors」に何か表示されたら成功です。
次の画面でドメイン等の設定があるので、サブドメインとドメインを選択します。
このアドレスからアクセスするので覚えといてください。
公開するポート番号はlocalhost:25565の25565のところを変更したら大丈夫です。
これでサーバー側の設定は完了です。
VPS側の設定
今回は無料版VPSがあるXserve VPSを使用しました。今後IPv6に移行していくらしいので、移行するまでにOCI freeでの記事も作成する予定です。
そのほかのクラウド関係もIPv4が降ってくる間下なら使用可能です。
無料版Xserver VPSは以下のリンクから作成可能です。
バケットフィルターをOFFにするか公開するポートをフィルタールール設定することを忘れずに
cloudflaredをインストール
ここから自分の環境にあったやつをインストールしてください
今回はubuntuを使用します
sudo apt-get update && sudo apt-get upgrade -y
sudo mkdir -p --mode=0755 /usr/share/keyrings
curl -fsSL https://pkg.cloudflare.com/cloudflare-main.gpg | sudo tee /usr/share/keyrings/cloudflare-main.gpg >/dev/null
echo "deb [signed-by=/usr/share/keyrings/cloudflare-main.gpg] https://pkg.cloudflare.com/cloudflared any main" | sudo tee /etc/apt/sources.list.d/cloudflared.list
sudo apt-get update && sudo apt-get install cloudflared
これでインストール完了です。
ポート開放
sudo apt-get install ufw -y
sudo ufw enable
こんな感じの文章が表示されるのでyを選択します。
Command may disrupt existing ssh connections. Proceed with operation (y|n)? y
Firewall is active and enabled on system startup
25565の部分は今回自身が開放するポート番号に変更してください
sudo ufw allow 22
sudo ufw allow 25565
sudo ufw reload
サーバーに接続する
nohup cloudflared access tcp --hostname sub.example.com --url 0.0.0.0:25565 &
sub.example.com
のところは先ほど設定したサブドメインにします。
結果
このように二人でしっかりマインクラフトができてます。(協力:@humaibu_ok)
まとめ
Cloudflareなどで速度に関しては文句はあまりないですね。
マイクラ統合版鯖とか作る際はUDPが使えないのでそれだけ不便だと思いますが、普通のサーバー運営上では、文句なく使用できるのではないでしょうか?
すでにサーバー側で使ってるポートは使用できないので、それだけ考えればエラー等は起こらないと思います。