Thanks for the reply - always worth suggesting the obvious stuff sometimes as we all miss that sort of thing going down rabbit holes :)
I have performed the usual ipconfig /flushdns on the windows clients, and ensured the DNS server is the firewall itself. unfortunately it still behaves wrongly!
Running the nslookup debug switch seems to show it completely bypassing the firewall DNS and going straight out to Cloudflare DNS (what the firewall nameservers are set to):
C:\Users\Ian>nslookup -d
------------
Got answer:
HEADER:
opcode = QUERY, id = 1, rcode = NXDOMAIN
header flags: response, auth. answer, want recursion, recursion avail.
questions = 1, answers = 0, authority records = 1, additional = 0
QUESTIONS:
1.100.50.10.in-addr.arpa, type = PTR, class = IN
AUTHORITY RECORDS:
-> 10.in-addr.arpa
ttl = 10800 (3 hours)
primary name server = localhost
responsible mail addr = nobody.invalid
serial = 1
refresh = 3600 (1 hour)
retry = 1200 (20 mins)
expire = 604800 (7 days)
default TTL = 10800 (3 hours)
------------
Default Server: UnKnown
Address: 10.50.100.1
> teamviewer.com
Server: UnKnown
Address: 10.50.100.1
------------
Got answer:
HEADER:
opcode = QUERY, id = 2, rcode = NOERROR
header flags: response, want recursion, recursion avail.
questions = 1, answers = 0, authority records = 1, additional = 0
QUESTIONS:
teamviewer.com.int.intlan.uk, type = A, class = IN
AUTHORITY RECORDS:
-> intlan.uk
ttl = 1800 (30 mins)
primary name server = maria.ns.cloudflare.com
responsible mail addr = dns.cloudflare.com
serial = 2401961462
refresh = 10000 (2 hours 46 mins 40 secs)
retry = 2400 (40 mins)
expire = 604800 (7 days)
default TTL = 1800 (30 mins)
------------
------------
Got answer:
HEADER:
opcode = QUERY, id = 3, rcode = NOERROR
header flags: response, want recursion, recursion avail.
questions = 1, answers = 0, authority records = 1, additional = 0
QUESTIONS:
teamviewer.com.int.intlan.uk, type = AAAA, class = IN
AUTHORITY RECORDS:
-> intlan.uk
ttl = 1800 (30 mins)
primary name server = maria.ns.cloudflare.com
responsible mail addr = dns.cloudflare.com
serial = 2401961462
refresh = 10000 (2 hours 46 mins 40 secs)
retry = 2400 (40 mins)
expire = 604800 (7 days)
default TTL = 1800 (30 mins)
------------
------------
Got answer:
HEADER:
opcode = QUERY, id = 4, rcode = NOERROR
header flags: response, want recursion, recursion avail.
questions = 1, answers = 1, authority records = 0, additional = 0
QUESTIONS:
teamviewer.com, type = A, class = IN
ANSWERS:
-> teamviewer.com
internet address = 52.223.21.92
ttl = 86400 (1 day)
------------
Non-authoritative answer:
------------
Got answer:
HEADER:
opcode = QUERY, id = 5, rcode = NOERROR
header flags: response, want recursion, recursion avail.
questions = 1, answers = 1, authority records = 0, additional = 0
QUESTIONS:
teamviewer.com, type = AAAA, class = IN
ANSWERS:
-> teamviewer.com
AAAA IPv6 address = 2600:9000:a61f:6da7:367b:7826:b8c1:d0a8
ttl = 86400 (1 day)
------------
Name: teamviewer.com
Addresses: 2600:9000:a61f:6da7:367b:7826:b8c1:d0a8
52.223.21.92
>
I have performed the usual ipconfig /flushdns on the windows clients, and ensured the DNS server is the firewall itself. unfortunately it still behaves wrongly!
Running the nslookup debug switch seems to show it completely bypassing the firewall DNS and going straight out to Cloudflare DNS (what the firewall nameservers are set to):
C:\Users\Ian>nslookup -d
------------
Got answer:
HEADER:
opcode = QUERY, id = 1, rcode = NXDOMAIN
header flags: response, auth. answer, want recursion, recursion avail.
questions = 1, answers = 0, authority records = 1, additional = 0
QUESTIONS:
1.100.50.10.in-addr.arpa, type = PTR, class = IN
AUTHORITY RECORDS:
-> 10.in-addr.arpa
ttl = 10800 (3 hours)
primary name server = localhost
responsible mail addr = nobody.invalid
serial = 1
refresh = 3600 (1 hour)
retry = 1200 (20 mins)
expire = 604800 (7 days)
default TTL = 10800 (3 hours)
------------
Default Server: UnKnown
Address: 10.50.100.1
> teamviewer.com
Server: UnKnown
Address: 10.50.100.1
------------
Got answer:
HEADER:
opcode = QUERY, id = 2, rcode = NOERROR
header flags: response, want recursion, recursion avail.
questions = 1, answers = 0, authority records = 1, additional = 0
QUESTIONS:
teamviewer.com.int.intlan.uk, type = A, class = IN
AUTHORITY RECORDS:
-> intlan.uk
ttl = 1800 (30 mins)
primary name server = maria.ns.cloudflare.com
responsible mail addr = dns.cloudflare.com
serial = 2401961462
refresh = 10000 (2 hours 46 mins 40 secs)
retry = 2400 (40 mins)
expire = 604800 (7 days)
default TTL = 1800 (30 mins)
------------
------------
Got answer:
HEADER:
opcode = QUERY, id = 3, rcode = NOERROR
header flags: response, want recursion, recursion avail.
questions = 1, answers = 0, authority records = 1, additional = 0
QUESTIONS:
teamviewer.com.int.intlan.uk, type = AAAA, class = IN
AUTHORITY RECORDS:
-> intlan.uk
ttl = 1800 (30 mins)
primary name server = maria.ns.cloudflare.com
responsible mail addr = dns.cloudflare.com
serial = 2401961462
refresh = 10000 (2 hours 46 mins 40 secs)
retry = 2400 (40 mins)
expire = 604800 (7 days)
default TTL = 1800 (30 mins)
------------
------------
Got answer:
HEADER:
opcode = QUERY, id = 4, rcode = NOERROR
header flags: response, want recursion, recursion avail.
questions = 1, answers = 1, authority records = 0, additional = 0
QUESTIONS:
teamviewer.com, type = A, class = IN
ANSWERS:
-> teamviewer.com
internet address = 52.223.21.92
ttl = 86400 (1 day)
------------
Non-authoritative answer:
------------
Got answer:
HEADER:
opcode = QUERY, id = 5, rcode = NOERROR
header flags: response, want recursion, recursion avail.
questions = 1, answers = 1, authority records = 0, additional = 0
QUESTIONS:
teamviewer.com, type = AAAA, class = IN
ANSWERS:
-> teamviewer.com
AAAA IPv6 address = 2600:9000:a61f:6da7:367b:7826:b8c1:d0a8
ttl = 86400 (1 day)
------------
Name: teamviewer.com
Addresses: 2600:9000:a61f:6da7:367b:7826:b8c1:d0a8
52.223.21.92
>
"