Guide · Networking

What Reverse DNS (PTR) Records Tell You

Updated 2026-08-10 · 4 min read

Forward DNS answers “what addresses does this name have?” Reverse DNS answers “what name is published for this address?” That second question lives in a different zone (in-addr.arpa for IPv4). To read it, the IP must be sent to a resolver. Reverse IP Lookup does that. It is not a local-only transform, and it is not a port scan.

Use PTR when you are reading mail logs, abuse reports, or a firewall line that only has an address. Do not use it to inventory a LAN you do not operate.

Forward and reverse are separate zones

When you create www.example.com203.0.113.10, you have not automatically created 10.113.0.203.in-addr.arpawww.example.com. The reverse zone is usually controlled by whoever owns the IP block - the ISP or cloud account - not by the website’s registrar panel.

That is why a perfectly valid website can have:

  • no PTR at all,
  • a generic PTR (ec2-203-0-113-10.compute-1.amazonaws.com),
  • or a PTR for a mail hostname that is not the website name.

None of those mean the A record is wrong. They mean the reverse zone was not set, or was set for a different job.

Domain to IP and Reverse IP Lookup are therefore a pair, not duplicates. Send the name one way; send the address the other.

What mail and logs actually use PTR for

Receiving mail servers often:

  1. Look up the connecting IP’s PTR.
  2. Resolve that hostname’s A/AAAA.
  3. Check that the address is in that set (forward-confirmed reverse DNS).

If you run your own outbound MX, a missing or mismatched PTR is a deliverability issue. If you send through a vendor, their IPs need the PTR, not your website’s CDN address.

In application logs, PTR is a convenience label. crawl-66-249-66-1.googlebot.com is easier to read than the raw address. It is still just a published string. Anyone who controls a reverse zone can publish a cute name; treat it as a hint, then confirm with the vendor’s published ranges when it matters (bot verification, abuse).

Why web IPs look so generic

Shared hosting, load balancers, and anycast CDNs have little reason to give every customer a custom PTR. The TLS name users see is on the certificate, not in in-addr.arpa. See How SSL Certificates Work.

A custom PTR on a web VIP can even confuse people who expect it to list every vhost. One address, one PTR string. Ten customers on that VIP will not appear as ten reverse names.

If you are debugging “what site is this IP,” PTR is a weak signal. HTTP Host, SNI, and whois on the block are stronger - and you should only pursue that on infrastructure you are authorized to investigate.

How to look up a public IPv4 address

  1. Start from an address you are allowed to query: one in your own cloud account, one from your mail logs, or a public address you have a reason to identify. Not 10.0.0.5, not a neighbor’s printer.
  2. Open Reverse IP Lookup and submit the IPv4 address. The tool sends that address to resolve PTR.
  3. If you get a hostname, optionally resolve it forward with Domain to IP and see whether the original IP is in the A set.
  4. If you get nothing, stop. “No PTR” is a valid outcome.
  5. For the rest of the zone (MX, TXT, NS), you need a name, not an IP - DNS Record Lookup.

dig -x 203.0.113.10 on a machine you control is the same class of public query.

Matching PTR to A is a check, not a proof

Forward-confirmed reverse DNS is a consistency check used heavily in mail. It is not a cryptographic identity. It is not ownership of the domain in the registrar sense. A matching pair can still be a compromised host.

A mismatch is interesting when you expected mail to be clean. It is uninteresting when you reverse-looked a CloudFront IP and got Amazon’s naming scheme.

Do not build a “trust score” out of PTR alone.

Private ranges and where to stop

Reverse lookups of RFC1918, loopback, and link-local addresses through a public website are wasted queries. Those spaces are not globally unique. A public resolver has nothing useful to say about your 192.168.1.1.

If you need reverse DNS inside a VPC or an office, use the DNS that belongs to that network, from a host that is on it. Do not paste those addresses into a public form.

The same rule as the rest of this cluster: send public identifiers you are allowed to test; leave internal ones alone.

Read the PTR as a published label, not proof

If you have a public IPv4 address from a log, open Reverse IP Lookup and read the PTR as a published label. If you have a hostname instead, start with Domain to IP. For record types beyond A and PTR, use How DNS Records Work.

Frequently asked questions

Does reverse IP lookup stay fully local?

No. The IPv4 address is sent to query the public PTR zone. Do not submit private or internal addresses you do not own.

Why is there no PTR for this web server?

Many CDN and cloud frontends never publish a useful PTR. Missing reverse DNS is normal for websites and is not proof the host is malicious.

Does PTR have to match the A record?

For mail, many receivers expect a relationship between the sending IP’s PTR and a forward A/AAAA. For a random website, a mismatch or a generic AWS/GCP name is common and usually irrelevant.

Can PTR list every site on a shared IP?

No. One PTR name per address is typical. Virtual hosts sharing an anycast IP will not appear as a directory of domains.

IPv6?

PTR exists for IPv6 (ip6.arpa) as well. This DevOkk tool is aimed at IPv4. Use dig -x on a machine you control if you need IPv6 reverse.

Is this the same as Domain to IP?

Opposite direction. Domain to IP sends a hostname and returns A/AAAA. Reverse IP Lookup sends an IPv4 address and returns PTR.

More reading that links back to the same tools and workflows.