TCP & DNS Monitoring
Monitor any TCP port or DNS record — not just websites. Catch broken mail servers, databases, DNS changes, and more.
TCP port monitoring
TCP monitoring checks whether a specific port on a server is open and accepting connections. Unlike HTTP checks, it doesn't care about response content — it only verifies that something is listening on that port and can complete a TCP handshake.
Use TCP monitoring for any service that isn't a standard website: mail servers, database servers, game servers, SSH, FTP, or any custom service running on a specific port.
| Service | Common ports | What TCP monitoring tells you |
|---|---|---|
| HTTPS | 443 | Web server is up (without checking SSL) |
| SMTP email | 25, 587 | Mail server is accepting inbound mail |
| SMTPS | 465 | Secure mail submission is working |
| MySQL | 3306 | Database is accepting connections |
| PostgreSQL | 5432 | Database is accepting connections |
| Redis | 6379 | Cache server is up |
| SSH | 22 | Server is accessible via SSH |
| FTP | 21 | FTP server is up |
| Custom | Any | Any service on any port |
Setting up TCP monitoring
When adding or editing a site, select TCP as the check type. Then:
- Set the URL/hostname to the server's hostname or IP (no
http://prefix) - Set the TCP port to the port you want to monitor
A TCP check is marked down if:
- The connection is refused (port closed or service not running)
- The connection times out (30 seconds)
- DNS resolution of the hostname fails
DNS monitoring
DNS monitoring periodically resolves a DNS record and compares the result to an expected value. You get alerted if the record changes or stops resolving — useful for catching misconfigured DNS, hijacked domains, or broken mail records.
| Record type | Example expected value | Common use case |
|---|---|---|
| A | 1.2.3.4 | Verify server IP hasn't changed |
| AAAA | 2001:db8::1 | IPv6 address monitoring |
| CNAME | mysite.netlify.app | Verify CDN/hosting CNAME is correct |
| MX | 10 mail.example.com | Mail server record is present |
| TXT | v=spf1 include:example.com ~all | SPF record integrity check |
Setting up DNS monitoring
- Select DNS as the check type when adding a site
- Set the URL field to the domain name (e.g.
example.com) - Choose the DNS record type (A, AAAA, CNAME, MX, TXT)
- Enter the expected value exactly as the record should resolve to
The check fails (and an alert is sent) if the DNS query returns a different value, or if the record doesn't exist at all.
Ping (ICMP) monitoring
Select Ping as the check type to send ICMP echo requests (pings) to a server. A ping check only verifies that the server is responding at the network level — the response time is the round-trip time (RTT).
Use ping when you want the simplest possible check: "is this IP address reachable?" It doesn't tell you anything about services running on the server.
Use cases & examples
Client has a transactional email service (SMTP)
Check type: TCP
Hostname: mail.client.com
Port: 587
Interval: 5 minutesVerify a domain wasn't hijacked (A record)
Check type: DNS
Domain: client.com
Record type: A
Expected value: 104.21.55.123Monitor a PostgreSQL database server
Check type: TCP
Hostname: db.client.internal
Port: 5432
Interval: 1 minute (Agency plan)