I had the same issue with the GL-AX1800. My setup was with pihole providing DHCP services.

I’ve attempted to write up what I did, with thanks to the previous posts.

The comments by @BradG regarding the check for the interface named lan still hold true, be careful it looks like lots would break.

GL-AX1800

Issue

  • Higher than expected cpu usage
  • dnsmasq is constantly restarting with the following message in the systemlog

Fri Mar 11 10:48:45 2022 user.notice gl_monitor: dhcp-range for lan network is missing, restart dnsmasq

Fri Mar 11 10:48:45 2022 daemon.info dnsmasq[20661]: started, version 2.80 cachesize 150

Resolution Steps

  1. Add a option ignore '1' to the config dhcp 'lan' section of /etc/config/dhcp. This appears to already be done for me…I made no changes.

    For example…

    config dhcp 'lan'
        option interface 'lan'
        option ignore '1'
    
  2. Edit /usr/bin/gl_monitor and locate the function restore_lan_dnsmasq(). Add the following before the logging message dhcp-range for lan network is missing, restart dnsmasq

    if [ "$(uci get dhcp.lan.ignore 2> /dev/null)" == 1 ]; then                             
      logger -t gl_monitor "ignore located, no action taken"
      return                                                
    fi                                                            
    

    For example…

    if [ -n "$brlan" ]; then                                          
            if [ "$(uci get dhcp.lan.ignore 2> /dev/null)" == 1 ]; then                             
                    logger -t gl_monitor "ignore located, no action taken"
                    return                                                
            fi                                                            
                                                                               
            logger -t gl_monitor "dhcp-range for lan network is missing, restart dnsmasq"
            /etc/init.d/dnsmasq restart                                                  
    fi                                                                                   
    
  3. Restart the monitor service /etc/init.d/gl_monitor restart

  4. Check the systemlog for Fri Mar 11 11:06:06 2022 user.notice gl_monitor: ignore located, no action taken