A forma mais eficiente para determinar programaticamente se um domínio web está disponível?

StackOverflow https://stackoverflow.com/questions/106734

Pergunta

Estou a escrever algum código para determinar se um domínio de rede é registrado. Por exemplo, eu quero verificar se "Google123.com" está disponível. Há pelo menos duas maneiras que eu posso fazer isso por meio de programação, mas eu não tenho certeza que é mais válido:

  • A) Em linux / cygwin, posso lançar o comando whois para ver se um domínio é em uso.
  • B) no Linux / Windows, eu posso lançar comando nslookup para ver se um domínio é resolvido.

As minhas perguntas são:

  1. É nslookup realmente uma forma válida para verificar o registro? Será que cada domínio registrado tem um servidor de nome e mostre-se no DNS?
  2. O que é a maneira mais rápida de fazer esta verificação de registro? Alguma dica ou outras maneiras de fazê-lo?
Foi útil?

Solução

nslookup atinge o seu servidor DNS que está em suas configurações do sistema. Ele pode estar por trás das vezes ou não tem qualquer entrada DNS. Eu acho que a melhor maneira seria ter uma conexão TCP para a porta whois.internic.net 43 (a porta whois), passe o nome que pretende verificar, e em seguida, você deve obter uma resposta permitindo que você saiba. Se ele não existir, você poderá obter uma resposta como No jogo de "domainyourchecking.com"

Outras dicas

No que diz respeito ao nº 1, não. Não há exigência de que os domínios registrados realmente tem DNS.

O problema com whois é que não existe uma resposta consistente de diferentes TLD.

Então, se você está olhando apenas para .com ou algum outro TLD específico, você está bem. Se você começar a olhar para os vários ccTLDs ou outros gTLDs você pode encontrar um monte de embalagem especial em sua lógica tentando descobrir o que significa "disponíveis" nos dados retornados pelo comando whois.

Whois retorna sempre sucesso para o shell, mesmo quando o domínio está disponível. : (

Há rumores de que alguns dos sites lá fora, que lhe permitem procurar domínios são realmente frentes para especuladores de domínios que vão comprar o domínio assim que você procurá-lo, e depois tentar vendê-lo para você. Eu nunca encontrou um tal esquema, mas você pode querer experimentar algumas pesquisas de domínio de lixo em um novo site antes de procurar seu nome de domínio sonho.

Isto lhe dará um rápido sim / não, mas se você pensa que é livre, e você quer que ele, tentar registrá-lo, você pode achar que já está tomada.

sistema ( "whois $ domainname");

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top