Existe algum servidor sempre ativo, que eu possa configurar para executar ping no modo automático para detectar que a Internet está disponível? Gosta do Google ou algo assim? Pode ser 8.8.8.8?
Minha situação específica é que estou usando um roteador WAN duplo. Cada WAN está conectada a um dos ISPs. Quando meu dinheiro termina em um ISP, ele não está bloqueando o canal. Em vez disso, ele redireciona para uma página de aviso. Portanto, o roteador acha que a Internet está ligada, porque os dados estão sendo transportados. Outra opção para este roteador é executar ping em algum endereço para verificar se a Internet está ligada.
Será que, se executar o ping 8.8.8.8, não serei banido pelo Google por uso inadequado? Eu suspeito que o Google possa ter algumas cotas. Se eu fizer ping nos servidores de nome com muita frequência, às vezes recebo rejeições de DNS.
fonte
ping stackexchange.com
;)Respostas:
Tente executar o ping 8.8.8.8, é o servidor DNS principal do Google. Eu sempre faço ping para verificar minha conexão e nunca a encontrei. Como alternativa, você pode tentar o 8.8.4.4, que é o DNS secundário do Google.
fonte
ping
aceita TLDs também. Portanto,ping google.com
deve fazer o truque, caso você não queira se lembrar quádruplo oito.ping
não aceita TLDs. Também não aceita nomes de domínio. É apenas para que a maioria dos nomes de domínio também sejam nomes de host e resolvam para um endereço IP. Assim, as pessoas poderiam digitar emhttp://example.com
vez dehttp://www.example.com
, antes que os navegadores fossem tão inteligenteswww.
para adicionar um nome de host se ele não funcionasse em primeiro lugar. (Tenteping army.mil
se você não acredita em mim.)Você pode fazer o que a microsoft faz: verifique se
http://www.msftncsi.com/ncsi.txt
retorna "Microsoft NCSI". (Isso verifica se você pode obter os dados corretos de um site, por exemplo, não um portal Wifi ou outra coisa).
Você também pode verificar (por exemplo, ping) que dns.msftncsi.com
aponta para 131.107.255.255 (isso verifica se o DNS está funcionando).
Consulte http://technet.microsoft.com/en-us/library/ee126135
Nota: você também pode visitar http://www.msftconnecttest.com/redirect para acessar um portal cativo, se necessário.
fonte
131.107.255.255
executar ping - ele expira.www.msftncsi.com
passaa1961.g2.akamai.net
, o que resolve23.59.182.83
no momento da redação - não sei se é um IP estático ou não. Embora seja uma boa resposta para a pergunta "qual é um bom URL para testar com segurança minha conexão à Internet" com, por exemplo, cURL ou um navegador, não é um IP que pode ser verificado com um simplesping
comando; portanto, não é uma resposta para essa pergunta específica.Caso específico
Você deseja executar ping no IP fixo "mais próximo" que não pode ser roteado quando o ISP entra no estado de sobrecarga de tráfego. No meu sistema, eu posso emular essa situação falhando na autenticação ADSL. Nesse caso, comparando os resultados de
traceroute -n
condições normais e anormais, vejo que o primeiro salto para 8.8.8.8 (ou qualquer site certamente externo) que não responda é 151.6.68.45, que faz parte da infraestrutura do meu ISP.Usando esse IP como um host "check-alive" (depois de repetir o teste apenas para ter certeza de que está corrigido), posso detectar uma anomalia no ISP sem obter um falso positivo, caso o ADSL esteja OK, mas o roteamento do ISP apresenta problemas .
É claro que eu poderia usar o 8.8.8.8 de propósito , argumentando que, se não conseguir acessar a infraestrutura do Google, não me importo com o motivo , mas também com o roteador de backup.
Caso Geral
"Internet está disponível" é uma coisa muito mais complicada do que simplesmente "É 8.8.8.8 (ou outro IP) acessível".
Para uma verificação rápida, suja e nem sempre confiável, executar o ping 8.8.8.8 é bom. Mas, como você usa um IP numérico em vez de um nome de domínio, já percebeu que pode ter conectividade IP e ainda "sem Internet" devido a problemas de DNS.
Um diagnóstico completo teria que começar perto do seu PC.
Por exemplo, no Windows XP em casa, tenho:
Agora tente executar ping no DNS. Deve ser alcançável. Melhor ainda, execute uma verificação simples de DNS. Para evitar caches de DNS, às vezes uso um domínio que responde a todas as consultas, não importa o quê. Então por exemplo
enquanto o servidor DNS não for confiável, a mesma consulta poderá retornar o endereço do portal cativo para wifi
ou 127.0.0.1, ou mesmo um erro.
No caso de falhas no DNS, posso tentar um traceroute do endereço IP do DNS (ou um DNS diferente, como o do OpenDNS). Isso não só me diz se o problema é o DNS ou o ISP, como também me permite contornar a interrupção.
Se tudo correr bem neste momento, sei que a conexão está funcionando corretamente, em geral; ainda pode falhar em alguns sites. Tudo o que eu preciso agora é de
isup.me
estar acordado :-), depois checandoou um site como o Down Detector me manterá informado sobre o "clima da Internet".
Na verdade, no meu servidor doméstico, há um cache do Squid e a página de erro contém os últimos dados recuperados com sucesso das estatísticas do site, portanto, posso ver algo como
assim como aconteceu nesta última sexta-feira aqui na Itália.
fonte
8.8.8.8
, basta mudar o seu servidor DNS para que assim que os problemas ISP DNS não importaComo já foi dito, você pode executar ping, por exemplo, no DNS primário do Google para obter uma resposta, mas não depende de um endereço. O endereço (por várias razões) pode ficar inativo por um período de tempo, durante o qual o software relatará "sem conectividade", quando, de fato, a conectividade da sua rede pode não ter problemas. Você deve sempre tentar se comunicar com mais de um endereço para descartar falsos negativos.
Eu escreveria uma função que envia um endereço bip uma vez, se isso falhar, passar para outro (até, digamos, três IPs) e, no momento em que você receber algumas respostas positivas, a função deverá notificar seu aplicativo / script que a Internet está disponível e continuar.
fonte
Quando trabalhei em uma organização com uma conexão à Internet flakey, tive um script que testava vários servidores "sempre ativos" quanto à conectividade: primeiro o roteador / switch da LAN, depois o servidor de arquivos local, o roteador T1 e o DNS do ISP, então Google. Testei os dois últimos como endereços numéricos e como domínios, para verificar os problemas de DNS versus o ping em si. Se algum dos pings falhava com muita frequência, tive uma idéia de onde o problema de conexão à Internet provavelmente existia.
Para o endereço numérico do Google, eu apenas usei um que eu havia adquirido no nslookup anteriormente - nunca encontrei um caso em que ele estava inoperante. Suponho que 8.8.8.8 seria mais simples.
Frequentemente, quando as pessoas ligavam para dizer que a "internet estava inoperante", descobriu-se que apenas o DNS estava inoperante; podemos chamar essas coisas diferentes, mas do ponto de vista dos meus colegas, a internet não estava disponível nos dois casos.
fonte
Uso o 4.2.2.1 há mais de 10 anos. Antes havia o serviço DNS público do Google. Parece ser um cache DNS confiável e um respondedor de ICMP.
fonte
Experimente o seu servidor DNS, você precisará dele de qualquer maneira (e a conexão externa do seu ISP pode estar inativa). Realmente depende do que você quer. Se você precisar acessar o serviço específico de s, verifique-o.
fonte