como acompanhar o pid de um processo usando mDNSResponder?


0

Eu estou procurando o caminho certo para identificar qual pid / process pedir ao mDNSResponder para resolver a consulta de DNS.

Em outros termos, quero identificar qual processo faz o dns consultar através do mDNSResponder e de alguma forma correlacioná-lo.

Em outro termo novamente eu quero saber o pid de toda consulta de DNS feita através de mDNSResponder.

Existe uma abordagem de administrador de sistema para fazer isso ou eu tenho apenas uma maneira de programador e, portanto, preciso corrigir o mDNSResponder?

Respostas:


1

Para habilitar o log mDNSResponder, execute

sudo killall -USR1 mDNSResponder  # enable Warning and Notice log level
sudo syslog -c mDNSResponder -w   # enable syslog logging for warning messages

Seguido por grep DNSServiceQueryRecord /var/log/system.log para ver todas as consultas DNS:

Aug 28 19:20:11 Fourecks.local mDNSResponder[53]:  25: DNSServiceQueryRecord(api.droplr.com., AAAA) STOP PID[18](configd)

O pid no final (18 no exemplo acima) é o pid para o configd que solicitou a resolução do endereço neste caso.

Ativar o registro gera muitas entradas system.log então é provavelmente uma boa ideia usá-lo apenas se necessário. Para desligá-lo novamente, basta executar novamente sudo killall -USR1 mDNSResponder.


Eu sei disso, mas na mensagem de log detalhado não há o pid do processo que fez a chamada, mas apenas o ID do usuário numérico que faz isso. de qualquer forma, obrigado.
boos

Tenho certeza que há, vou verificar hoje à noite quando estou de volta para casa. Qual versão do OS X você está executando?
nohillside

Estou usando o Mac OS X 10.7.2
boos

Ah, a saída pode ser diferente lá (estou em 10.8). Como o resultado do grep na minha resposta, olhe em 10.7?
nohillside

Nenhuma informação PID! pastebin.com/pzxr5n59
boos
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.