Atasi “FAILED TO BIND TO PORT” pada pelayan Minecraft
Ralat ini bermaksud pelayan cuba membuka portnya tetapi tidak berjaya. Sama ada program lain sudah menggunakan port itu, atau alamat dalam server.properties bukan milik mesin anda. Pelayan dimatikan, dan pembetulannya cepat sebaik sahaja anda tahu kes yang mana satu.
Apa yang dinyatakan mesej itu
Log memaparkan baris seperti ini:
**** FAILED TO BIND TO PORT! The exception was: java.net.BindException: Address already in use Perhaps a server is already running on that port?
“Address already in use” bermaksud konflik port. “Cannot assign requested address” bermaksud tetapan server-ip bukan alamat mesin ini.
1. Adakah pelayan lain sudah berjalan?
Punca paling lazim ialah salinan pelayan yang tidak pernah berhenti: tetingkap yang ditutup, ranap, sesi screen atau tmux di latar belakang, atau perkhidmatan yang memulakannya semula. Cari apa yang menggunakan port itu. Pada Linux:
sudo ss -tlnp | grep 25565
Pada Windows:
netstat -ano | findstr :25565
Lajur terakhir pada Windows ialah ID proses, yang boleh anda cari dalam Task Manager. Pada Linux, proses dinamakan dalam output. Jika ia pelayan lama anda, hentikannya dengan betul, dengan stop dalam konsolnya atau systemctl stop untuk perkhidmatan, kemudian mulakan yang baharu. Jika ia terus kembali, semak screen -ls, tmux ls dan senarai perkhidmatan anda.
2. Biarkan server-ip kosong
Dalam server.properties, server-ip biasanya mesti kosong, supaya pelayan mendengar pada setiap alamat:
server-ip=
Jika anda memasukkan IP yang tiada pada antara muka rangkaian mesin, pelayan gagal dengan ralat ini. Itu termasuk IP awam yang dipetakan hos anda kepada mesin tanpa ditetapkan pada pelayan itu sendiri.
3. Beri setiap pelayan port sendiri
Dua pelayan pada satu mesin tidak boleh berkongsi port. Tukar server-port dalam server.properties pelayan kedua, contohnya kepada 25566. Pemain kemudian menyertai dengan address:25566, atau anda boleh menambah rekod SRV supaya mereka tidak perlu menulis port; lihat cara membetulkan ralat menyertai.
4. Gunakan port melebihi 1024
Pada Linux, hanya root boleh membuka port di bawah 1024. Kekalkan 25565 atau port tinggi lain daripada menjalankan pelayan sebagai root.
5. Panel permainan dan proksi
Panel permainan memberi setiap pelayan port sendiri. Biarkan server-port dan gunakan port yang ditetapkan panel, kerana panel boleh menulis ganti suntingan anda semasa bermula. Pada rangkaian Velocity atau BungeeCord, proksi mengambil port awam, biasanya 25565, dan setiap pelayan permainan di belakangnya memerlukan port sendiri.
6. Permulaan semula yang gagal sekali-sekala
Jika permulaan semula berjadual kadangkala gagal dengan ralat ini, proses lama belum melepaskan port. Suruh skrip permulaan semula anda menunggu sehingga proses lama tamat, kemudian berhenti seketika beberapa saat sebelum memulakan yang baharu.
Pastikan ia berfungsi
Selepas pelayan memaparkan “Done”, uji port dari mesin lain:
nc -vz your-server-ip 25565
Jika pemain masih tidak dapat menyertai, semak firewall seperti diterangkan dalam panduan ralat menyertai.
Hos pelayan Minecraft anda di Singapura
Ping rendah untuk pemain di India, Malaysia dan Indonesia, pada teras AMD EPYC yang pantas dengan NVMe dan perlindungan DDoS.
