콘텐츠로 이동

개요

Minecraft에 새로 내장된 서버 이동 방식이다.

Transfer는 Minecraft 1.20.5에서 추가된, BungeeCord나 Velocity와는 다른 서버 이동 방식이다.

중심 역할을 하던 프록시 서버를 없애고, 간단하면서도 쓸 만한 서버 이동 방법을 제공한다. 구축 방법은 여기를 보자.

명령어 형식은 다음과 같다(소괄호는 생략 가능).

/transfer <서버 주소> (포트) (플레이어)

  • 기능은 많이 필요 없고, 여러 서버를 간단히 묶고 싶은 사람
  • 서버들이 서로 다른 네트워크에 있어서 BungeeCord나 Velocity를 쓰면 핑 전사가 되는 지연이 커지는 서버
  • 이 기능을 지원하는 플러그인이 적어도 상관없거나, 이미 대책이 있는 서버
  • 보안이 별로 중요하지 않은 서버

기존 방식과 비교한 Transfer의 단점

섹션 제목: “기존 방식과 비교한 Transfer의 단점”

기존 플러그인으로 해결할 수 있는 문제

섹션 제목: “기존 플러그인으로 해결할 수 있는 문제”

OnlyTransfer 플러그인으로 해결할 수 있는 문제:

  • 오프라인 모드에서 서버 주소가 유출되어 신원을 사칭당하는 문제
  • 오프라인 모드에서 플레이어가 Transfer를 지원하는 아무 서버로나 이동할 수 있는 문제

기존 플러그인이나 다른 방법으로도 해결할 수 없는 문제

섹션 제목: “기존 플러그인이나 다른 방법으로도 해결할 수 없는 문제”
  • 플러그인 정보가 동기화되지 않는다(예: SkinsRestorer의 플레이어 스킨, AuthMe의 로그인 상태)
  • 데이터팩과 리소스팩을 한꺼번에 맞추기 어렵다
  • 모드 서버 지원 여부가 불확실하다. 지원하더라도 모드 쪽이 지원하지 않을 수 있다
  • 커뮤니티 지원이 부족하다(쓰는 사람이 너무 적다)
  • 지원 플러그인이 적고 대응도 어렵다(주요 플러그인 플랫폼이 Transfer 명령어용 API를 제공하지 않는다)

Velocity는 다른 서버에서 Transfer로 Velocity로 넘어오는 것을 지원한다. velocity.toml에서 accepts-transfers = false를 찾아 false를 true로 바꾸면 된다.

Velocity 아래의 1.20.5 이상 백엔드 서버에서 다른 서버로 이동하는 것도 가능하다.

테스트해 보니 NeoForge는 Transfer 지원이 좋지 않았다. 증상은 다음과 같다.

  • 모드가 없는 NeoForge 클라이언트가 바닐라 서버에서 Transfer로 이동하지 못한다.
  • 이동에 실패해도 서버에는 쓸 만한 로그가 전혀 남지 않는다.

지금까지 확인된 바로는 Linux 환경의 PC에서만 발생하며, 멀티플레이 서버 목록에 IPv4 주소 서버와 IPv6 주소 서버가 함께 있을 때 잘 일어난다.

보통은 NeoForge가 이동을 망칠까 걱정할 필요는 없다.

아래는 사고 현장이다.

이미지