Posso fazer o perfil de uma pesquisa de DNS no OSX?

4

Eu tenho um problema de latência em certas solicitações para um endereço no host local. Eu suspeito que há algo acontecendo com a pesquisa de DNS.

Existe uma maneira de mapear a pesquisa de DNS no OSX? Por exemplo, há um log que eu possa assistir enquanto ele tenta fazer as pesquisas?

    
por Nathan Long 05.02.2013 / 19:14

2 respostas

6

Você poderia simplesmente executar o tcpdump para despejar pacotes DNS e ver como o tráfego de DNS está se comportando. Algo como o seguinte, inserido no Terminal, deve fazer o truque:

sudo tcpdump -i en0 -n udp port 53

O -i en0 deve referenciar sua interface ativa. Nos Macs, isso geralmente é en0 , mas se você tiver um conector Ethernet e um adaptador sem fio, talvez seja necessário usar en1 . Isso produzirá resultados como (eu envolvi linhas longas para clareza):

22:19:46.160992 IP 192.168.1.143.61150 > 192.168.1.1.53:
  60237+ A? www-google-analytics.l.google.com. (51)
22:19:46.184272 IP 192.168.1.1.53 > 192.168.1.143.61150:
  60237 11/0/0 A 74.125.225.233, A 74.125.225.238, A 74.125.225.224,
  A 74.125.225.225, A 74.125.225.226, A 74.125.225.227, A 74.125.225.228,
  A 74.125.225.229, A 74.125.225.230, A 74.125.225.231, A 74.125.225.232 (227)

Este dump mostra uma solicitação da minha máquina para o meu roteador ( 192.168.1.143 > 192.168.1.1 ) em 22:19:46.160992 . Meu roteador respondeu de volta a 22:19:46.184272 com a resposta. Então, esse pedido de DNS levou cerca de 23ms.

Se você suspeitar de um problema de desempenho do DNS, execute o comando tcpdump e procure as solicitações DNS do servidor que lhe interessa. Se você vir um longo atraso ou várias tentativas, sabe que tem um problema.

    
por 06.02.2013 / 05:26
1

I have a latency issue on certain requests to an address on localhost.

Quando você diz "localhost", você realmente se refere ao localhost? como em 127.0.0.1 ou :: 1?

Você pode usar o tcpdump para procurar por resolver o tráfego como o pôster anterior sugeriu, mas se você literalmente quer dizer localhost, há uma boa chance de que o nome não esteja sendo resolvido usando DNS.

    
por 07.02.2013 / 09:43

Tags