我正在尝试解析 kubernetes pod 中的 mx 记录。dnsjava 库在容器外的 mac 和 ubuntu 上进行测试时工作,但部署后返回一个空数组。
k8s 或 docker 映像中需要提供什么才能使其正常工作?
见https://github.com/dnsjava/dnsjava
编辑 1
Record[] records;
try {
records = new Lookup(mailDomain, Type.MX).run();
} catch (TextParseException e) {
throw new IllegalStateException(e);
}
if (records != null && records.length > 0) {
for (final Record record : records) {
MXRecord mx = (MXRecord) record;
//do something with mx...
}
} else {
log.warn("Failed to determine MX record for {}", mailDomain);
}
log.warn
总是在 K8s 中执行。docker 镜像是openjdk:11-jdk-slim
Debian。我刚刚在 Docker 之外的 Debian 上进行了测试,它也能正常工作。