Port 5269 is the XMPP server-to-server (S2S) federation port. When a user on domain-a.com messages [email protected], domain-a's XMPP server connects to domain-b on port 5269. S2S connections use TLS and SASL EXTERNAL (mutual certificate auth) or dialback for identity verification.
Port Number
5269
Protocol
TCP
Service
XMPP Server-to-Server
Range
IANA Registered (1024–49151)
Test s2s TLS to a federated server
openssl s_client -connect remote-server:5269 -starttls xmpp -xmpphost yourdomain.comProsody: list active server-to-server connections
prosodyctl s2sejabberd: count incoming federation connections
ejabberdctl incoming_s2s_numberCheck DNS SRV record for XMPP federation (how other servers find you)
dig SRV _xmpp-server._tcp.domain.comdig _xmpp-server._tcp.example.com SRV
prosodyctl s2s
ejabberdctl incoming-s2s-numberXMPP federation (s2s on port 5269) was inspired by email's federated model – any server can talk to any other server, enabling user@serverA to message user@serverB. This was revolutionary in 1999 when every IM protocol (AIM, ICQ, MSN) was proprietary and siloed. Google Talk's federation (2005-2014) was the high point. Most large deployments (WhatsApp, Zoom) abandoned federation for control. The protocol remains relevant for decentralized/privacy-focused communities.
Should I enable XMPP federation for my organization?
Usually no for enterprise deployments. Federation adds: spam from external servers, complexity of certificate management for s2s TLS, compliance risks (messages leaving your server to unknown destinations), and a larger attack surface. Enable only if: you need to communicate with specific partner organizations via XMPP, or you're running a public community server where openness is a feature.