Como usar números em nomes de host DNS?

3

Eu quero configurar um registro DNS que contenha apenas dígitos, por exemplo:

www1                    A       1.2.3.4
1                       CNAME   www1

No entanto, o número puro parece não funcionar.

Eu conheço alguns sites que usam inteiro em seus nomes de host, algo como 400.5432.somefax.com, então eu acho que talvez eu deva escapar dos números?

EDITAR

Parece que o BIND suporta rótulos de números puros:

$ dig @localhost 1.example.com
...
1.example.com.     43200  IN  CNAME  www1.example.com.
www1.example.com.  43200  IN  A      1.2.3.4
...

No entanto, quando uso o servidor DNS do Google (8.8.8.8), ele falhou.

; <<>> DiG 9.7.3 <<>> 1.example.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 20866
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 0

;; QUESTION SECTION:
;1.example.com.         IN  A

;; AUTHORITY SECTION:
example.com.        1205    IN  SOA root.example.com. admin.example.com. 5 3600 600 43200 3600

;; Query time: 112 msec
;; SERVER: 8.8.8.8#53(8.8.8.8)
;; WHEN: Tue May  3 19:09:39 2011
;; MSG SIZE  rcvd: 94

No entanto, o servidor DNS do Google não deve ter problemas com rótulos numéricos, porque pode resolver, por exemplo, 83592583.qzone.qq.com :

; <<>> DiG 9.7.3 <<>> 83592583.qzone.qq.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 18687
;; flags: qr rd ra; QUERY: 1, ANSWER: 4, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;83592583.qzone.qq.com.     IN  A

;; ANSWER SECTION:
83592583.qzone.qq.com.  600 IN  CNAME   qq.com.edgesuite.net.
qq.com.edgesuite.net.   9439    IN  CNAME   a1574.b.akamai.net.
a1574.b.akamai.net. 18  IN  A   60.254.175.65
a1574.b.akamai.net. 18  IN  A   60.254.175.64

;; Query time: 328 msec
;; SERVER: 8.8.8.8#53(8.8.8.8)
;; WHEN: Tue May  3 19:12:10 2011
;; MSG SIZE  rcvd: 134

Então, o BIND9 está bem, o DNS do Google está bem, a minha configuração de zona está bem, eu posso dig @localhost 1.example.com , que dá a resposta correta. Mas eu não posso dig @8.8.8.8 1.example.com , (nem 8.8.4.4), Agora eu fiquei preso.

    
por Xiè Jìléi 30.04.2011 / 15:19

3 respostas

12

RFC 1912, documentando erros comuns de configuração do DNS, afirma:

Allowable characters in a label for a host name are only ASCII letters, digits, and the '-' character. Labels may not be all numbers, but may have a leading digit (e.g., 3com.com). Labels must end and begin only with a letter or digit. See [RFC 1035] and [RFC 1123]. (Labels were initially restricted in [RFC 1035] to start with a letter, and some older hosts still reportedly have problems with the relaxation in [RFC 1123].) Note there are some Internet hostnames which violate this rule (411.org, 1776.com). The presence of underscores in a label is allowed in [RFC 1033], except [RFC 1033] is informational only and was not defining a standard. There is at least one popular TCP/IP implementation which currently refuses to talk to hosts named with underscores in them.

Label é equivalente ao hostname da sua pergunta.

O RFC1912 é informativo, não definindo um padrão. No caminho dos RFCs informativos, algumas implementações do DNS tomaram isso como um evangelho e, portanto, não funcionam com todos os números. Que é outra maneira de dizer, para máxima compatibilidade com toda a Internet, colocar pelo menos uma letra em seus nomes de host.

Obviamente, pode funcionar (heck, o RFC cita exemplos!), então o truque é convencer seu servidor DNS a permitir isso. E para isso, vou ter que adiar para outros usuários.

    
por 30.04.2011 / 18:10
0

Apenas é permitido ter um número como nome do host, a partir do rfc1035:

"Os rótulos devem seguir as regras para os nomes de host da ARPANET. Eles devem comece com uma letra, termine com uma letra ou um dígito e tenha como caracteres apenas letras, dígitos e hífen. Existem também alguns restrições no comprimento. Os rótulos devem ter 63 caracteres ou menos. "

    
por 30.04.2011 / 15:54
-1

Além das respostas sobre o RFC, uma solução alternativa seria usar

1.fax IN A 1.2.3.4

na configuração de example.com . Você acaba com um FQDN 1.fax.example.com .

    
por 02.04.2014 / 09:42