Running Multiple DayZ Servers on One Machine
Host two or more DayZ server instances on a single machine by assigning unique ports and profile directories to each instance.
Overview
Running multiple DayZ server instances on one machine requires each instance to use a unique set of ports and a separate server profile directory. Port conflicts are the most common failure mode. This guide covers the port layout, configuration changes, and Pterodactyl/WISP setup for multi-instance deployments.
Port Layout
DayZ uses three ports per instance:
| Port Type | Instance 1 | Instance 2 | Instance 3 |
|---|---|---|---|
| Game (UDP) | 27015 | 27115 | 27215 |
| Query (UDP) | 27016 | 27116 | 27216 |
| RCON (UDP) | 28015 | 28115 | 28215 |
The convention is to offset by 100 per instance. You can use any available ports — the key is that no two instances share a port.
All DayZ traffic is UDP. Ensure UDP is specified when opening firewall rules, not TCP.
serverDZ.cfg Per Instance
Each instance needs its own serverDZ.cfg with matching port values:
Instance 1 (serverDZ_1.cfg):
hostname = "My DayZ Server #1";
port = 27015;
steamport = 27016;
rconPort = 28015;
rconPassword = "instance1password";
Instance 2 (serverDZ_2.cfg):
hostname = "My DayZ Server #2";
port = 27115;
steamport = 27116;
rconPort = 28115;
rconPassword = "instance2password";
Startup Parameters Per Instance
Each instance must specify its own config file and profile directory:
Instance 1:
-config=serverDZ_1.cfg -profiles=server_profile_1 -port=27015
Instance 2:
-config=serverDZ_2.cfg -profiles=server_profile_2 -port=27115
The -profiles= flag is critical. If two instances share a profile directory, they will read and write the same log files, storage, and BattlEye configuration simultaneously, causing corruption.
Profile Directory Structure
Each instance should have its own profile directory:
/home/container/
server_profile_1/
logs/
storage/
BattlEye/
server_profile_2/
logs/
storage/
BattlEye/
Pterodactyl / WISP Setup
In WISP/Pterodactyl, each server instance is a separate server panel entry with its own allocated ports. When creating the second server:
- Allocate the instance 2 port set (27115, 27116, 28115) to the server
- Set the startup parameter for game port to
27115 - Set the config file parameter to
serverDZ_2.cfg - Set the profile directory parameter to
server_profile_2
The panel manages each instance as an independent process with its own resource limits. Set CPU and RAM limits per instance — DayZ uses 2–4 GB RAM per instance under normal load.
Shared vs. Separate Game Files
Both instances can share the same DayZ server binary and mod folders:
/home/container/
DayZServer ← Shared executable
@CF/ ← Shared mod (read-only at runtime)
@Namalsk/ ← Shared mod
serverDZ_1.cfg
serverDZ_2.cfg
server_profile_1/
server_profile_2/
DayZ server binary and mods are read-only at runtime — sharing them is safe. Only the profile directories and config files must be separate.
Verifying Port Availability
Before starting a new instance, verify the ports are free:
nmap -sU -p 27115,27116,28115 127.0.0.1
A result of open|filtered (no service responding) means the port is available. open with a service means something else is already using it.
Firewall Rules
Open all port sets for all instances:
# Instance 1
ufw allow 27015/udp
ufw allow 27016/udp
ufw allow 28015/udp
# Instance 2
ufw allow 27115/udp
ufw allow 27116/udp
ufw allow 28115/udp
RCON for Multiple Instances
Each instance has its own RCON port and password. Connect your RCON client to the specific instance's RCON port — commands sent to instance 1's RCON port only affect instance 1.
Resource Planning
Each DayZ instance competes for the same CPU and RAM. Recommended minimums per instance:
- 2–4 CPU cores (set via
-cpuCount) - 4 GB RAM
- 100 Mbps uplink (shared between instances)
Running two 60-player instances on an 8-core machine is feasible. Running three or more on the same hardware requires careful resource allocation and lower player caps per instance.