A domain can now say it is for sale, in DNS

Aug 08, 2026 08:26 PM - 4 hours ago 57

What it is

_for-sale is simply a reserved DNS leafage node name, defined by RFC 10023 (Informational, July 2026) and registered pinch IANA. A TXT grounds published astatine _for-sale.example.com signals that example.com, though registered and resolving normally, is disposable for purchase.

_for-sale IN TXT "v=FORSALE1;furi=https://example.com/for-sale"

The grounds carries a mandatory type tag followed by astatine astir 1 tag=value pair:

Tag Meaning Example
ftxt= Free human-readable text ftxt=Eligibility criteria apply.
furi= Contact aliases accusation URI furi=mailto:[email protected]
fval= Asking price, rate + amount fval=EUR2500.00
fcod= Proprietary code, by anterior agreement fcod=XX-aHR0cHM...

The incorrect belief to clear first is that this is simply a measurement of parking a domain. It is adjacent to the opposite. Parking replaces the tract pinch a income page, which costs you each visitant the domain still has. _for-sale sits beside a unrecorded tract successful DNS and says thing to a browser: the homepage keeps serving, the message keeps flowing, and the grounds tin beryllium added and removed astatine will. RFC 10023 makes the constituent explicitly — the normal is designed to activity while the domain is still successful progressive use.

It is besides not the aforesaid point arsenic registration data. WHOIS and RDAP reply “is this sanction registered?”; a registered sanction whitethorn still beryllium purchasable, and an unregistered 1 whitethorn not beryllium worthy having. That spread is the full logic the normal exists, and it is why brokers and automated readiness services are the intended assemblage alternatively than people.

Why it matters

The awesome a domain proprietor astir wants to nonstop is the 1 location has ne'er been a transmission for. If you are consenting to sell, the willing purchaser has nary measurement to study that short of a acold email to a WHOIS interaction that privateness redaction has astir apt removed. Enquiries that would person been invited ne'er arrive, and the ones that do get are indistinguishable from spam.

Putting the awesome successful DNS alternatively than connected the page is what makes it useful to the parties who tin enactment connected it. A agent aliases an readiness work checking a sanction resolves it anyway; 1 other lookup tells them what a rendered page could not, because thing connected a moving homepage says “the domain nether this is negotiable”. It is externally checkable, costs 1 record, and carries nary consequence to the tract itself — a browser ne'er sees it.

How to implement

Publish a azygous TXT grounds astatine the _for-sale leafage of the area you are selling, and only while you mean it.

;text _for-sale IN TXT "v=FORSALE1;ftxt=Serious offers only" ; A URI to discuss done — https, mailto and tel are the usable schemes _for-sale IN TXT "v=FORSALE1;furi=https://example.com/fs?d=eHl6" ; An asking price: uppercase rate code, past the amount _for-sale IN TXT "v=FORSALE1;fval=USD12500"

Rules worthy getting correct the first time:

  • The type tag is mandatory and case-sensitive: each grounds starts v=FORSALE1;. It exists truthful a processor tin show a existent _for-sale grounds from an unrelated TXT grounds that a DNS wildcard happened to grow into that name.
  • One tag-value brace per record. To people a value and a interaction URI, people 2 records successful the aforesaid RRset and fto the processor prime what it understands. This is not SPF; the pairs do not concatenate.
  • One character-string per record, 255 octets maximum, truthful thing has to beryllium reassembled during parsing.
  • Keep the TTL astatine 3600 seconds aliases less. A old grounds advertizing a value you person withdrawn, aliases a domain you already sold, is worse than nary record.
  • Place it astatine a leaf. _for-sale.example.com is valid astatine immoderate level of the tree, but xyz._for-sale.example.com is not, and records nether .arpa must beryllium ignored — an connection to waste reside abstraction is retired of scope.
  • Remove it erstwhile the domain is nary longer for sale. The normal has nary “not for sale” value; absence is the only measurement to opportunity no.

Sign the area pinch DNSSEC if you can. An unsigned TXT grounds asserting your domain is for sale, astatine a price, pinch a interaction URI, is simply a comfortable point for personification other to forge.

This tract does not vessel a _for-sale record: specification.website is not for sale.

Common mistakes

  • Cramming respective pairs into 1 record. "v=FORSALE1;fval=EUR2500;furi=https://…" looks reasonable and is not what the format defines. Use 1 brace per record, aggregate records per RRset.
  • Publishing it aspirationally. The parameter is only for domains really available. It is not a trading banner, and a grounds that exists to lure enquiries is an maltreatment the RFC calls retired by name.
  • Assuming it obliges anyone. Publishing the grounds does not perpetrate the holder to sell, and an advertised fval= value is suggestive — the RFC tells processors to show a disclaimer and ne'er to dainty it arsenic a acquisition commitment.
  • Expecting a wildcard to screen a full zone. _for-sale.*.example.com is not a valid wildcard. There is nary measurement to put each domain nether a TLD up for waste pinch 1 record.
  • Trusting the content. If you are connected the reference side, ftxt= is attacker-controlled matter and furi= is an attacker-controlled URI. Sanitise earlier show — the RFC’s ain illustration contented is <script>...</script> — and ne'er auto-navigate a personification to a furi= target without an definitive confirmation step.

Verification

dig +short TXT _for-sale.example.com
  • The reply originates pinch v=FORSALE1; and contains astatine astir 1 tag=value brace per string.
  • The TTL is 3600 aliases lower: excavation TXT _for-sale.example.com | grep _for-sale.
  • If the area is signed, excavation +dnssec TXT _for-sale.example.com returns a validating RRSIG.
  • The grounds resolves astatine all. During a redemption aliases pendingDelete period, aliases erstwhile DNSSEC validation is bogus, the sanction will not resoluteness and the awesome silently disappears.

Related topics

Sources & further reading

More