Issues trying to install Adguard home

I have been running into issues trying to setup adguard home.

I am runnin gon OpenWRT One ( LuCI Master (25.123.45854~98f7f2a) / OpenWrt SNAPSHOT (r29064-696ad7b1aa))

I have tried to follow the tutorial on https://openwrt.org/docs/guide-user/services/dns/adguard-home but also tried to look without any success at various posts on the forum.

When setting it up, I keep running, after the install, into the issue that devices cannot connect anymore to the network (but I can still work from the computer I started the install from).

Before the install my config is:

/etc/config/network

config interface 'loopback'
        option device 'lo'
        option proto 'static'
        option ipaddr '127.0.0.1'
        option netmask '255.0.0.0'

config globals 'globals'
        option ula_prefix 'fd1c:d3da:921c::/48'
        option packet_steering '1'

config interface 'wan'
        option device 'eth0'
        option proto 'dhcp'
        option peerdns '0'
        list dns '1.1.1.1'
        list dns '1.0.0.1'

config interface 'wan6'
        option device 'eth0'
        option proto 'dhcpv6'
        option reqaddress 'try'
        option reqprefix 'auto'
        option norelease '1'
        option peerdns '0'
        list dns '2606:4700:4700::1111'
        list dns '2606:4700:4700::1001'

config device
        option name 'br-lan'
        option type 'bridge'
        list ports 'eth1'

config bridge-vlan
        option device 'br-lan'
        option vlan '76'
        list ports 'eth1'

config interface 'lan'
        option device 'br-lan.76'
        option proto 'static'
        list ipaddr '192.168.7.1/24'


config interface 'guest'
        option device 'br-lan.12'
        option proto 'static'
        list ipaddr '192.168.3.1/24'

config interface 'iot'
        option device 'br-lan.6'
        option proto 'static'
        list ipaddr '192.168.6.1/24'

and /etc/config/dhcp


config dnsmasq
        option domainneeded '1'
        option localise_queries '1'
        option rebind_protection '1'
        option rebind_localhost '1'
        option local '/lan/'
        option domain 'lan'
        option expandhosts '1'
        option cachesize '1000'
        option authoritative '1'
        option readethers '1'
        option leasefile '/tmp/dhcp.leases'
        option resolvfile '/tmp/resolv.conf.d/resolv.conf.auto'
        option localservice '1'
        option ednspacket_max '1232'

config dhcp 'lan'
        option interface 'lan'
        option start '100'
        option limit '150'
        option leasetime '12h'
        option dhcpv4 'server'
        option dhcpv6 'server'
        option ra 'server'
        list ra_flags 'managed-config'
        list ra_flags 'other-config'
        list dhcp_option '6,1.1.1.1'

config dhcp 'wan'
        option interface 'wan'
        option ignore '1'

config odhcpd 'odhcpd'
        option maindhcp '0'
        option leasefile '/tmp/hosts/odhcpd'
        option leasetrigger '/usr/sbin/odhcpd-update'
        option loglevel '4'

config dhcp 'guest'
        option interface 'guest'
        option start '100'
        option limit '150'
        option leasetime '1h'

config dhcp 'iot'
        option interface 'iot'
        option start '100'
        option limit '150'
        option leasetime '1h'

Now when trying to install using the instructions on https://openwrt.org/docs/guide-user/services/dns/adgu

