What's new

ASUS firmware update changes dnsmasq config for local resolution?

  • SNBForums Code of Conduct

    SNBForums is a community for everyone, no matter what their level of experience.

    Please be tolerant and patient of others, especially newcomers. We are all here to share and learn!

    The rules are simple: Be patient, be nice, be helpful or be gone!

boeroboy

New Around Here
Hi - longtime ASUS user and I've been running fine for years but suddenly after a reboot all of my local host resolution began to fail. I've held off on Merlin with this one and currently on stock 3.0.0.4.386_45130. I think the update may have come in automatically since my last reboot and it seems like changes took effect where you need to specify the optional hostname in addition to the "name" which works by default in order to support any kind of DNS reference. In the sample here the only host that turns up in dnsmasq.conf is "nord" because I've explicitly set "Host Name (Optional)". This is strange as normally the standard "Client Name" or "name" would apply fine and even hosts that weren't manually assigned would be fine also.

screenshot1.jpg
dnsmasq.conf with MACs and Domain obfuscated shows only the one host getting a full record. Reboots just regenerate the same bad config. Did this change recently in stock firmware?
# cat /etc/dnsmasq.conf
pid-file=/var/run/dnsmasq.pid
user=nobody
bind-dynamic
interface=br0
interface=pptp*
no-dhcp-interface=pptp*
no-resolv
servers-file=/tmp/resolv.dnsmasq
no-poll
no-negcache
cache-size=1500
min-port=4096
domain=[MYDOMAIN]
expand-hosts
dhcp-range=lan,[MYRANGE],86400s
dhcp-option=lan,3,192.168.2.1
dhcp-option=lan,15,[MYDOMAIN]
dhcp-option=lan,44,0.0.0.0
ra-param=br0,10,600
enable-ra
quiet-ra
dhcp-range=lan,::,constructor:br0,ra-stateless,64,600
dhcp-option=lan,option6:23,[::]
dhcp-option=lan,option6:24,[MYDOMAIN]
dhcp-authoritative
address=/findasus.local/192.168.2.1
interface=br1
dhcp-range=br1,192.168.101.2,192.168.101.254,255.255.255.0,86400s
dhcp-option=br1,3,192.168.101.1
interface=br2
dhcp-range=br2,192.168.102.2,192.168.102.254,255.255.255.0,86400s
dhcp-option=br2,3,192.168.102.1
.... dhcp-hosts removed
dhcp-host=[MAC],set:[MAC],192.168.2.10
dhcp-host=[MAC],set:[MAC],192.168.2.200
dhcp-host=[MAC],set:[MAC],nord,192.168.2.50
dhcp-script=/sbin/dhcpc_lease
script-arp
 
Firmware version for different router models are going along, it may still help to tel what router model you talk about.
At first, automatic firmware update is as far as I know not on per default, the settings is here:
Advanced Settings > Administration > Firmware Update > Auto Firmware Update (ON or OFF)

Changes in the DHCP Server settings area introduced a while ago.
There is a Router Domain Name setting and the changes you noticed in the Manual Assigned IP area.
The first field "Client Name (MAC Address)" shall ideally be filled in using the drop list, otherwise type in a MAC Address.
The name shown there comes from the selected device, which doesn't have to be a real Host Name.
The Host Name field offers you a possibility to set a real Host Name in your network hierarchy.

First question is: do all clients work on your network and do they have access to the Internet?
 
Since you're running shell commands....

dhcp-lease-list

1643092678520.png


This should show you what's getting dhcp / arp info

Of course this output won't show you the info on static assignments. If you want that do an arp and it will spit back everything connected but not as verbose w/ names.
 
Thanks for the responses. The model is an AX89X that has been working fine for about a year now. I do have auto updates on and haven't knowingly rebooted it for a while. Connections started acting kind of funky so I rebooted it yesterday.

I've also converted the trusty AC68U I replaced into an AI Mesh node connected by Ethernet. Obviously that shouldn't matter here.

All devices connect to the internet fine it's just frustrating name resolution doesn't work unless I explicitly fill in the hostname option.

Does anyone know of any changelogs around the recent DHCP/DNSMASQ changes? I will dig.
 
Since you're running shell commands....

