Velocity
Velocity는 마인크래프트 자바 에디션용 프록시 서버 소프트웨어이다. PaperMC 프로젝트에서 개발하며, 여러 대의 서버를 하나의 접속 주소로 묶어 이용자가 서버 사이를 재접속 없이 이동할 수 있게 한다.[1]
| 호환 정보 | |
|---|---|
| 최신 버전 | docs.papermc.io/velocity 참고 |
| 지원 MC | modern 전달 방식은 1.13 이상 |
| Java | 서버 코어와 동일 계열 |
| 서버 코어 | 하위 서버로 Paper, Purpur, Fabric, Forge 계열 사용 |
| 선행 플러그인 | 없음 |
| 확인일 | 2026-08-06 |
프록시는 그 자체로 월드를 갖지 않는다. 이용자의 연결을 받아 뒤에 있는 실제 서버(하위 서버)로 전달하는 역할만 한다. 따라서 로비, 생존, 창작 서버를 분리해 운영하면서도 이용자에게는 하나의 서버처럼 보이게 할 수 있다.
BungeeCord와의 관계
BungeeCord가 오랫동안 표준으로 쓰였으나, Velocity는 이를 대체할 목적으로 처음부터 새로 작성되었다. Paper 진영이 유지하던 BungeeCord 포크인 Waterfall은 개발이 종료되었으므로, 새로 구성하는 서버는 Velocity를 선택하는 것이 일반적이다.
이용자 정보 전달 방식
프록시 구성에서 가장 중요하고, 가장 자주 잘못 설정되는 부분이다. 하위 서버는 접속자의 실제 IP와 계정 정보를 프록시로부터 전달받아야 하는데, 그 방식이 여러 가지다.[2]
| 방식 | 요구 버전 | 보안 | 비고 |
|---|---|---|---|
| modern | 1.13 이상 | 높음 | Velocity 고유 형식. 이진 형식으로 전달하고 MAC 코드로 위조를 어렵게 한다 |
| bungeeguard | 1.7.2 이상 | 중간 | legacy에 비밀 토큰을 더한 방식. BungeeGuard 플러그인 필요 |
| legacy | 1.7.2 이상 | 낮음 | BungeeCord의 IP 전달 방식. 공식 문서가 "근본적으로 안전하지 않다"고 명시한다 |
| none | — | — | 전달하지 않음 |
특별한 이유가 없으면 modern을 사용한다.
modern 방식 설정
Paper 계열 하위 서버에서 다음을 설정한다.[2]
server.properties에서online-mode=falsespigot.yml에서settings.bungeecord: falseconfig/paper-global.yml에서proxies.velocity.enabled: trueproxies.velocity.secret을 Velocity의forwarding.secret파일 내용과 동일하게 지정proxies.velocity.online-mode를 Velocity의online-mode설정과 일치시킨다
Fabric 하위 서버는 FabricProxy-Lite, Forge 계열은 ProxyCompatibleForge 같은 대응 모드가 필요하다.
보안 주의
하위 서버는 online-mode=false로 동작하므로, 외부에서 하위 서버 포트에 직접 접속할 수 없도록 방화벽으로 막아야 한다. 이 조치를 하지 않으면 누구나 임의의 닉네임으로 하위 서버에 직접 들어올 수 있다. legacy 방식을 쓰는 경우에는 더욱 엄격한 차단이 필요하다.[2]
설정이 어긋나면 접속 직후 연결이 끊기거나 인증 오류가 발생한다. Failed to verify username과 Connection reset by peer 문서를 참고한다.