如何从Kuberenetes嗅探所有DNS记录?

时间:2019-09-01 11:47:06

标签: kubernetes dns sniffer coredns

我想从kubernetes嗅探并提取所有DNS记录:clientIP,serverIP,date,QueryType等... 我已经设置了kuberenetes服务。 它在线且正在运行。我在那里创建了几个容器化的微服务,这些服务生成DNS查询(对外部地址的HTTP请求)。我怎么能闻到它呢?有没有办法提取带有DNS记录的日志?

2 个答案:

答案 0 :(得分:1)

鉴于您将CoreDNS用作群集DNS服务,则可以将其配置为log条查询,将错误等配置为stdout。从k8s 1.11版开始,CoreDNS可以作为kube-dns的替代版本,因此,如果您正在运行版本> 1.11的群集,则很有可能正在使用CoreDNS。

CoreDNS服务通常™️位于kube-system名称空间中,可以使用提供的ConfigMap重新配置。

有关如何将所有内容记录到stdout的示例,摘自README

. {
    ...
    log
    ...
}

重新配置CoreDNS后,可以使用以下命令查看Pod日志:

kubectl logs -n kube-system <POD NAME>

答案 1 :(得分:0)

我已经使用上面的答案成功提取了DNS日志。我的新问题是我看不到解析数据,例如RRDATA,例如解析的IP或其他响应信息?