3
5

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 3 years have passed since last update.

Minecraftサーバーを作ってポート開放・転送設定なしでマルチプレイする方法(Minecraft + remote.it)

Last updated at Posted at 2021-10-04

#はじめに
過去にremote.itを使ったAWSサーバーへの接続方法をご紹介しましたが、今回はもう少しライトで具体的な用途として、Minecraftサーバーへ接続する方法をご紹介します。
通常、Minecraftサーバーを自分でホストして友人とマルチプレイするためには、ポート開放やポート転送、ファイアウォールの設定を行なってインターネットからの接続をオープンにする必要がありますが、remote.itを使うことでそれらが不要になります。

#概要
Minecraftサーバーをインストールする環境は、エンジニアとしてはLinuxを選択したいところではありますが、今回は広く一般にお試しいただけるユースケースとして、Windowsを使いたいと思います。
また、Minecraftサーバーのインストール手順にも触れますが、最適化や自動起動化などは考慮しておりませんのであらかじめご了承ください。今回紹介する手順では以下のような環境としています。

###サーバー側環境

  • Windows 10
  • JDK 17
  • Minecraft Java Edition サーバー
  • Minecraft Java Edition クライアント
  • remote.it Desktop Application 3.2.2

###クライアント側環境 (共有先の友人側想定)

  • macOS 11.6
  • Minecraft Java Edition クライアント
  • remote.it Desktop Application 3.2.2

#Minecraftサーバーを立てる
まず、Windows 10上にMinecraftサーバーを立てて、プレイできるところまで確認します。Minecraftのクライアントライセンスは持っている前提として、手順では割愛します。

###1. JDKインストール
Java実行環境としてJDKをインストールします。現時点(2021.10.1)の最新版はJDK 17です。下記のダウンロードサイトからWindows版をダウンロードしてインストールしてください。(x64 Installer か x64 MSI Installer が良いと思います。)なお、MinecraftサーバーはJRE 8では動作しませんのでご注意ください。

###2. Minecraftサーバーのインストールと実行
次にMinecraftサーバーをインストールします。以下のダウンロードサイトからMinecraft Java Edition サーバーの jar ファイル「minecraft_server.X.XX.X.jar」をダウンロードします。

キャプチャ003.PNG

ダウンロードした「minecraft_server.X.XX.X.jar」ファイルを適当なフォルダに保存し、ファイルの名前を「minecraft_server.jar」に変更します。(私はデスクトップに「Minecraft」というフォルダを作ってそこにコピーしました。)
キャプチャ031.PNG

次にMinecraftサーバーを起動するためのバッチファイルを作ります。
jarファイルを保存したフォルダ内にメモ帳で新しいテキストファイルを作成します。ファイル名は任意の内容で問題ありません。(例:「マイクラ起動.txt」など。私は「launch-minecraft.txt」としました。)
キャプチャ006.PNG

作成したテキストファイルを開いて、以下の内容をコピーして貼り付け、保存します。(真ん中の行は、Minecraftサーバーのダウンロードページに記載されていた内容を使用し、jarファイル名の箇所だけを変更しています。)

launch-minecraft.txt
@echo off
java -Xmx1024M -Xms1024M -jar minecraft_server.jar nogui
pause

こんな感じです。
キャプチャ007.PNG

保存したらファイルの拡張子を「.txt」から「.bat」に変更します。

キャプチャ008.PNG

拡張子を変更したbatファイルをダブルクリックして実行します。
コマンドプロンプトが開いて、以下のように "You need agree to the EULA in order to run the server. Go to eula.txt for more info." というメッセージで途中で止まることを確認したら、コマンドプロンプトを閉じます。
キャプチャ009.PNG

batファイルを実行したフォルダに戻ると、いくつか新しいファイルが作られていることが確認できます。その中の「eula.txt」を開いて、eula=false の部分を eula=true に書き換えて保存します。

eula.txt
:
eula=true

キャプチャ010.PNG
キャプチャ012.PNG

もう一度 batファイルをダブルクリックして実行します。コマンドプロンプトが開き、今度は初期化の処理が走ります。しばらく待って、Done のメッセージが表示されれば、Minecraftサーバーの起動は完了です。(終了する場合は、stop とタイプして実行してください。)
キャプチャ013のコピー.PNG

###3. Minecraftクライアントからの接続確認

無事サーバーが起動したら、まずは自分自身でプレイできるか確認してみます。
Minecraft Java Editionのクライアントソフトを起動し、「Multiplayer(マルチプレイ)」をクリックします。
キャプチャ014.PNG

「Add Server(サーバーを追加)」ボタンをクリックします。
キャプチャ015.PNG

「Server Address(サーバーアドレス)」の欄に localhost と入力して「Done(完了)」ボタンをクリックします。
キャプチャ016.PNG

追加したサーバがオンラインになっていることを確認してクリックします。
キャプチャ017.PNG

無事に世界へ降り立つことができました。
スクリーンショット 2021-09-30 20.51.35.png

これでMinecraftサーバーの準備は完了です。
次に、remote.itを使って友人にサーバーを共有してみます。

#remote.itを使ってMinecraftサーバーを共有する

