Testa DNS da sua conexão e reporta perda(s) de pacotes

Publicado por morvan bliasby (última atualização em 24/04/2010)

[ Hits: 9.272 ]

Download testadns.sh




Criei este pequeno script em bash para testar os DNS da minha conexão, a qual apresenta muitas oscilações, como usualmente ocorre, imagino.

Como ele está, bem básico, ele nos reporta os DNS passados e suas respectivas perdas, caso existam, em ordem decrescente.

Pode-se incrementá-lo de dois modos: é possível criar uma rotina que o faça, como "root", alterar o "resolv.conf" a partir das estatísticas trazidas por este script, bem como fazer a passagem dos DNS como parâmetros na linha de comando. Ele, como se pode ver, passa os valores dos DNS através de um laço.

Abaixo, vê-se o seu diminuto código. Bom proveito.

Morvan, Usuário Linux #433640.

  



Esconder código-fonte

#!/bin/bash
for I in "201.12.118.2" "201.12.118.4" "208.67.222.222" "208.67.220.220" "8.8.8.8" "8.8.4.4"
do
     echo -e "{FONTE}33[01;31mTestando DNS $I... Aguarde.{FONTE}33[01;00m" 
     perc=$(ping -c 10 $I | grep packets | cut -f3 -d"," | cut -f1 -d"p") 
 #    echo -e "{FONTE}33[01;34m$perc de Perdas em $I{FONTE}33[01;00m"
     echo -e "{FONTE}33[01;34m$perc de Perdas em $I{FONTE}33[01;00m" >> /tmp/testedns.txt
done
cat /tmp/testedns.txt | sort
rm -f /tmp/testedns.txt

Scripts recomendados

Exercicio

Monitorando tentativas de conexões

Consulta operadora

Inversor de links de download (ou qualquer outra String)

Descobrir IP


  

Comentários
[1] Comentário enviado por irado em 25/04/2010 - 11:22h

bem.. IMHO vc está apontando para o lado errado; o que vc avalia na verdade é a LATÊNCIA da conexão para um dado ponto, ou seja, um problema de REDE e não de dns. Digamos assim: vc interroga o servidor "a", devido à latência (e, eventualmente, perda de pacotes) a demora na resposta faz com que vc não consiga a página http que buscou. Com êsse troca-troca vc NÃO RESOLVE o problema real, mas durante o troca-troca a rede externa (como um todo) pode ter melhorado e vc obtém resultado na 2a, 3a tentativa. Aconteceria, do mesmo jeito, sem isso.

sugestão: vc tem que avaliar ONDE ocorre a latência/perda de pacotes. Se for na sua interface, é simples, se for no seu provedor.. bem.. a briga pode ser longa e cansativa.

flames > /dev/null


[2] Comentário enviado por alaxricard em 26/04/2010 - 13:01h

Funcionou muito bem amigo e obg mesmo amigo.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts