linux – 为AWStats手动创建dnscache.txt

前端之家收集整理的这篇文章主要介绍了linux – 为AWStats手动创建dnscache.txt前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
根据AWStats的文档:

AWStats can do reverse DNS lookups through a static DNS cache file
that was prevIoUsly created manually.

通过文档搜索,以及相当多的谷歌搜索,给我留下了一个问题.如何手动创建DNS缓存文件?是否有Linux命令要执行此操作,我还没有找到?这是在Centos 5.5机器上.

解决方法

如下所述,您可以使用任何文本编辑器来创建格式为ipaddress resolved_hostname的文本文件,如下所示:
192.168.1.11    websrv1
192.168.1.12    websrv2
192.168.1.13    websrv3

不要忘记设置DNSLookup = 2.

I had expected to be able to create the file from existing
information,such as the Apache logs.

当然,你可以通过从Apache的access_log获取IP地址并使用一些工具来实现,例如:dig,host,resolveip,…来解析主机名,如下所示:

$awk '{ print $1 }' access_log | sort | uniq | \
while read ip; do \
    if [ `dig +short -x $ip | sed 's/\(.*\)\./\1/' | wc -l` -eq 1 ]; then \
        echo -e $ip\\t$(dig +short -x $ip | sed 's/\(.*\)\./\1/') >> dnscache.txt; \
    fi; \
done

要继续更新此文件,可以将上述命令作为cron作业运行,并仅过滤特定时间范围内的日志(等于cron interval).

猜你在找的Linux相关文章