remote.itを使ってMinecraftサーバーをリモート接続のターゲットとして登録し、友人と共有します。
なお、共有する側とされる側の双方がremote.itアカウントを持っている必要があります。まだremote.itアカウントを持っていない場合は、ホームページの「Get Started」から無料でサインアップできます。

###1. remote.itデスクトップアプリのインストールとターゲット登録
今回はremote.itデスクトップアプリを使います。
まず、下記のremote.itのダウンロードサイトの「Desktop Applications」から、ソフトウェアをダウンロードします。

ダウンロードしたインストーラーを実行してインストールします。
キャプチャ019.PNG
キャプチャ020.PNG

インストール完了後、アプリが起動してサインインを求められますので、remote.itアカウントでサインインします。
まだremote.itアカウントを持っていない場合は、「SIGN IN」ボタンの下の "Sign up for free" からアカウントを作成してください。
キャプチャ021.PNG

サインイン後、画面上部の「Set up this device」をクリックします。
キャプチャ022.PNG

このPCをremote.itによる接続先として登録するための画面が表示され、登録可能なサービスのリストが表示されます。
"NAME"のフィールドに任意の登録名を入力し、"Services"の下の"Minecraft Server"のチェックだけ残して「REGISTER」ボタンをクリックします。
キャプチャ023.PNG

登録が完了すると、"Device registered successfully!"というメッセージが表示されます。
中央に"Device offline"と表示されている場合は、少し間を置いて右上にある更新アイコンをクリックしてください。
キャプチャ025.PNG

次に、中央のサービスから "Minecraft Server" をクリックして、右の「Edit」をクリックします。続けて「SAVE」ボタンの上の「CONNECTION DEFAULTS」をクリックして展開します。
キャプチャ027.PNG

"DEFAULT CONNECTION PORT"フィールドに 25565 と入力して「SAVE」ボタンをクリックして設定を保存します。
キャプチャ028.PNG

以上でMinecraftサーバーをremote.itを使って共有する準備の完了です。

###2. Minecraftサーバーを他者のremote.itアカウントと共有する

続けて、中央の"Minecraft Server"をクリックした状態で、右上の"Share"アイコン(人型のアイコン)をクリックします。
キャプチャ029.PNG

右上のフィールドに、共有したいユーザーのremote.itアカウント(メールアドレス)を入力し、「SAVE」ボタンをクリックします。
キャプチャ030.PNG

以上で共有完了です。
これで、共有されたユーザーは、Minecraft Serverに接続することができます。(ポート開放やポート転送は不要です!)

#remote.itを使って共有されたMinecraftサーバーへ接続する
では、実際に共有されたMinecraftサーバーへ接続してみます。
ここからの手順は、共有されたユーザー側で行う内容です。サーバー側との対比として、Mac版のクライアント画面で説明します。

サーバー側と同様に、下記のremote.itのダウンロードサイトの「Desktop Applications」から、ソフトウェアをダウンロードしてインストールします。

アプリケーションをインストールしてサインイン(共有されたremote.itアカウントで)すると、先ほど共有されたMinecraftサーバーのデバイス名がリストに表示されていますので、これをクリックします。
スクリーンショット 2021-09-30 21.14.18.png

中央の "Minecraft Server" をクリックして、右下の「ADD TO NETWORK」ボタンをクリックします。
スクリーンショット 2021-09-30 21.14.40.png

ボタンのラベルが「REMOVE FROM NETWORK」に変わったら準備完了です。
スクリーンショット 2021-09-30 21.23.04.png

Minecraftクライアントを起動し、「Multiplayer(マルチプレイ)」ボタンをクリックします。
スクリーンショット 2021-09-30 21.18.44.png

「Add Server(サーバーを追加)」ボタンをクリックします。
スクリーンショット 2021-09-30 21.19.02.png

「Server Address(サーバーアドレス)」の欄に localhost と入力して「Done(完了)」ボタンをクリックします。
スクリーンショット 2021-09-30 21.19.13.png

共有されたMinecraftサーバーへ接続が開始されます。初回は接続されるまでに少し時間がかかるため、オンラインにならない場合は「更新」ボタンをクリックしてください。
スクリーンショット 2021-10-04 16.44.15.png
スクリーンショット 2021-10-04 16.44.27.png

無事に接続できました。これで一緒にプレイできます。
スクリーンショット 2021-09-30 21.20.11.png

#まとめ
今回ご紹介した手順のとおり、ルーター等のネットワーク機器でインターネット経由の接続を受け入れるためのポート解放やポート転送の設定をしたり、ファイアウォールに穴を開けるなどの設定をすることなく、簡単にMinecraftサーバーへの接続を(ネットワーク的には、TCP25565ポートへの通信だけが、指定したユーザだけに。)許可することができます。インターネットに対してMinecraftサーバーがオープンにならないため、不正アクセスされる恐れもありません。

今回はWindowsのローカルマシン上で動作するMinecraftサーバーの例を紹介しましたが、一般的なTCP/IPの作法に則ったアプリ(IPアドレスとポート番号で会話できるアプリ)であれば、プロトコルやターゲットのロケーション(回線の種別)は問いません。アイデア次第で様々なアプリケーションの通信に使うことができます。ぜひ色々と試してみていただければと思います。

3
5
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
3
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?