First join hostname attribution
CoreHow a player is bound to the address they first joined through, and how to point new addresses at your proxy.
#How it works
When a player types an address into their client, that string travels in the handshake packet before anything else. The Velocity connector reads it and sends it with the session as the hostname field.
The first session we ever record for a player writes their acquisition source. Later sessions do not change it.
#DNS for a new address
To give a creator or a server list its own address, point a new name at the same proxy. Nothing changes on the proxy itself.
textdns-records.txt
# One CNAME per campaign, all pointing at the proxy
tiktok.myserver.net. 300 IN CNAME play.myserver.net.
partner.myserver.net. 300 IN CNAME play.myserver.net.
youtube.myserver.net. 300 IN CNAME play.myserver.net.
# Or a wildcard A record at the proxy address
*.myserver.net. 300 IN A 198.51.100.1#The rules
- The source is written once, on the first session, and is never rewritten.
- A session with no hostname is recorded, and the player lands in an explicit unattributed group rather than being guessed at.
- Hostnames are lowercased and length checked before they are stored.
- A backend server behind a proxy sees no hostname, which is why the proxy connector owns this.