TLDR reference
Well-known ports
A searchable reference for the network ports you actually meet, each with its service and transport. Type to search by number or service, or filter by purpose. Everything runs in your browser.
45 shown
-
80
TCPHTTP
Unencrypted web traffic. Browsers default here when a URL uses http://.
-
443
TCPHTTPS
Encrypted web traffic over TLS. The default for https:// and most of the modern web.
-
8080
TCPHTTP alternate
A common stand-in for port 80, used by dev servers, proxies, and app servers.
-
8443
TCPHTTPS alternate
A common stand-in for port 443, used by dev servers and admin consoles.
-
25
TCPSMTP
Mail transfer between servers. Often blocked by ISPs to curb spam.
-
587
TCPSMTP submission
The modern port for a mail client to submit outgoing mail, with STARTTLS.
-
465
TCPSMTPS
SMTP wrapped in TLS from the first byte (implicit TLS).
-
110
TCPPOP3
Downloads mail from a server, traditionally deleting it after.
-
995
TCPPOP3S
POP3 over TLS.
-
143
TCPIMAP
Reads mail kept on the server, syncing across devices.
-
993
TCPIMAPS
IMAP over TLS.
-
20
TCPFTP data
The data channel for classic FTP transfers.
-
21
TCPFTP control
The command channel for FTP. Plaintext, so largely replaced by SFTP.
-
22
TCPSSH / SFTP
Encrypted shell access and file transfer. The workhorse admin port.
-
69
UDPTFTP
Trivial FTP with no authentication, used for booting and flashing devices.
-
873
TCPrsync
The rsync daemon for fast file synchronisation.
-
23
TCPTelnet
Plaintext remote terminal. Insecure and superseded by SSH.
-
3389
TCPRDP
Microsoft Remote Desktop for graphical Windows sessions.
-
5900
TCPVNC
Remote desktop sharing; each extra display adds one to the port.
-
53
TCP+UDPDNS
Resolves domain names to IP addresses. UDP for queries, TCP for large transfers.
-
67
UDPDHCP server
Hands out IP addresses to clients joining a network.
-
68
UDPDHCP client
The client side that receives the DHCP lease.
-
123
UDPNTP
Network Time Protocol, keeping clocks synchronised.
-
389
TCPLDAP
Directory lookups for users and groups, as in Active Directory.
-
636
TCPLDAPS
LDAP over TLS.
-
1433
TCPSQL Server
Microsoft SQL Server default port.
-
1521
TCPOracle
Oracle Database default listener port.
-
3306
TCPMySQL / MariaDB
The default port for MySQL and its MariaDB fork.
-
5432
TCPPostgreSQL
PostgreSQL default port.
-
6379
TCPRedis
Redis in-memory data store default port.
-
27017
TCPMongoDB
MongoDB default port.
-
9200
TCPElasticsearch
Elasticsearch HTTP API port.
-
5984
TCPCouchDB
Apache CouchDB HTTP API port.
-
11211
TCP+UDPMemcached
Memcached distributed memory cache.
-
5672
TCPAMQP / RabbitMQ
The AMQP message-broker port used by RabbitMQ.
-
15672
TCPRabbitMQ management
The RabbitMQ web management UI.
-
9092
TCPKafka
Apache Kafka broker default port.
-
1883
TCPMQTT
Lightweight publish/subscribe messaging for IoT.
-
161
UDPSNMP
Polls network devices for monitoring data.
-
162
UDPSNMP trap
Receives unsolicited alerts pushed by SNMP devices.
-
514
UDPsyslog
Collects log messages from network devices and servers.
-
500
UDPIPsec / IKE
Negotiates IPsec VPN tunnels.
-
1194
UDPOpenVPN
OpenVPN default tunnel port.
-
51820
UDPWireGuard
WireGuard VPN default port.
-
3478
UDPSTUN / TURN
Helps WebRTC peers discover their public address and relay media.
No ports match your search.
How it works
A searchable reference for the network ports you actually meet, each mapped to its service, transport, and a one-line note. A port is a number that lets one machine run many services at once, so the operating system knows which program a packet belongs to: web traffic to 443, mail to 587, a Postgres database to 5432. Type to search by number or by service - "5432" or "postgres" both land on the same card - or use the chips to browse just the databases, just the email ports, and so on.
It covers the classic well-known ports below 1024 alongside the commonly used higher ports that developers care about day to day, such as 3306 for MySQL, 6379 for Redis, and 27017 for MongoDB. Each entry notes whether the service runs over TCP, UDP, or both. Everything is static and runs in your browser, so the lookup is instant and works offline once the page has loaded.
Example. Searching "443" shows HTTPS over TCP, the default for the encrypted web, while filtering by the Database chip lines up 3306 (MySQL), 5432 (PostgreSQL), 6379 (Redis), and 27017 (MongoDB) so you can see the defaults side by side when wiring up a connection string.
FAQ
What are well-known ports?
Ports are split into three ranges. The well-known ports, 0 to 1023, are reserved for core services such as HTTP (80), HTTPS (443), and SSH (22), and on most systems only an administrator may bind to them. The registered ports, 1024 to 49151, are assigned to specific applications such as MySQL (3306) and PostgreSQL (5432). The dynamic or ephemeral ports, 49152 to 65535, are handed out temporarily to client connections. This reference focuses on the well-known and the commonly used registered ports.
What is the difference between a TCP and a UDP port?
TCP and UDP are two transport protocols, and a port number can be used by either independently. TCP is connection-based and reliable: it sets up a handshake and guarantees ordered, complete delivery, which suits web pages, email, and databases. UDP is connectionless and fire-and-forget, trading reliability for low latency, which suits DNS lookups, video calls, and time sync. A few services, such as DNS on port 53, use both - UDP for quick queries and TCP for larger transfers.
Why is a port "already in use"?
Only one process can listen on a given port and address at a time, so if a second program tries to bind the same port the operating system refuses with an "address already in use" error. It usually means an earlier instance is still running, or another app grabbed the port first. Find the culprit with lsof -i :PORT or ss -tulpn, then stop it or start your service on a different port. This is why dev servers so often fall back to 3000, 5173, or 8080.
Can I run a service on any port I like?
Largely yes, with two caveats. Binding a port under 1024 normally requires administrator or root privileges, which is why development servers default to higher numbers. And the port has to be free - not already taken by another process. Beyond that you are free to choose, though sticking to the conventional number for a service makes life easier for clients and firewalls that expect it. Nothing about the number itself is magic; it is just an agreed label.