DocumentationСерверPlasmoVoice

PlasmoVoice

Voice chat proxying

PlasmoVoice is a voice chat plugin for Minecraft that operates over UDP. Without proxying its traffic, players connect to the voice server directly — which means your real IP leaks through the voice chat, even if the main server is behind MineGuard.

Without setting up proxying, PlasmoVoice exposes your real IP to every player. This renders all other protection meaningless.

How it works

MineGuard proxies PlasmoVoice UDP traffic through its filter. You don't need to rent a separate VPS or configure nginx — just enable the feature in the panel and change one config line on the server.

Setup

1

Enable PlasmoVoice in the MineGuard panel

Open network settings → the PlasmoVoice section → enable the toggle. MineGuard will automatically assign a UDP port for voice chat.
2

Set the voice server backend

In the backend field, enter the IP and port of your PlasmoVoice server in ip:port format. Usually this is the same IP as your Minecraft server, and the port is the PlasmoVoice port (which by default matches the game server port).
3

Update the PlasmoVoice config on your server

Open the PlasmoVoice config on your Minecraft server and add a [host.public] section with the IP and port that MineGuard assigned:
plugins/PlasmoVoice/config.toml
[host]
ip = "0.0.0.0"
port = 0  # 0 = use the game server's port

[host.public]
ip = "YOUR_DOMAIN"           # the domain players connect through
port = 28XXX                 # port from the MineGuard panel

The port in [host.public] is the port you see in the MineGuard panel after enabling PlasmoVoice.

4

Restart the server

Restart your Minecraft server for the config changes to take effect.

Verification

After setup, join the server and confirm that voice chat works. In the PlasmoVoice logs you should see the public address pointing to MineGuard, not to your real IP.

Firewall

On your server, close the PlasmoVoice UDP port to everyone except MineGuard's IP addresses. Current IP list: https://mineguard.pro/api/filter-ips

iptables example
# For each IP in the list:
iptables -A INPUT -p udp --dport <PLASMOVOICE_PORT> -s <IP_FROM_LIST> -j ACCEPT

# Block all other UDP connections on this port
iptables -A INPUT -p udp --dport <PLASMOVOICE_PORT> -j DROP
PlasmoVoice is available on the Optimal plan and above.