Server Fault is a question and answer site for system and network administrators. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

Is there a maximum allowed subdomain depth supported by webservers or browsers?

For example, could a domain like foo.bar.baz.monkey.pirate.google.com cause problems?

share|improve this question

I believe the DNS itself can have up to 127 levels of label, each label can be up to 63 characters and the maximum length of the whole record is limited to 253 characters as you have to encode the length and a terminating 0.

share|improve this answer
7  
The 127 levels is just a consequence of the 255 character limit (which includes the length and a trailing dot, but not a terminating 0). – Chris S Mar 6 '14 at 14:52
2  
wikipedia also mentiones the 127 level limit. en.wikipedia.org/wiki/Subdomain#Overview regarding webservers and browsers they must be analyzed and tested individually – weberik Mar 6 '14 at 17:58
1  
With the caveat that just using the IP address becomes easier to remember if the name gets too long and ridiculously convoluted, so there's a practical user-patience-for-nonsense limit. – milli Mar 8 '14 at 20:45
1  
@milli Well, that depends on the domain. A random 32-bit number, to me, is harder to remember than now.is.the.time.for.all.good.men.to.come.to.the.aid.of.their.country. Because I don't know how your memory works, but mine's definitely a graph database. – Parthian Shot Aug 1 '14 at 14:53

There is no defined maximum in terms of the number of dot-delimited subdomains, but DNS does limit the maximum overall length of a hostname (including the dots) to 255 characters.

share|improve this answer
1  
Not part of the Q, but the length of each "label" is also limited, as Iain notes. – Chris S Mar 6 '14 at 14:53

Due to rfc1035:

To simplify implementations, the total length of a domain name (i.e., label octets and label length octets) is restricted to 255 octets or less.

Also

Each label is represented as a one octet length field followed by that number of octets. Since every domain name ends with the null label of the root, a domain name is terminated by a length byte of zero

So, maximum valid length is 255-2 symbols (tested in DIG). Whole UDP message also should be less or equal 512 bytes. But that's not too small and makes IPoverDNS possible.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.