This call:
if (!client->connect(details.server, details.port)) { // details.server is of the form: name.local
produces this log output:
[hostByName] request IP for: mk3pi.local
[hostByName] Host: mk3pi.local IP: 192.168.1.191 <- Correct
about a minute later:
[hostByName] request IP for: mk3pi.local
[hostByName] Host: mk3pi.local IP: 192.168.1.99 <- Incorrect
another minute later:
[hostByName] request IP for: mk3pi.local
[hostByName] Host: mk3pi.local IP: 192.168.1.191 <- Correct
Arduino 1.8.10, ESP8266 Core: 2.6.1
The incorrect values are rare, but do happen every day. I also noticed that if I use MDNS and enumerate all hosts with http services, I get different incomplete lists each time I try it. There are many (100 or so) devices on the local network.
Has anyone else experienced this?