dhcp-lease-list
dhcp-lease-list isn't a valid command on Asus routers as they don't run isc-dhcpd, they run dnsmasq.

Does anyone know of any changelogs around the recent DHCP/DNSMASQ changes? I will dig.
Check the dnsmasq version number with dnsmasq -v. Merlin's current firmware uses version 2.86 which has some problems as is likely to be reverted.
 
Interesting. Stock is on 2.84 it seems. I can't find any release notes or changelogs for 45130
# dnsmasq -v
Dnsmasq version 2.84 Copyright (c) 2000-2021 Simon Kelley
Compile time options: IPv6 GNU-getopt no-RTC no-DBus no-UBus no-i18n no-IDN DHCP DHCPv6 no-Lua TFTP no-conntrack no-ipset no-auth no-c
ryptohash no-DNSSEC no-ID no-loop-detect no-inotify no-dumpfile

This software comes with ABSOLUTELY NO WARRANTY.
Dnsmasq is free software, and you are welcome to redistribute it
under the terms of the GNU General Public License, version 2 or 3.
It doesn't seem related to dnsmasq as much as the ASUS UI config of it. I can easily edit dnsmasq.conf or dnsmasq add in jffs to manually assign hostnames like usual. It just seems the ASUS generation of /etc/dnsmasq.conf based on the UI settings has changed.
 
I can't find any release notes or changelogs for 45130
Version 3.0.0.4.386.45130
2021/09/18 56.37 MBytes
ASUS RT-AX89X Firmware version 3.0.0.4.386.45130
GUI bug fixes.

Please unzip the firmware file first then check the MD5 code.
MD5: af6acfaf15faf6f54fb740831a94db1a

I notice that there's a new version out today:
Version 3.0.0.4.386.47027
2022/01/25 56.77 MBytes
ASUS RT-AX89X Firmware version 3.0.0.4.386.47027
1. Add 10G base-T IPG GUI option.
2. Fixed few wireless compatibility issues.
3. Fixed extend NSS not be synchornized to mesh node, and set to be default enabled.
4. Fixed open vpn related issues.
5. Fixed lets encrypt related issues.
6. Fixed AiMesh related issues.
7. Fixed minor GUI bugs and strings.
8. Update dual wan network monitor machanism.
9. Fixed AiCloud related issue.
10. Fixed DDNS related issues.

Security fixes:
1. Fixed authenticated stored Cross Site Scripting.
2. Fixed json/plc/port file traversal and stack overflow vulnerability.
3. Fixed httpd add line break to the command injection checklist.
4. Fixed httpd unauth DoS.
5. Fixed arbitrary file reading vulnerability.
6. Fixed HTTP smuggling.
7. Fixed stack overflow vulnerability.

Please unzip the firmware file first then check the MD5 code.
MD5:271638323e484a2640964edfed7586ea
 
It doesn't seem related to dnsmasq as much as the ASUS UI config of it. I can easily edit dnsmasq.conf or dnsmasq add in jffs to manually assign hostnames like usual. It just seems the ASUS generation of /etc/dnsmasq.conf based on the UI settings has changed.
Sorry, I thought you were saying this was a dnsmasq problem. Your posted dnsmasq.conf snippet looks fine. What were you expecting it to look like?
 
Sorry it's kind of confusing I suppose. The issue seems to be how the ASUS UI generates the static DNSMASQ config during boot changed. I'm just applying the new firmware today to compare. The host definitions haven't been getting their client name as a default hostname.
 
The host definitions haven't been getting their client name as a default hostname.
I wouldn't expect it to. I don't use stock firmware, I use Merlin's so maybe it's different.

But "Client Names" are not DNS names. They only exist in the router's GUI. If you don't specify a (DNS) hostname in the LAN - DHCP Server settings then it is down to the client to register its name in DNS. The router won't assign the Client Name as that might contain invalid characters, like spaces.
 
Crazy. Whatever it was the update to 3.0.0.4.386_47027 seems to have fixed it. I once again get name resolution on hosts I don't manually register via "hostname (Optional)". I don't know what it was but seems like it's back to normal now. Thanks all!
 

Latest threads

Sign Up For SNBForums Daily Digest

Get an update of what's new every day delivered to your mailbox. Sign up here!
Top