dnsproxy module converts query name to lowercase
Ubuntu 16.04. Knot 2.6.5 and 2.6.6 from the PPA.
When using the dnsproxy module, if a client makes a query with capital letters in the qname, the qname in Knot's query to the remote, and in the response to the client, are both in lowercase.
I'd guess it's not actually dnsproxy's fault, and capitalization is being normalized elsewhere in Knot, but I don't know the codebase.
This can make clients following draft-vixie-dnsext-dns0x20-00 unhappy.
For example:
$ dig +norecurse Mattnordhoff.Life @2600:3c02::f03c:91ff:fe0b:0e48
; <<>> DiG 9.10.3-P4-Ubuntu <<>> +norecurse Mattnordhoff.Life @2600:3c02::f03c:91ff:fe0b:0e48
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 14924
;; flags: qr aa; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 1680
;; QUESTION SECTION:
;mattnordhoff.life. IN A
;; AUTHORITY SECTION:
mattnordhoff.life. 3600 IN SOA ns7.mattnordhoff.net. hostmaster.mattnordhoff.com. 2018032000 3600 1800 2678401 3600
;; Query time: 1 msec
;; SERVER: 2600:3c02::f03c:91ff:fe0b:e48#53(2600:3c02::f03c:91ff:fe0b:e48)
;; WHEN: Thu Apr 12 17:26:49 UTC 2018
;; MSG SIZE rcvd: 129
tcpdump
showed:
IP6 2600:3c02::f03c:91ff:febc:a28b.59284 > 2600:3c02::f03c:91ff:fe0b:e48.53: 22271 [1au] A? Mattnordhoff.Life. (46)
IP6 2600:3c02::f03c:91ff:fe0b:e48.38049 > 2600:3c02::13:5241.53: 22271 [1au] A? mattnordhoff.life. (46)
IP6 2600:3c02::13:5241.53 > 2600:3c02::f03c:91ff:fe0b:e48.38049: 22271*- 0/6/1 (664)
IP6 2600:3c02::f03c:91ff:fe0b:e48.53 > 2600:3c02::f03c:91ff:febc:a28b.59284: 22271*- 0/6/1 (664)
Near-default knot.conf
:
server:
listen: 0.0.0.0@53
listen: ::@53
log:
- target: syslog
any: info
remote:
- id: ns9
address: 2600:3c02::13:5241
acl:
mod-dnsproxy:
- id: default
remote: ns9
template:
- id: default
global-module: mod-dnsproxy/default
zone: