CyberHunter
// Databases & caches

Port 9306: Sphinx search server (MySQL listener)

Port 9306 is assigned by IANA to sphinxql (Sphinx search server (MySQL listener)).

9306

How sphinxql works

Databases & caches
app:9306sphinxql app:9306sphinxql

The 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)
01 Security

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:

  • 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.
02 Registry

IANA registry entries for port 9306

ServicePortTransportDescriptionReferenceUpdated
sphinxql 9306 TCP Sphinx search server (MySQL listener) - 2009-10-20
-9306-Reserved--

// source: IANA service name and port number registry

03 Check it

Which program uses port 9306, and is it reachable?

Linux

sudo ss -ltnup 'sport = :9306'      # process listening on 9306
sudo lsof -nP -i :9306

macOS

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
04 FAQ
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.

05 Related