Pular para o conteúdo

Comando DIG

Responder tópico
  • Denunciar
  • Indicar

1. Comando DIG

Enviado em 12/12/2012 - 08:13h

Bom dia pessoal.... estou em um projetinho aqui onde preciso recuperar dns, reverso, mx, etc...
Estava usando algumas funções do php, mas não sei.. acho que não retornava todas as informações que precisava.. Ai fui para o dig.. nele sim.. mas não consegui separar as informações que preciso ela vem em um bloco só!! Alguém tem uma luz. Já tentei explode() e sem resultados.
Agradeço desde já!!!

Att
Marcelo

Responder tópico

2. Re: Comando DIG

Enviado em 12/12/2012 - 11:37h

Vc pode usar o dig com grep ou awk.

Ex: se vc quer a resposta do dig
dig www.vivaolinux.com.br | grep -v ';' | grep .

3. Re: Comando DIG

Enviado em 17/12/2012 - 16:25h

Mas isso no php?
Tô quebrando a cabeça aqui eu não estou conseguindo não....

4. Re: Comando DIG

Enviado em 17/12/2012 - 17:04h

msb escreveu:

... acho que não retornava todas as informações que precisava.. Ai fui para o dig.. nele sim.. mas não consegui separar as informações que preciso ela vem em um bloco só!! Alguém tem uma luz. Já tentei explode() e sem resultados.
Agradeço desde já!!!

Att
Marcelo
Que informações são essas que a função dns-get-record(), não pode lhe ajudar? Basicamente todas as informações retornadas por utilitários DNS lookup são também retornadas pela função citada:


which php | xargs echo -n '#!' > dnsGet.php

vi dnsGet.php

Adicione:


<?php
$dnsHandler = dns_get_record("vivaolinux.com.br", DNS_ALL);
print_r($dnsHandler);
?>
chmod +x dnsGet.php && ./dnsGet.php

Veja a saída, muitas informações são retornadas.

5. Re: Comando DIG

Enviado em 17/12/2012 - 18:49h

Tipo:
O cliente entra com um range de ip> ele pinga em cada um e depois verifica se existe um host para esse ip.
de existir ele teria que mostrar o reverso e verificar se é igual ao host.

Só que pelo :

$hostname = gethostbyaddr($ip);


$dns=dns_get_record($hostname, DNS_ALL);

Não sei se não identifiquei ou ele não está retornando...
Estou testando com os da telefonica

Array ( [0] => Array ( [host] => resolver1.telesp.net.br [class] => IN [ttl] => 2263 [type] => A [ip] => 200.204.0.10 ) ) 200.204.0.10==> SEM ping ==> resolver1.telesp.net.br
1Array ( [0] => Array ( [host] => psc-ns6.telesp.net.br [class] => IN [ttl] => 2264 [type] => A [ip] => 200.204.0.11 ) ) 200.204.0.11==> SEM ping ==> psc-ns6.telesp.net.br
1Array ( ) 200.204.0.12==> SEM ping ==> 200.204.0.12
1Array ( ) 200.204.0.13==> SEM ping ==> 200.204.0.13
1Array ( ) 200.204.0.14==> SEM ping ==> 200.204.0.14
1Array ( ) 200.204.0.15==> SEM ping ==> 200.204.0.15
1Array ( ) 200.204.0.16==> SEM ping ==> 200.204.0.16
1Array ( ) 200.204.0.17==> SEM ping ==> 200.204.0.17
1Array ( ) 200.204.0.18==> SEM ping ==> 200.204.0.18
1Array ( ) 200.204.0.19==> SEM ping ==> 200.204.0.19
1Array ( ) 200.204.0.20==> SEM ping ==> 200.204.0.20

Att.
Marcelo

6. Re: Comando DIG

Enviado em 18/12/2012 - 13:33h

msb escreveu:

Não sei se não identifiquei ou ele não está retornando...
Estou testando com os da telefonica

Pode ser que você não esteja identificando, não entendi muito bem a estrutura do seu código, acredito que você queira mudar a maneira de como esse trecho realiza essa tarefa. Possivelmente o uso de gethostbyaddr() seja o suficiente ou talvez algo como:



$ip = '174.123.53.162';
$reverse=dns_get_record(implode('.',array_reverse(explode('.', $ip))).'.in-addr.arpa.',DNS_PTR);

Utilizando-se da função print_r() para retornar informações legíveis, você seria capaz de ter informações sobre o reverso. O resto seria analisar se o array veio com informações e trabalhar na lógica, mas aí é com você. Explique melhor o problema caso ainda se faça necessário.

Responder tópico

Responder tópico

Entre na sua conta para responder.

Fazer login para responder