I've setup my WiFi connection on my Galaxy S7 to use a custom DNS server. My PC runs a DNS server at 192.168.0.100 and serves a few A records:
home.local 192.168.0.100
shed.local 192.168.0.101
*.shed.local 192.168.0.102
When I run tracert on my PC (192.168.0.100) it correctly resolves home.local, shed.local and *.shed.local.
Using PingTools I ran tracert on my phone. home.local and shed.local both resolve correctly to their respective addresses.
However the *.shed.local yields:
Unknown host
Is there some difference in implementations of DNS between Windows and Android?
Windowsis that for some reason it accepts a wildcard answer from the DNS server (whereas thehostsfile also doesn't allow wildcards onWindows). To make it work on Android I had replace the single wildcard answer with a virtualCNAMErecord (based on the requested domain) pointing to anArecord which I add as a second answer. This record points to the actual IP. – Ropstah Dec 27 '17 at 12:06