- Bind the service to localhost or a private network, never to a public address.
- Enable authentication, use per-application accounts and require TLS.
- Watch for exposed Docker ports: publish them on 127.0.0.1 only.
Port 9306: Sphinx search server (MySQL listener)
Port 9306 is assigned by IANA to sphinxql (Sphinx search server (MySQL listener)).
How sphinxql works
Databases & cachesThe application sends a SQL query to the sphinxql server on port 9306, which returns rows from its tables.
- Transport
- TCP
- Exposure risk
- not rated depends on the program listening
- Encryption
- Unknownnot stated by the registry
- IANA status
- Assigned1 registered service
- Range
- Registered (1024-49151)
- Category
- Databases & caches
Is port 9306 dangerous?
We have no specific security note for port 9306. Its risk depends on the program actually listening on it. General advice for databases & caches services:
IANA registry entries for port 9306
| Service | Port | Transport | Description | Reference | Updated |
|---|---|---|---|---|---|
| sphinxql | 9306 | TCP | Sphinx search server (MySQL listener) | - | 2009-10-20 |
| - | 9306 | - | Reserved | - | - |
// source: IANA service name and port number registry
Which program uses port 9306, and is it reachable?
Linux
sudo ss -ltnup 'sport = :9306' # process listening on 9306
sudo lsof -nP -i :9306macOS
sudo lsof -nP -i :9306
Windows (PowerShell)
Get-NetTCPConnection -LocalPort 9306 -State Listen | Select LocalAddress, OwningProcess Get-NetUDPEndpoint -LocalPort 9306 netstat -ano | findstr :9306
From another machine
nmap -p 9306 -sV <host> nc -zv <host> 9306
Block it in the firewall
sudo ufw deny 9306/tcp # Linux (ufw) New-NetFirewallRule -DisplayName "Block 9306" -Direction Inbound -LocalPort 9306 -Protocol TCP -Action Block # Windows
What is port 9306 used for?
Port 9306 is assigned by IANA to sphinxql (Sphinx search server (MySQL listener)).
Is port 9306 TCP or UDP?
Port 9306 is registered for TCP.
Is it safe to open port 9306?
It depends on the program that listens on it. Open it only for a service you know and only to the networks that need it. Bind the service to localhost or a private network, never to a public address.
How do I check if port 9306 is open?
On Linux run "ss -ltnup 'sport = :9306'", on macOS "lsof -nP -i :9306", and on Windows "netstat -ano | findstr :9306" to see the local process. From another machine, "nmap -p 9306 <host>" shows whether it is reachable.