dnsmasq:如何在查询日志中获取 conntrack 号码?

dnsmasq:如何在查询日志中获取 conntrack 号码?

我目前正在做一个项目(为学校做),目的是建立一个程序来分析 Docker-Swarm 和 Kubernetes 中使用的 DNS 查询。为了测试目的,我收到了一些(据说是 dnsmasq)日志。它们看起来像这样:


Jun 20 01:01:02 dnsmasq[979]: **461642923** 193.x.y.z/40887 query[AAAA] www.example.com from 193.x.y.z

Jun 20 01:01:02 dnsmasq[979]: **461642923** 193.x.y.z/40887 forwarded www.example.com to 193.x.y.z

Jun 20 01:01:02 dnsmasq[979]: **461642923** 193.x.y.z/40887 reply www.example.com is <CNAME>

Jun 20 01:01:02 dnsmasq[979]: **461642923** 193.x.y.z/40887 reply example.com is NODATA-IPv6

如您所见,有一个 conntrack 编号(大胆的) 在这些日志中,用于分析查询。由于我无法访问这些查询的来源,我尝试自己设置一个 dnsmasq 缓存。虽然我的查询日志不包含 conntrack 编号,但它运行良好。

  • 在我的 CentOS 7 机器上,我可以看到 dnsmasq 运行如下:

    2940?S 0:00 /usr/local/sbin/dnsmasq --log-queries --log-facility=/tmp/test42.txt--conntrack

  • 从日志文件中我可以看出,dnsmasq 是在 conntrack 可用的情况下编译的:

    12 月 13 日 20:22:22 dnsmasq[3111]: 编译时选项:IPv6 GNU-getopt no-DBus no-i18n no-IDN DHCP DHCPv6 no-Lua TFTP连接跟踪ipset auth no-DNSSEC 循环检测 inotify

我仍然没有在查询日志中获得连接跟踪号码:


Dec 13 20:37:40 dnsmasq[3111]: reply ftp.uni-stuttgart.de is 129.69.8.112
Dec 13 20:37:40 dnsmasq[3111]: reply mirror.hostnet.nl is 91.184.8.79
Dec 13 20:37:40 dnsmasq[3111]: reply mirror.veriteknik.net.tr is 94.103.33.100
Dec 13 20:37:40 dnsmasq[3111]: reply pkg.adfinis-sygroup.ch is 95.128.34.165

我将非常感激任何关于这些数字来自哪里或我必须将哪些数据链接到我的日志才能获得如上所示的结果的想法。

答案1

使用 --log-queries="extra" 启动 dnsmasq 将产生此输出。

相关内容