You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I have a three-node cluster consisting of Nomad, Consul, and Vault.
I also use DNS forwarding of the .consul domain on my internal DNS servers.
While chasing down a DNS forwarder issue, specifically with vault.service.consul, I discovered that DNS answers are CNAMEs, and I do not get all the results of my unsealed Vault servers.
Queries against nomad.service.consul and consul.service.consul works fine.
I stood up a test BIND server during my troubleshooting, and I will show an example query below.
I believe this is a bug:
A query against vault.service.consul should output all unsealed healthy instances as documented here
I believe the results should be A and not CNAME records. Documentation that I could find shows the same.
Let me know if you require any further information.
$ named-checkconf -p
options {
directory "/var/cache/bind";
listen-on-v6 {
"any";
};
dnssec-validation no;
forwarders {
1.1.1.1;
9.9.9.9;
};
};
zone "consul" IN {
type forward;
forward only;
forwarders {
192.168.100.10 port 8600;
};
};
zone "." {
type hint;
file "/usr/share/dns/root.hints";
};
zone "localhost" {
type master;
file "/etc/bind/db.local";
};
zone "127.in-addr.arpa" {
type master;
file "/etc/bind/db.127";
};
zone "0.in-addr.arpa" {
type master;
file "/etc/bind/db.0";
};
zone "255.in-addr.arpa" {
type master;
file "/etc/bind/db.255";
};
$ dig @192.168.100.10 -p 8600 vault.service.consul
; <<>> DiG 9.18.28-0ubuntu0.24.04.1-Ubuntu <<>> @192.168.100.10 -p 8600 vault.service.consul
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 29059
;; flags: qr aa rd; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1
;; WARNING: recursion requested but not available
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 1232
;; QUESTION SECTION:
;vault.service.consul. IN A
;; ANSWER SECTION:
vault.service.consul. 0 IN CNAME prod-core-services03.
;; Query time: 1 msec
;; SERVER: 192.168.100.10#8600(192.168.100.10) (UDP)
;; WHEN: Mon Nov 18 21:40:59 UTC 2024
;; MSG SIZE rcvd: 83
$ dig @127.0.0.1 vault.service.consul
; <<>> DiG 9.18.28-0ubuntu0.24.04.1-Ubuntu <<>> @127.0.0.1 vault.service.consul
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 7892
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 1232
; COOKIE: 59186158b326193101000000673bb48caa5ecc2764a9541a (good)
;; QUESTION SECTION:
;vault.service.consul. IN A
;; ANSWER SECTION:
vault.service.consul. 0 IN CNAME prod-core-services03.
;; AUTHORITY SECTION:
. 2654 IN SOA a.root-servers.net. nstld.verisign-grs.com. 2024111801 1800 900 604800 86400
;; Query time: 10 msec
;; SERVER: 127.0.0.1#53(127.0.0.1) (UDP)
;; WHEN: Mon Nov 18 21:41:32 UTC 2024
;; MSG SIZE rcvd: 186
Reproduction Steps
Create a cluster with three server nodes
Unseal all Vault instances
Configure DNS forwarding
Perform a DNS query against vault.fqdn yields an NXDOMAIN response
Perform a dig against vault.service.consul yields one CNAME out of the total of three unsealed Vault instances.
Overview of the Issue
I have a three-node cluster consisting of Nomad, Consul, and Vault.
I also use DNS forwarding of the .consul domain on my internal DNS servers.
While chasing down a DNS forwarder issue, specifically with vault.service.consul, I discovered that DNS answers are CNAMEs, and I do not get all the results of my unsealed Vault servers.
Queries against nomad.service.consul and consul.service.consul works fine.
I stood up a test BIND server during my troubleshooting, and I will show an example query below.
I believe this is a bug:
Let me know if you require any further information.
Reproduction Steps
Consul info for both Client and Server
Client info
Server info
Operating system and Environment details
Ubuntu 24.10
Vault 1.18
Consul 1.20
Unsealed Vault instances
Log Fragments
The text was updated successfully, but these errors were encountered: