Como foi dito abaixo, você pode usar qualquer editor de texto para criar um arquivo de texto com o formato ipaddress resolved_hostname
, algo assim:
192.168.1.11 websrv1
192.168.1.12 websrv2
192.168.1.13 websrv3
Não se esqueça de definir DNSLookup=2
.
I had expected to be able to create the file from existing information, such as the Apache logs.
Claro, você pode fazer isso obtendo o endereço IP do access_log
do Apache e usar algumas ferramentas como: dig
, host
, resolveip
, ... para resolver o nome do host, algo assim :
$ awk '{ print $1 }' access_log | sort | uniq | \
while read ip; do \
if [ 'dig +short -x $ip | sed 's/\(.*\)\.//' | wc -l' -eq 1 ]; then \
echo -e $ip\t$(dig +short -x $ip | sed 's/\(.*\)\.//') >> dnscache.txt; \
fi; \
done
Para continuar atualizando este arquivo, você pode executar o comando acima como um cron job e filtrar somente os logs em um intervalo de tempo específico (igual ao intervalo do cron).