Noticed that NextDNS was reporting old hostnames in the logs. For example old device names (devices that changed hostnames), devices that were definitely no longer on the network, or IPs that were matched to the wrong hostnames.
The culprit is how EdgeOS deals with its hosts file. Basically it just keeps all the old hosts added and just adds a new line at the end of the file.
NextDNS searches for the first valid entry in that file, which is always going to be an older record.
So the simplest solution I found was the turn off
hostfile-update every so often. This clears the hosts file.
ssh into the device, run
configure, and then run these commands:
set service dhcp-server hostfile-update disable commit set service dhcp-server hostfile-update enable commit save
Update 22 Jun ’23:
Be sure to restart NextDNS, or it won’t actually publish the up-to-date client hostnames.
sudo /config/nextdns/nextdns restart