你可以幫助我們擴充關於該主題的更多資訊。
以下的教學會幫助你使用ngrok搭建一個幾個人玩的臨時或小型伺服器。
緒論
ngrok是一個隧道連接的工具。它可以使得建立一個臨時的小型伺服器變得更加簡單。
ngrok通常用來搭建測試的伺服器,但用來進行多人Minecraft聯機也是可以的。ngrok類似於一個反向代理,基本的原理是:四個「端」:ngrok用戶端、ngrok伺服器端、Minecraft伺服器端、Minecraft用戶端。Minecraft伺服器端透過ngrok用戶端建立一個到ngrok伺服器端的隧道連接。這樣當ngrok伺服器端接收到來自Minecraft用戶端的連接時能透過隧道連接到Minecraft伺服器端。
選擇伺服器
由於ngrok官方伺服器被中國大陸封鎖,所以需要尋找國內可以使用的第三方伺服器。請善用搜尋引擎,目前比較穩定的有phpor伺服器(訪問可能不穩定)等等。
配置ngrok
由於第三方ngrok伺服器通常採用自簽名證書的方式,所以你可能需要下載伺服器提供的ngrok用戶端,而不是官方伺服器端。下載可執行檔案後,應該建立一個組態檔,具體內容取決於你選擇的伺服器。通常情況下它的格式為:
server_addr: "<伺服器>"
trust_host_root_certs: false
當然,一般伺服器會給出推薦組態檔,直接套用即可。
啟動伺服器
和一般ngrok伺服器給出的指令中所述不同,我們需要使用tcp協議,而不是http。首先打開你的Minecraft伺服器端,比如官方minecraft_server_1.x.jar,或Bukkit、Spigot、Cauldron等等,並按照常規方法配置server.properties、地圖等等,或使用Minecraft用戶端打開局域網聯機。
然後,你需要準備一個ngrok啟動腳本。這只是推薦的方法,你也可以從指令提示字元或終端輸入指令來啟動ngrok。
在Windows下,你需要新建一個cmd或bat檔案,放入ngrok可執行檔案相同位置下,鍵入:
@echo off
XXXXXX -config=YYYYYY -proto=tcp ZZZZZ
XXXXXX為你的ngrok可執行檔案名。通常為ngrok.exe,或你下載的可執行檔案名稱。
YYYYYY為你的組態檔名稱。
ZZZZZ為你的Minecraft伺服器端口號(局域網聯機的時候為左下角提示的端口號)。
一個示例:
@echo off
ngrok.exe -config=ngrok.cfg -proto=tcp 25565
在Linux/Mac/Unix下,你需要建立一個sh檔案,放入ngrok可執行檔案相同位置下,鍵入:
!/bin/bash
./XXXXXX -config=YYYYYY -proto=tcp ZZZZZ
XXXXXX為你的ngrok可執行檔案名。通常為ngrok,或你下載的可執行檔案名稱。
YYYYYY為你的組態檔名稱。 ZZZZZ為你的Minecraft伺服器端口號(局域網聯機的時候為左下角提示的端口號)。
一個示例:
@echo off
./ngrok -config=ngrok.cfg -proto=tcp 25565
記著使腳本和可執行檔案可以執行(chmod 744 <腳本名稱> && chmod 744 <可執行檔案名稱>)!
最後,執行你的腳本即可啟動一個隧道,在ngrok窗口內執行Ctrl+C可以關閉ngrok。
ngrok提供的資訊
ngrok啟動後,會顯示一些資訊。通常,對我們有用的為Tunnel Status與Forwarding。
Tunnel Status提示了目前隧道的狀態。Connecting表示正在連接到ngrok伺服器端;reconnecting表示正在重新連接到ngrok伺服器端,如果剛剛打開ngrok,顯示connecting後就提示reconnecting,通常就表示伺服器無法連接了;online即線上,表示隧道成功建立。
Forwarding提示了目前ngrok工作的代理地址。格式通常為:tcp://AAAAAAAAA -> 127.0.0.1:BBBBB
AAAAAAAAA代表ngrok伺服器端分配給你的地址,可以將這個地址分享給你的夥伴,使他們可以透過此地址連接到你的伺服器,方法與連接普通伺服器完全一樣。 BBBBB代表了目前的本機端口號。
警告
由於國內ngrok伺服器由網友搭建,所以請不要濫用它們,不要對伺服器造成過大壓力,不要讓過多玩家進入伺服器,伺服器的卡頓通常與ngrok伺服器端過載導致。
本教學編寫者、貢獻者與ngrok開發者無關,與任何ngrok伺服器無關。
自己搭建ngrok服務
公眾的ngrok伺服器可能會因為使用人數過多而過載,造成遊戲卡頓。如果你有可以端口映射的主機,或者有雲伺服器、VPS,可以考慮自己搭建ngrok服務。
關於如何自己搭建伺服器可以參閱搭建自己的ngrok服務、搭建ngrok服務實現內網貫穿 ,並請善用搜尋引擎。
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||