Esta questão já tem um milhão de respostas, mas vou adicionar outra. Aqui está uma pequena função que escrevi para fazer facilmente DNS reverso com dig. Adicione isso ao seu arquivo ~/.bashrc
, recarregue seu shell e, em seguida, faça pesquisas reversas de DNS com revdns 1.2.3.4
:
function revdns() {
octets=""
addr="in-addr.arpa"
# split the IP address into an array of octets
IFS="." read -r -a octets <<< "$1"
# add each octet to our $addr string in reverse order
for octet in "${octets[@]}"; do
addr=$octet"."$addr
done
# run a DNS pointer lookup with dig
# '+short' makes dig's output very terse (un-verbose)
# '"${@:2}"' passes any extra params from this command to dig
dig ptr +short $addr "${@:2}"
}
Pesquisas reversas de DNS são feitas verificando os registros do ponteiro (PTR). Se você quer fazer DNS reverso para "1.2.3.4", você tem que procurar registros de ponteiro para "4.3.2.1.in-addr.arpa". Minha função recebe um endereço IP, inverte a ordem dos octetos (ou seja, muda de 1.2.3.4 para 4.3.2.1) e, em seguida, usa dig
para executar a pesquisa de PTR que acabei de descrever.
Você pode, é claro, usar apenas nslookup 1.2.3.4
se tiver, mas eu prefiro essa solução baseada em escavação porque ela usa os servidores DNS do SO em vez dos fornecidos pelo nslookup (se você quiser, a propósito, você pode adicionar sinalizadores de escavação adicionais quando você chamar revdns
, e eles serão passados para escavação)