running:

  • apk update
  • apk add adguardhome
  • service adguardhome enable
  • service adguardhome start
  • Then running the setup script
  • I then configure at IP (in my case): http://192.168.7.1:3000
  • Here I want to change All Interfaced to port 8080 I think the first time it did work (but I can't quite remember anymore. Now I get the error message validating ports: listen tcp 0.0.0.0:8080: bind: address already in use so I've set it to 8081
  • and DNS Server "All Interfaces" set to port 53
  • I set the admin username and password and press Next.

I then arrive on the Adguard admin page, and things seem to work:

but now any device that now try to access the network fails.

  • From the wifi, the devices just do not connect to the network at all.
  • From Ethernet ports, I get an IP address 169.254.88.xxx with no connection

my /etc/adguardhome.yaml :

http:
  pprof:
    port: 6060
    enabled: false
  address: 0.0.0.0:8081
  session_ttl: 720h
users:
  - name: guard_admin
    password: xxxxxx
auth_attempts: 5
block_auth_min: 15
http_proxy: ""
language: ""
theme: auto
dns:
  bind_hosts:
    - 0.0.0.0
  port: 53
  anonymize_client_ip: false
  ratelimit: 20
  ratelimit_subnet_len_ipv4: 24
  ratelimit_subnet_len_ipv6: 56
  ratelimit_whitelist: []
  refuse_any: true
  upstream_dns:
    - https://dns10.quad9.net/dns-query
  upstream_dns_file: ""
  bootstrap_dns:
    - 9.9.9.10
    - 149.112.112.10
    - 2620:fe::10
    - 2620:fe::fe:10
  fallback_dns: []
  upstream_mode: load_balance
  fastest_timeout: 1s
  allowed_clients: []
  disallowed_clients: []
  blocked_hosts:
    - version.bind
    - id.server
    - hostname.bind
  trusted_proxies:
    - 127.0.0.0/8
    - ::1/128
  cache_size: 4194304
  cache_ttl_min: 0
  cache_ttl_max: 0
  cache_optimistic: false
  bogus_nxdomain: []
  aaaa_disabled: false
  enable_dnssec: false
  edns_client_subnet:
    custom_ip: ""
    enabled: false
    use_custom: false
  max_goroutines: 300
  handle_ddr: true
  ipset: []
  ipset_file: ""
  bootstrap_prefer_ipv6: false
  upstream_timeout: 10s
  private_networks: []
  use_private_ptr_resolvers: false
  local_ptr_upstreams: []
  use_dns64: false
 dns64_prefixes: []
  serve_http3: false
  use_http3_upstreams: false
  serve_plain_dns: true
  hostsfile_enabled: true
  pending_requests:
    enabled: true
tls:
  enabled: false
  server_name: ""
  force_https: false
  port_https: 443
  port_dns_over_tls: 853
  port_dns_over_quic: 853
  port_dnscrypt: 0
  dnscrypt_config_file: ""
  allow_unencrypted_doh: false
  certificate_chain: ""
  private_key: ""
  certificate_path: ""
  private_key_path: ""
  strict_sni_check: false
querylog:
  dir_path: ""
  ignored: []
  interval: 2160h
  size_memory: 1000
  enabled: true
  file_enabled: true
statistics:
  dir_path: ""
  ignored: []
  interval: 24h
  enabled: true
filters:
  - enabled: true
    url: https://adguardteam.github.io/HostlistsRegistry/assets/filter_1.txt
    name: AdGuard DNS filter
    id: 1
  - enabled: false
    url: https://adguardteam.github.io/HostlistsRegistry/assets/filter_2.txt
    name: AdAway Default Blocklist
    id: 2
whitelist_filters: []
user_rules: []
dhcp:
  enabled: false
  interface_name: ""
  local_domain_name: lan
  dhcpv4:
    gateway_ip: ""
    subnet_mask: ""
    range_start: ""
    range_end: ""
    lease_duration: 86400
    icmp_timeout_msec: 1000
    options: []
  dhcpv6:
    range_start: ""
    lease_duration: 86400
    ra_slaac_only: false
    ra_allow_slaac: false
filtering:
  blocking_ipv4: ""
  blocking_ipv6: ""
  blocked_services:
    schedule:
      time_zone: UTC
    ids: []
  protection_disabled_until: null
  safe_search:
    enabled: false
    bing: true
    duckduckgo: true
    ecosia: true
    google: true
    pixabay: true
    yandex: true
    youtube: true
  blocking_mode: default
  parental_block_host: family-block.dns.adguard.com
  safebrowsing_block_host: standard-block.dns.adguard.com
  rewrites: []
  safe_fs_patterns:
    - /mnt/nvme0n1/adguardhome/userfilters/*
  safebrowsing_cache_size: 1048576
  safesearch_cache_size: 1048576
  parental_cache_size: 1048576
  cache_time: 30
  filters_update_interval: 24
  blocked_response_ttl: 10
  filtering_enabled: true
  parental_enabled: false
  safebrowsing_enabled: false
  protection_enabled: true
clients:
  runtime_sources:
    whois: true
    arp: true
    rdns: true
    dhcp: true
    hosts: true
  persistent: []
log:
  enabled: true
  file: ""
  max_backups: 0
  max_size: 100
  max_age: 3
  compress: false
  local_time: false
  verbose: false
os:
  group: ""
  user: ""
  rlimit_nofile: 0
schema_version: 29

I am very new to this. So bare with me, I am learning.
It probably is a silly error on my part. But after trying many times and going back to my previous backup I haven't been able to find what is not right.

The network configuration file looks incomplete.

My first guess would be that even though you ran the setup script, something went wrong, the dnsmasq listening port didn't change and the service couldn't start.

Please post the output of uci show dhcp.

Check the logs with logread - you may be having OOM's or dnsmasq crashes.

Here it is:

Before trying to setup adguard (working):

uci show dhcp
dhcp.@dnsmasq[0]=dnsmasq
dhcp.@dnsmasq[0].domainneeded='1'
dhcp.@dnsmasq[0].localise_queries='1'
dhcp.@dnsmasq[0].rebind_protection='1'
dhcp.@dnsmasq[0].rebind_localhost='1'
dhcp.@dnsmasq[0].local='/lan/'
dhcp.@dnsmasq[0].domain='lan'
dhcp.@dnsmasq[0].expandhosts='1'
dhcp.@dnsmasq[0].cachesize='1000'
dhcp.@dnsmasq[0].authoritative='1'
dhcp.@dnsmasq[0].readethers='1'
dhcp.@dnsmasq[0].leasefile='/tmp/dhcp.leases'
dhcp.@dnsmasq[0].resolvfile='/tmp/resolv.conf.d/resolv.conf.auto'
dhcp.@dnsmasq[0].localservice='1'
dhcp.@dnsmasq[0].ednspacket_max='1232'
dhcp.lan=dhcp
dhcp.lan.interface='lan'
dhcp.lan.start='100'
dhcp.lan.limit='150'
dhcp.lan.leasetime='12h'
dhcp.lan.dhcpv4='server'
dhcp.lan.dhcpv6='server'
dhcp.lan.ra='server'
dhcp.lan.ra_flags='managed-config' 'other-config'
dhcp.lan.dhcp_option='6,1.1.1.1'
dhcp.wan=dhcp
dhcp.wan.interface='wan'
dhcp.wan.ignore='1'
dhcp.odhcpd=odhcpd
dhcp.odhcpd.maindhcp='0'
dhcp.odhcpd.leasefile='/tmp/hosts/odhcpd'
dhcp.odhcpd.leasetrigger='/usr/sbin/odhcpd-update'
dhcp.odhcpd.loglevel='4'
dhcp.guest=dhcp
dhcp.guest.interface='guest'
dhcp.guest.start='100'
dhcp.guest.limit='150'
dhcp.guest.leasetime='1h'
dhcp.iot=dhcp
dhcp.iot.interface='iot'
dhcp.iot.start='100'
dhcp.iot.limit='150'
dhcp.iot.leasetime='1h'

and when I have the issue (after trying to setup adguard:

uci show dhcp
dhcp.@dnsmasq[0]=dnsmasq
dhcp.@dnsmasq[0].domainneeded='1'
dhcp.@dnsmasq[0].localise_queries='1'
dhcp.@dnsmasq[0].rebind_protection='1'
dhcp.@dnsmasq[0].rebind_localhost='1'
dhcp.@dnsmasq[0].local='/lan/'
dhcp.@dnsmasq[0].domain='lan'
dhcp.@dnsmasq[0].expandhosts='1'
dhcp.@dnsmasq[0].cachesize='0'
dhcp.@dnsmasq[0].authoritative='1'
dhcp.@dnsmasq[0].readethers='1'
dhcp.@dnsmasq[0].leasefile='/tmp/dhcp.leases'
dhcp.@dnsmasq[0].resolvfile='/tmp/resolv.conf.d/resolv.conf.auto'
dhcp.@dnsmasq[0].localservice='1'
dhcp.@dnsmasq[0].ednspacket_max='1232'
dhcp.@dnsmasq[0].port='54'
dhcp.@dnsmasq[0].noresolv='1'
dhcp.lan=dhcp
dhcp.lan.interface='lan'
dhcp.lan.start='100'
dhcp.lan.limit='150'
dhcp.lan.leasetime='12h'
dhcp.lan.dhcpv4='server'
dhcp.lan.dhcpv6='server'
dhcp.lan.ra='server'
dhcp.lan.ra_flags='managed-config' 'other-config'
dhcp.lan.dhcp_option='3,' '6,' '15,lan'
dhcp.lan.dns=''
dhcp.wan=dhcp
dhcp.wan.interface='wan'
dhcp.wan.ignore='1'
dhcp.odhcpd=odhcpd
dhcp.odhcpd.maindhcp='0'
dhcp.odhcpd.leasefile='/tmp/hosts/odhcpd'
dhcp.odhcpd.leasetrigger='/usr/sbin/odhcpd-update'
dhcp.odhcpd.loglevel='4'
dhcp.guest=dhcp
dhcp.guest.interface='guest'
dhcp.guest.start='100'
dhcp.guest.limit='150'
dhcp.guest.leasetime='1h'
dhcp.iot=dhcp
dhcp.iot.interface='iot'
dhcp.iot.start='100'
dhcp.iot.limit='150'
dhcp.iot.leasetime='1h'

Yes you are right:

Here is an extract of the log:

Mon May 26 07:43:16 2025 daemon.err AdGuardHome[2976]: 2025/05/26 05:43:16.091376 [info] AdGuard Home, version v0.108.0-a.1101+cb854d2c
Mon May 26 07:43:16 2025 daemon.err AdGuardHome[2976]: 2025/05/26 05:43:16.091441 [info] AdGuard Home is running as a service
Mon May 26 07:43:16 2025 daemon.err AdGuardHome[2976]: 2025/05/26 05:43:16.372210 [info] tls_manager: using default ciphers
Mon May 26 07:43:16 2025 daemon.err AdGuardHome[2976]: 2025/05/26 05:43:16.433509 [info] Initializing auth module: /opt/AdGuardHome/data/sessions.db
Mon May 26 07:43:16 2025 daemon.err AdGuardHome[2976]: 2025/05/26 05:43:16.474800 [info] auth: initialized.  users:1  sessions:1
Mon May 26 07:43:16 2025 daemon.err AdGuardHome[2976]: 2025/05/26 05:43:16.478022 [info] webapi: initializing
Mon May 26 07:43:16 2025 kern.info kernel: [   33.531982] br-lan: port 2(phy1-ap0) entered blocking state
Mon May 26 07:43:16 2025 kern.info kernel: [   33.537569] br-lan: port 2(phy1-ap0) entered forwarding state
Mon May 26 07:43:16 2025 daemon.notice netifd: Network device 'phy1-ap0' link is up
Mon May 26 07:43:16 2025 daemon.notice netifd: Network device 'eth0' link is up
Mon May 26 07:43:16 2025 daemon.notice netifd: Interface 'wan' has link connectivity
Mon May 26 07:43:16 2025 daemon.notice netifd: Interface 'wan' is setting up now
Mon May 26 07:43:16 2025 kern.info kernel: [   33.580145] mtk_soc_eth 15100000.ethernet eth0: Link is Up - 1Gbps/Full - flow control off
Mon May 26 07:43:16 2025 daemon.notice netifd: Interface 'wan6' has link connectivity
Mon May 26 07:43:16 2025 daemon.notice netifd: Interface 'wan6' is setting up now
Mon May 26 07:43:16 2025 daemon.notice hostapd: phy1-ap0: interface state HT_SCAN->ENABLED
Mon May 26 07:43:16 2025 daemon.notice hostapd: phy1-ap0: AP-ENABLED
Mon May 26 07:43:16 2025 daemon.notice netifd: wan (4187): udhcpc: started, v1.37.0
Mon May 26 07:43:16 2025 daemon.err odhcp6c[4190]: Failed to send RS (Address not available)
Mon May 26 07:43:17 2025 daemon.notice netifd: wan (4187): udhcpc: broadcasting discover
Mon May 26 07:43:17 2025 daemon.err odhcp6c[4190]: Failed to send SOLICIT message to ff02::1:2 (Address not available)
Mon May 26 07:43:17 2025 daemon.err AdGuardHome[2976]: 2025/05/26 05:43:17.845448 [info] dnsproxy: upstream mode is set mode=load_balance
Mon May 26 07:43:17 2025 daemon.err AdGuardHome[2976]: 2025/05/26 05:43:17.850645 [info] dnsproxy: cache enabled size=4096
Mon May 26 07:43:17 2025 daemon.err AdGuardHome[2976]: 2025/05/26 05:43:17.854906 [info] dnsproxy: max goroutines is set count=300
Mon May 26 07:43:17 2025 daemon.err AdGuardHome[2976]: 2025/05/26 05:43:17.860362 [info] dnsproxy: ratelimit is enabled rps=20 ipv4_subnet_mask_len=24 ipv6_subnet_mask_len=56
Mon May 26 07:43:17 2025 daemon.err AdGuardHome[2976]: 2025/05/26 05:43:17.860434 [info] dnsproxy: server will refuse requests of type any
Mon May 26 07:43:17 2025 daemon.err AdGuardHome[2976]: 2025/05/26 05:43:17.860470 [info] dnsproxy: upstream mode is set mode=load_balance
Mon May 26 07:43:17 2025 daemon.err AdGuardHome[2976]: 2025/05/26 05:43:17.860501 [info] dnsproxy: cache enabled size=4194304
Mon May 26 07:43:17 2025 daemon.err AdGuardHome[2976]: 2025/05/26 05:43:17.861626 [info] dnsproxy: max goroutines is set count=300
Mon May 26 07:43:17 2025 daemon.err AdGuardHome[2976]: 2025/05/26 05:43:17.891544 [info] addrproc: processing addresses
Mon May 26 07:43:17 2025 daemon.err AdGuardHome[2976]: 2025/05/26 05:43:17.897793 [info] permcheck: warning: found unexpected permissions type=directory path=/opt/AdGuardHome perm=0777 want=0700
Mon May 26 07:43:17 2025 daemon.err AdGuardHome[2976]: 2025/05/26 05:43:17.898212 [info] webapi: AdGuard Home is available at the following addresses:
Mon May 26 07:43:17 2025 daemon.err AdGuardHome[2976]: 2025/05/26 05:43:17.920259 [info] go to http://127.0.0.1:8080
Mon May 26 07:43:17 2025 daemon.err AdGuardHome[2976]: 2025/05/26 05:43:17.920563 [info] go to http://[::1]:8080
Mon May 26 07:43:17 2025 daemon.err AdGuardHome[2976]: 2025/05/26 05:43:17.920595 [info] go to http://[fe80::2205:b6ff:feff:de20%eth0]:8080
Mon May 26 07:43:17 2025 daemon.err AdGuardHome[2976]: 2025/05/26 05:43:17.920612 [info] go to http://[fe80::2205:b6ff:feff:de21%br-lan]:8080
Mon May 26 07:43:17 2025 daemon.err AdGuardHome[2976]: 2025/05/26 05:43:17.920629 [info] go to http://192.168.7.1:8080
Mon May 26 07:43:17 2025 daemon.err AdGuardHome[2976]: 2025/05/26 05:43:17.920644 [info] go to http://[fe80::2205:b6ff:feff:de21%br-lan.76]:8080
Mon May 26 07:43:17 2025 daemon.err AdGuardHome[2976]: 2025/05/26 05:43:17.920658 [info] go to http://192.168.3.1:8080
Mon May 26 07:43:17 2025 daemon.err AdGuardHome[2976]: 2025/05/26 05:43:17.920698 [info] go to http://[fe80::2205:b6ff:feff:de21%br-lan.12]:8080
Mon May 26 07:43:17 2025 daemon.err AdGuardHome[2976]: 2025/05/26 05:43:17.920712 [info] go to http://192.168.6.1:8080
Mon May 26 07:43:17 2025 daemon.err AdGuardHome[2976]: 2025/05/26 05:43:17.920728 [info] go to http://[fe80::2205:b6ff:feff:de21%br-lan.6]:8080
Mon May 26 07:43:17 2025 daemon.err AdGuardHome[2976]: 2025/05/26 05:43:17.920741 [info] go to http://192.168.22.1:8080
Mon May 26 07:43:17 2025 daemon.err AdGuardHome[2976]: 2025/05/26 05:43:17.920757 [info] go to http://[fe80::2205:b6ff:feff:de21%br-lan.22]:8080
Mon May 26 07:43:17 2025 daemon.err AdGuardHome[2976]: 2025/05/26 05:43:17.920770 [info] go to http://192.168.99.1:8080
Mon May 26 07:43:17 2025 daemon.err AdGuardHome[2976]: 2025/05/26 05:43:17.920810 [info] go to http://[fe80::2205:b6ff:feff:de21%br-lan.99]:8080
Mon May 26 07:43:17 2025 daemon.err AdGuardHome[2976]: 2025/05/26 05:43:17.934590 [info] starting plain server server=plain addr=0.0.0.0:8080
Mon May 26 07:43:20 2025 daemon.err AdGuardHome[2976]: 2025/05/26 05:43:20.076780 [info] dnsproxy: starting dns proxy server
Mon May 26 07:43:20 2025 daemon.notice netifd: wan (4187): udhcpc: broadcasting discover
Mon May 26 07:43:20 2025 daemon.err AdGuardHome[2976]: 2025/05/26 05:43:20.089141 [info] dnsproxy: creating udp server socket addr=0.0.0.0:54
Mon May 26 07:43:20 2025 daemon.err AdGuardHome[2976]: 2025/05/26 05:43:20.103930 [info] dnsproxy: listening to udp addr=[::]:54
Mon May 26 07:43:20 2025 daemon.err AdGuardHome[2976]: 2025/05/26 05:43:20.105986 [info] dnsproxy: creating tcp server socket addr=0.0.0.0:54
Mon May 26 07:43:20 2025 daemon.err AdGuardHome[2976]: 2025/05/26 05:43:20.108404 [info] dnsproxy: warning: binding attempt=1 err="listen tcp 0.0.0.0:54: bind: address already in use"
Mon May 26 07:43:20 2025 daemon.err AdGuardHome[2976]: 2025/05/26 05:43:20.126479 [error] closing query log: flushing log buffer: nothing to write to a file
Mon May 26 07:43:20 2025 daemon.err AdGuardHome[2976]: 2025/05/26 05:43:20.126569 [fatal] starting dns server: configuring listeners: listening on tcp addr 0.0.0.0:54: listening to tcp socket: listen tcp 0.0.0.0:54: bind: address already in use
Mon May 26 07:43:22 2025 daemon.warn odhcpd[2295]: No default route present, overriding ra_lifetime to 0!
Mon May 26 07:43:23 2025 daemon.notice netifd: wan (4187): udhcpc: broadcasting discover
Mon May 26 07:43:23 2025 daemon.notice netifd: wan (4187): udhcpc: broadcasting select for 192.168.1.80, server 192.168.1.1
Mon May 26 07:43:24 2025 daemon.notice netifd: wan (4187): udhcpc: lease of 192.168.1.80 obtained from 192.168.1.1, lease time 259200
Mon May 26 07:43:24 2025 daemon.notice netifd: Interface 'wan' is now up
Mon May 26 07:43:24 2025 daemon.err odhcpd[2295]: Invalid dns value configured for interface 'lan'
Mon May 26 07:43:24 2025 user.notice firewall: Reloading firewall due to ifup of wan (eth0)
Mon May 26 07:43:25 2025 daemon.warn odhcpd[2295]: No default route present, overriding ra_lifetime to 0!
Mon May 26 07:43:25 2025 daemon.err AdGuardHome[4579]: 2025/05/26 05:43:25 [info] AdGuard Home, version v0.108.0-a.1101+cb854d2c
Mon May 26 07:43:25 2025 daemon.err AdGuardHome[4579]: 2025/05/26 05:43:25 [info] service: control action: run
Mon May 26 07:43:25 2025 daemon.err AdGuardHome[4579]: 2025/05/26 05:43:25.219277 [info] AdGuard Home, version v0.108.0-a.1101+cb854d2c
Mon May 26 07:43:25 2025 daemon.err AdGuardHome[4579]: 2025/05/26 05:43:25.219324 [info] AdGuard Home is running as a service
Mon May 26 07:43:25 2025 daemon.err AdGuardHome[4579]: 2025/05/26 05:43:25.235737 [info] tls_manager: using default ciphers
Mon May 26 07:43:25 2025 daemon.err AdGuardHome[4579]: 2025/05/26 05:43:25.243082 [info] Initializing auth module: /opt/AdGuardHome/data/sessions.db
Mon May 26 07:43:25 2025 daemon.err AdGuardHome[4579]: 2025/05/26 05:43:25.243662 [info] auth: initialized.  users:1  sessions:1
Mon May 26 07:43:25 2025 daemon.err AdGuardHome[4579]: 2025/05/26 05:43:25.243964 [info] webapi: initializing
Mon May 26 07:43:25 2025 daemon.err AdGuardHome[4579]: 2025/05/26 05:43:25.314232 [info] dnsproxy: upstream mode is set mode=load_balance
Mon May 26 07:43:25 2025 daemon.err AdGuardHome[4579]: 2025/05/26 05:43:25.314327 [info] dnsproxy: cache enabled size=4096
Mon May 26 07:43:25 2025 daemon.err AdGuardHome[4579]: 2025/05/26 05:43:25.314387 [info] dnsproxy: max goroutines is set count=300
Mon May 26 07:43:25 2025 daemon.err AdGuardHome[4579]: 2025/05/26 05:43:25.314593 [info] dnsproxy: ratelimit is enabled rps=20 ipv4_subnet_mask_len=24 ipv6_subnet_mask_len=56
Mon May 26 07:43:25 2025 daemon.err AdGuardHome[4579]: 2025/05/26 05:43:25.314648 [info] dnsproxy: server will refuse requests of type any
Mon May 26 07:43:25 2025 daemon.err AdGuardHome[4579]: 2025/05/26 05:43:25.314683 [info] dnsproxy: upstream mode is set mode=load_balance
Mon May 26 07:43:25 2025 daemon.err AdGuardHome[4579]: 2025/05/26 05:43:25.314710 [info] dnsproxy: cache enabled size=4194304
Mon May 26 07:43:25 2025 daemon.err AdGuardHome[4579]: 2025/05/26 05:43:25.314743 [info] dnsproxy: max goroutines is set count=300
Mon May 26 07:43:25 2025 daemon.err AdGuardHome[4579]: 2025/05/26 05:43:25.318001 [info] addrproc: processing addresses
Mon May 26 07:43:25 2025 daemon.err AdGuardHome[4579]: 2025/05/26 05:43:25.318411 [info] permcheck: warning: found unexpected permissions type=directory path=/opt/AdGuardHome perm=0777 want=0700
Mon May 26 07:43:25 2025 daemon.err AdGuardHome[4579]: 2025/05/26 05:43:25.318625 [info] webapi: AdGuard Home is available at the following addresses:
Mon May 26 07:43:25 2025 daemon.err AdGuardHome[4579]: 2025/05/26 05:43:25.332464 [info] go to http://127.0.0.1:8080
Mon May 26 07:43:25 2025 daemon.err AdGuardHome[4579]: 2025/05/26 05:43:25.332922 [info] go to http://[::1]:8080
Mon May 26 07:43:25 2025 daemon.err AdGuardHome[4579]: 2025/05/26 05:43:25.333174 [info] go to http://192.168.1.80:8080
Mon May 26 07:43:25 2025 daemon.err AdGuardHome[4579]: 2025/05/26 05:43:25.333381 [info] go to http://[fe80::2205:b6ff:feff:de20%eth0]:8080
Mon May 26 07:43:25 2025 daemon.err AdGuardHome[4579]: 2025/05/26 05:43:25.333573 [info] go to http://[fe80::2205:b6ff:feff:de21%br-lan]:8080
Mon May 26 07:43:25 2025 daemon.err AdGuardHome[4579]: 2025/05/26 05:43:25.333804 [info] go to http://192.168.7.1:8080
Mon May 26 07:43:25 2025 daemon.err AdGuardHome[4579]: 2025/05/26 05:43:25.333834 [info] go to http://[fe80::2205:b6ff:feff:de21%br-lan.76]:8080
Mon May 26 07:43:25 2025 daemon.err AdGuardHome[4579]: 2025/05/26 05:43:25.333849 [info] go to http://192.168.3.1:8080
Mon May 26 07:43:25 2025 daemon.err AdGuardHome[4579]: 2025/05/26 05:43:25.333866 [info] go to http://[fe80::2205:b6ff:feff:de21%br-lan.12]:8080
Mon May 26 07:43:25 2025 daemon.err AdGuardHome[4579]: 2025/05/26 05:43:25.333880 [info] go to http://192.168.6.1:8080
Mon May 26 07:43:25 2025 daemon.err AdGuardHome[4579]: 2025/05/26 05:43:25.333896 [info] go to http://[fe80::2205:b6ff:feff:de21%br-lan.6]:8080
Mon May 26 07:43:25 2025 daemon.err AdGuardHome[4579]: 2025/05/26 05:43:25.333939 [info] go to http://192.168.22.1:8080
Mon May 26 07:43:25 2025 daemon.err AdGuardHome[4579]: 2025/05/26 05:43:25.333954 [info] go to http://[fe80::2205:b6ff:feff:de21%br-lan.22]:8080
Mon May 26 07:43:25 2025 daemon.err AdGuardHome[4579]: 2025/05/26 05:43:25.333969 [info] go to http://192.168.99.1:8080
Mon May 26 07:43:25 2025 daemon.err AdGuardHome[4579]: 2025/05/26 05:43:25.333983 [info] go to http://[fe80::2205:b6ff:feff:de21%br-lan.99]:8080
Mon May 26 07:43:25 2025 daemon.err AdGuardHome[4579]: 2025/05/26 05:43:25.337661 [info] starting plain server server=plain addr=0.0.0.0:8080
Mon May 26 07:43:27 2025 daemon.info dnsmasq[1]: exiting on receipt of SIGTERM
Mon May 26 07:43:27 2025 daemon.info hostapd: phy0-ap0: STA 36:6d:4e:b7:46:de IEEE 802.11: authenticated
Mon May 26 07:43:27 2025 daemon.info hostapd: phy0-ap0: STA 36:6d:4e:b7:46:de IEEE 802.11: associated (aid 1)
Mon May 26 07:43:27 2025 daemon.err procd: Got unexpected signal 1
Mon May 26 07:43:27 2025 daemon.crit dnsmasq[1]: bad IP address at line 102 of /var/etc/dnsmasq.conf.cfg01411c
Mon May 26 07:43:27 2025 daemon.crit dnsmasq[1]: FAILED to start up
Mon May 26 07:43:27 2025 daemon.notice hostapd: phy0-ap0: AP-STA-CONNECTED 36:6d:4e:b7:46:de auth_alg=open
Mon May 26 07:43:27 2025 daemon.info hostapd: phy0-ap0: STA 36:6d:4e:b7:46:de WPA: pairwise key handshake completed (RSN)
Mon May 26 07:43:27 2025 daemon.notice hostapd: phy0-ap0: EAPOL-4WAY-HS-COMPLETED 36:6d:4e:b7:46:de
Mon May 26 07:43:27 2025 daemon.err AdGuardHome[4579]: 2025/05/26 05:43:27.596643 [info] dnsproxy: starting dns proxy server
Mon May 26 07:43:27 2025 daemon.err AdGuardHome[4579]: 2025/05/26 05:43:27.596774 [info] dnsproxy: creating udp server socket addr=0.0.0.0:54
Mon May 26 07:43:27 2025 daemon.err AdGuardHome[4579]: 2025/05/26 05:43:27.597198 [info] dnsproxy: listening to udp addr=[::]:54
Mon May 26 07:43:27 2025 daemon.err AdGuardHome[4579]: 2025/05/26 05:43:27.597262 [info] dnsproxy: creating tcp server socket addr=0.0.0.0:54
Mon May 26 07:43:27 2025 daemon.err AdGuardHome[4579]: 2025/05/26 05:43:27.597517 [info] dnsproxy: listening to tcp addr=[::]:54
Mon May 26 07:43:27 2025 daemon.err AdGuardHome[4579]: 2025/05/26 05:43:27.604192 [info] dnsproxy: entering udp listener loop addr=[::]:54
Mon May 26 07:43:27 2025 daemon.err AdGuardHome[4579]: 2025/05/26 05:43:27.616532 [info] dnsproxy: entering listener loop proto=tcp addr=[::]:54
Mon May 26 07:43:29 2025 daemon.err procd: Got unexpected signal 1
Mon May 26 07:43:29 2025 daemon.crit dnsmasq[1]: bad IP address at line 102 of /var/etc/dnsmasq.conf.cfg01411c
Mon May 26 07:43:29 2025 daemon.crit dnsmasq[1]: FAILED to start up
Mon May 26 07:43:29 2025 daemon.err AdGuardHome[4803]: 2025/05/26 05:43:29 INFO received signal signal=terminated
Mon May 26 07:43:29 2025 daemon.err AdGuardHome[4803]: 2025/05/26 05:43:29 [info] stopping AdGuard Home
Mon May 26 07:43:29 2025 daemon.err AdGuardHome[4803]: 2025/05/26 05:43:29 [info] stopped
Mon May 26 07:43:30 2025 daemon.err AdGuardHome[4803]: 2025/05/26 05:43:30.053116 [info] AdGuard Home, version 0.107.61
Mon May 26 07:43:30 2025 daemon.err AdGuardHome[4803]: 2025/05/26 05:43:30.221657 [info] tls_manager: using default ciphers
Mon May 26 07:43:30 2025 daemon.err AdGuardHome[4803]: 2025/05/26 05:43:30.287012 [info] Initializing auth module: /mnt/nvme0n1/adguardhome/data/sessions.db
Mon May 26 07:43:30 2025 daemon.err AdGuardHome[4803]: 2025/05/26 05:43:30.317500 [info] auth: initialized.  users:1  sessions:2
Mon May 26 07:43:30 2025 daemon.err AdGuardHome[4803]: 2025/05/26 05:43:30.320493 [info] webapi: initializing
Mon May 26 07:43:30 2025 daemon.err AdGuardHome[4803]: 2025/05/26 05:43:30.525947 [info] dnsproxy: upstream mode is set mode=load_balance
Mon May 26 07:43:30 2025 daemon.err AdGuardHome[4803]: 2025/05/26 05:43:30.529975 [info] dnsproxy: cache enabled size=4096
Mon May 26 07:43:30 2025 daemon.err AdGuardHome[4803]: 2025/05/26 05:43:30.536235 [info] dnsproxy: max goroutines is set count=300
Mon May 26 07:43:30 2025 daemon.err AdGuardHome[4803]: 2025/05/26 05:43:30.543084 [info] dnsproxy: ratelimit is enabled rps=20 ipv4_subnet_mask_len=24 ipv6_subnet_mask_len=56
Mon May 26 07:43:30 2025 daemon.err AdGuardHome[4803]: 2025/05/26 05:43:30.543157 [info] dnsproxy: server will refuse requests of type any
Mon May 26 07:43:30 2025 daemon.err AdGuardHome[4803]: 2025/05/26 05:43:30.543195 [info] dnsproxy: upstream mode is set mode=load_balance
Mon May 26 07:43:30 2025 daemon.err AdGuardHome[4803]: 2025/05/26 05:43:30.543226 [info] dnsproxy: cache enabled size=4194304
Mon May 26 07:43:30 2025 daemon.err AdGuardHome[4803]: 2025/05/26 05:43:30.545670 [info] dnsproxy: max goroutines is set count=300
Mon May 26 07:43:30 2025 daemon.err AdGuardHome[4803]: 2025/05/26 05:43:30.580013 [info] addrproc: processing addresses
Mon May 26 07:43:30 2025 daemon.err AdGuardHome[4803]: 2025/05/26 05:43:30.582536 [info] permcheck: warning: found unexpected permissions type=directory path=/mnt/nvme0n1/adguardhome perm=0755 want=0700

just for fun, bind AGH only to 127.0.0.1 and nothing else, have dnsmasq use it as an upstream DNS server.
there are some drawbacks, but I'd like to see if AGH would start using that kind of setup.

uci del dhcp.lan.dhcp_option
uci del dhcp.lan.dns
uci add_list dhcp.lan.dhcp_option='6,192.168.7.1'
uci add_list dhcp.guest.dhcp_option='6,192.168.3.1'
uci add_list dhcp.iot.dhcp_option='6,192.168.6.1'
uci commit dhcp
service dnsmasq restart

Double check that AGH is listening on port 53 to avoid conflict with dnsmasq.

1 Like

When running the commands (I added the 2 other vlans that were not mentioned in my previous extract) I got:

root@OpenWrt-One-Master:~# uci add_list dhcp.lan.dhcp_option='6,192.168.7.1'
root@OpenWrt-One-Master:~# uci add_list dhcp.guest.dhcp_option='6,192.168.3.1'
root@OpenWrt-One-Master:~# uci add_list dhcp.iot.dhcp_option='6,192.168.6.1'
root@OpenWrt-One-Master:~# uci add_list dhcp.media.dhcp_option='6,192.168.22.1'
root@OpenWrt-One-Master:~# uci add_list dhcp.sdr.dhcp_option='6,192.168.99.1'
root@OpenWrt-One-Master:~# uci commit dhcp
root@OpenWrt-One-Master:~# service dnsmasq restart
udhcpc: started, v1.37.0
udhcpc: broadcasting discover
udhcpc: no lease, failing
udhcpc: started, v1.37.0
udhcpc: broadcasting discover
udhcpc: no lease, failing
udhcpc: started, v1.37.0
udhcpc: broadcasting discover
udhcpc: no lease, failing
udhcpc: started, v1.37.0
udhcpc: broadcasting discover
udhcpc: no lease, failing
udhcpc: started, v1.37.0
udhcpc: broadcasting discover
udhcpc: no lease, failing
root@OpenWrt-One-Master:~#

then I checked in /etc/adguardhome.yaml
and yes AGH port is at 53:

while in OpenWrt it is at 54:

and when looking at the log ( logread ) if I try to connect a device via wifi (it fails) I get:

Mon May 26 18:42:00 2025 daemon.info hostapd: phy0-ap1: STA 80:7d:3a:89:fe:cc IEEE 802.11: authenticated
Mon May 26 18:42:00 2025 daemon.info hostapd: phy0-ap1: STA 80:7d:3a:89:fe:cc IEEE 802.11: associated (aid 4)
Mon May 26 18:42:01 2025 daemon.notice hostapd: phy0-ap1: AP-STA-CONNECTED 80:7d:3a:89:fe:cc auth_alg=open
Mon May 26 18:42:01 2025 daemon.info hostapd: phy0-ap1: STA 80:7d:3a:89:fe:cc WPA: pairwise key handshake completed (RSN)
Mon May 26 18:42:01 2025 daemon.notice hostapd: phy0-ap1: EAPOL-4WAY-HS-COMPLETED 80:7d:3a:89:fe:cc
Mon May 26 18:42:04 2025 daemon.notice hostapd: phy0-ap1: AP-STA-DISCONNECTED e0:5f:45:4b:f0:96
Mon May 26 18:42:04 2025 daemon.info hostapd: phy0-ap1: STA e0:5f:45:4b:f0:96 IEEE 802.11: disassociated
Mon May 26 18:42:06 2025 daemon.info hostapd: phy0-ap1: STA e0:5f:45:4b:f0:96 IEEE 802.11: deauthenticated due to inactivity (timer DEAUTH/REMOVE)
Mon May 26 18:42:07 2025 daemon.info hostapd: phy1-ap0: STA 4a:c0:fc:4c:72:4f IEEE 802.11: authenticated
Mon May 26 18:42:07 2025 daemon.info hostapd: phy1-ap0: STA 4a:c0:fc:4c:72:4f IEEE 802.11: associated (aid 4)
Mon May 26 18:42:07 2025 daemon.notice hostapd: phy1-ap0: AP-STA-CONNECTED 4a:c0:fc:4c:72:4f auth_alg=open
Mon May 26 18:42:07 2025 daemon.info hostapd: phy1-ap0: STA 4a:c0:fc:4c:72:4f WPA: pairwise key handshake completed (RSN)
Mon May 26 18:42:07 2025 daemon.notice hostapd: phy1-ap0: EAPOL-4WAY-HS-COMPLETED 4a:c0:fc:4c:72:4f
Mon May 26 18:42:08 2025 daemon.notice hostapd: phy0-ap1: STA e0:5f:45:4b:f0:96 IEEE 802.11: did not acknowledge authentication response
Mon May 26 18:42:08 2025 daemon.info hostapd: phy0-ap1: STA e0:5f:45:4b:f0:96 IEEE 802.11: associated (aid 3)
Mon May 26 18:42:08 2025 daemon.notice hostapd: phy0-ap1: AP-STA-CONNECTED e0:5f:45:4b:f0:96 auth_alg=open
Mon May 26 18:42:08 2025 daemon.info hostapd: phy0-ap1: STA e0:5f:45:4b:f0:96 WPA: pairwise key handshake completed (RSN)
Mon May 26 18:42:08 2025 daemon.notice hostapd: phy0-ap1: EAPOL-4WAY-HS-COMPLETED e0:5f:45:4b:f0:96
Mon May 26 18:42:08 2025 daemon.warn odhcpd[2285]: No default route present, overriding ra_lifetime to 0!

and when I connect a laptop to the lan via ethernet it gives:

Mon May 26 18:44:06 2025 daemon.notice hostapd: phy0-ap1: EAPOL-4WAY-HS-COMPLETED 48:3f:da:93:6f:fb
Mon May 26 18:44:08 2025 daemon.notice hostapd: phy0-ap1: AP-STA-DISCONNECTED e0:5f:45:4b:f0:96
Mon May 26 18:44:08 2025 daemon.info hostapd: phy0-ap1: STA e0:5f:45:4b:f0:96 IEEE 802.11: disassociated
Mon May 26 18:44:10 2025 daemon.info hostapd: phy0-ap1: STA e0:5f:45:4b:f0:96 IEEE 802.11: deauthenticated due to inactivity (timer DEAUTH/REMOVE)
Mon May 26 18:44:10 2025 daemon.info hostapd: phy0-ap1: STA e0:5f:45:4b:f0:96 IEEE 802.11: authenticated
Mon May 26 18:44:10 2025 daemon.info hostapd: phy0-ap1: STA e0:5f:45:4b:f0:96 IEEE 802.11: associated (aid 2)
Mon May 26 18:44:10 2025 daemon.notice hostapd: phy0-ap1: AP-STA-CONNECTED e0:5f:45:4b:f0:96 auth_alg=open
Mon May 26 18:44:10 2025 daemon.info hostapd: phy0-ap1: STA e0:5f:45:4b:f0:96 WPA: pairwise key handshake completed (RSN)
Mon May 26 18:44:10 2025 daemon.notice hostapd: phy0-ap1: EAPOL-4WAY-HS-COMPLETED e0:5f:45:4b:f0:96
Mon May 26 18:44:25 2025 daemon.info hostapd: phy0-ap1: STA 80:7d:3a:89:fe:cc IEEE 802.11: authenticated
Mon May 26 18:44:25 2025 daemon.info hostapd: phy0-ap1: STA 80:7d:3a:89:fe:cc IEEE 802.11: associated (aid 4)
Mon May 26 18:44:25 2025 daemon.notice hostapd: phy0-ap1: AP-STA-CONNECTED 80:7d:3a:89:fe:cc auth_alg=open
Mon May 26 18:44:25 2025 daemon.info hostapd: phy0-ap1: STA 80:7d:3a:89:fe:cc WPA: pairwise key handshake completed (RSN)
Mon May 26 18:44:25 2025 daemon.notice hostapd: phy0-ap1: EAPOL-4WAY-HS-COMPLETED 80:7d:3a:89:fe:cc
Mon May 26 18:44:57 2025 daemon.notice hostapd: phy0-ap1: AP-STA-DISCONNECTED 80:7d:3a:89:fe:cc
Mon May 26 18:44:57 2025 daemon.info hostapd: phy0-ap1: STA 80:7d:3a:89:fe:cc IEEE 802.11: disassociated
Mon May 26 18:44:58 2025 daemon.info hostapd: phy0-ap1: STA 80:7d:3a:89:fe:cc IEEE 802.11: deauthenticated due to inactivity (timer DEAUTH/REMOVE)
Mon May 26 18:45:01 2025 daemon.warn odhcpd[2285]: No default route present, overriding ra_lifetime to 0!
Mon May 26 18:45:05 2025 daemon.warn odhcpd[2285]: No default route present, overriding ra_lifetime to 0!
Mon May 26 18:45:07 2025 daemon.notice hostapd: phy0-ap1: AP-STA-DISCONNECTED 48:3f:da:93:6f:fb
Mon May 26 18:45:07 2025 daemon.info hostapd: phy0-ap1: STA 48:3f:da:93:6f:fb IEEE 802.11: disassociated
Mon May 26 18:45:08 2025 daemon.info hostapd: phy0-ap1: STA 48:3f:da:93:6f:fb IEEE 802.11: deauthenticated due to inactivity (timer DEAUTH/REMOVE)
Mon May 26 18:45:10 2025 daemon.warn odhcpd[2285]: No default route present, overriding ra_lifetime to 0!
Mon May 26 18:45:13 2025 daemon.notice hostapd: phy0-ap1: AP-STA-DISCONNECTED e0:5f:45:4b:f0:96
Mon May 26 18:45:13 2025 daemon.info hostapd: phy0-ap1: STA e0:5f:45:4b:f0:96 IEEE 802.11: disassociated
Mon May 26 18:45:14 2025 daemon.info hostapd: phy0-ap1: STA e0:5f:45:4b:f0:96 IEEE 802.11: deauthenticated due to inactivity (timer DEAUTH/REMOVE)

and to answer @frollic 's question. If I understand correctly your request:

just for fun, bind AGH only to 127.0.0.1 and nothing else, have dnsmasq use it as an upstream DNS server.
there are some drawbacks, but I'd like to see if AGH would start using that kind of setup.

I have changed in /etc/adguardhome.yaml

    bind_hosts:
      - 0.0.0.0

to

   bind_hosts:
     - 127.0.0.1

I then did AdGuardHome -s restart

but no change to the situation

So I reverted to the previous 0.0.0.0

I'm curious: why do you want to use AGH when native adblocking solutions for OpenWrt exist, much more lightweight and easy to set up?

From was I have checked, it has more flexibility in configuring the filters.

Could you say what specifically? I'm a developer of adblock-lean, btw, so I'm curious what it has that adblock-lean doesn't, and would maybe consider implementing that.

As mentioned in my initial post, I am new to this and still learning, so my approach might not be entirely accurate.

I have been exploring the various ad-blocking options available on the OpenWrt Wiki and also considered setting up Pi-hole on one of my spare Raspberry Pi devices.

I understand Adblock-lean as an efficient and lightweight solution. However, what drew me to AdGuard Home is its dashboard for statistics, which (to my knowledge) is not a feature of Adblock-lean.

For devices with limited capacity, Adblock-lean is indeed a sensible choice. However, I am running on a OpenWrt one with an extra SSD for additional memory, which led me to think I could consider a less lightweight option.

1 Like

Which statistics specifically are you interested in? Anything besides total count of blocked DNS requests?

I just finally got it to work.

when looking at the post Set DHCP to use custom DNS server on localhost it seemed that it was the same issue. I saw the mention:

Then for Network>Interfaces>LAN>DHCP Server>Advanced Settings>DHCP-Options
You need to enter 6,192.168.1.1,192.168.1.1

When looking from Luci in Interfaces/lan/DHCP Server/Advanced Settings I had 6,192.168.7.1

So I replaced it with 6,192.168.7.1,192.168.7.1

I repeated the same for the other interfaces with the corresponding vlan addresses

Now everything is working fine and Adguard Home is filtering correctly.

Thanks for the help above it got me in the right direction.

1 Like

As I am new to this, for now I want to be able to see a bit what is being blocked.

So I have been looking at the Top queried domains for the last 24 hours and mostly at the Top blocked domains for the last 24 hours based on the test pages I have been using.

Maybe in the future I will try adblock-lean If I feel I just want to have something lighter.
But for now I am happy I managed to fix what I had wrong with this one.

1 Like

This topic was automatically closed 10 days after the last reply. New replies are no longer allowed.