Incorrect interface responds back to client #1553

Closed
opened 2026-03-04 01:22:45 -05:00 by deekerman · 1 comment
Owner

Originally created by @lenwar on GitHub (May 13, 2020).

Issue Details

I am running Adguard Home on a Ubiquity USG router (mips64 environment). In my environment I have a number of different VLANs with dedicated subnets. I use those to separate my IoT devices from my PC-network and from each other.

All devices use the same DNS-server entry
(( incomplete list of subnets/VLANs ))

192.168.25.0/24 (primary/PC LAN)
192.168.20.0/24 (guest LAN)
192.168.60.0/29 (Chromecast LAN)
192.168.60.8/29 (Home Assistant LAN)
...
192.168.60.32/27 (Other IoT Devices LAN)

Most (not all) networks talk to the DNS-server on 192.168.25.1 (which is open to most LANs that require DNS)
I currently have dnsmasq listening on port 53 (comes standard with the Ubiquity USG3 router) and forward the requests to AdGuard Home listening on port 5354. This however skews logging (can't see which device requests what in AdGuard Home, as everything comes from 'localhost'). For this reason I want to swap this round. (and point AdGuard Home to dnsmasq for the ARPA-addresses and local LAN-domain to point to my dnsmasq).

AdGuard Home listens on all interfaces (0.0.0.0) (as not all VLANs use the same DNS-entry and I can only select one entry to listen to)

When using dnsmasq as DNS server: A client in (for example) LAN 192.168.60.32/27 does a DNS-request to 192.168.25.1, then 192.168.25.1 responds.
When using AdGuard Home as DNS Server: A client in LAN 192.168.60.32/27 does a DNS-request to 192.168.25.1, then 192.168.25.33 responds, and a number of clients don't seem to like that behaviour (at least the Nintendo Switch and Chromecasts)

(( See screenshots below for filtered tcpdump output in Wireshark ))

  • Version of AdGuard Home server:
    • Version: v0.101.0
  • How did you setup DNS configuration:
    • Router
  • If it's a router or IoT, please write device model:
    • Ubiquity USG3
  • Operating system and version:
    • EdgeOS (uname -a Linux Router 3.10.107-UBNT #1 SMP Sat Feb 15 02:47:59 UTC 2020 mips64 GNU/Linux)

Expected Behavior

The DNS response from AdGuardHome should come from the interface it was requested to

Actual Behavior

The DNS response comes from the gateway address in the local subnet

Screenshots

Screenshot: When using AdGuard Home as DNS-server:

AdguardHome

When using dnsmasq as DNS-server:
dnsmasq

Additional Information

Originally created by @lenwar on GitHub (May 13, 2020). # Issue Details I am running Adguard Home on a Ubiquity USG router (mips64 environment). In my environment I have a number of different VLANs with dedicated subnets. I use those to separate my IoT devices from my PC-network and from each other. All devices use the same DNS-server entry (( incomplete list of subnets/VLANs )) 192.168.25.0/24 (primary/PC LAN) 192.168.20.0/24 (guest LAN) 192.168.60.0/29 (Chromecast LAN) 192.168.60.8/29 (Home Assistant LAN) ... 192.168.60.32/27 (Other IoT Devices LAN) Most (not all) networks talk to the DNS-server on 192.168.25.1 (which is open to most LANs that require DNS) I currently have dnsmasq listening on port 53 (comes standard with the Ubiquity USG3 router) and forward the requests to AdGuard Home listening on port 5354. This however skews logging (can't see which device requests what in AdGuard Home, as everything comes from 'localhost'). For this reason I want to swap this round. (and point AdGuard Home to dnsmasq for the ARPA-addresses and local LAN-domain to point to my dnsmasq). AdGuard Home listens on all interfaces (0.0.0.0) (as not all VLANs use the same DNS-entry and I can only select one entry to listen to) When using dnsmasq as DNS server: A client in (for example) LAN 192.168.60.32/27 does a DNS-request to 192.168.25.1, then 192.168.25.1 responds. When using AdGuard Home as DNS Server: A client in LAN 192.168.60.32/27 does a DNS-request to 192.168.25.1, then 192.168.25.33 responds, and a number of clients don't seem to like that behaviour (at least the Nintendo Switch and Chromecasts) (( See screenshots below for filtered tcpdump output in Wireshark )) <!--- Please include all relevant details about the environment you experienced the bug in --> * **Version of AdGuard Home server:** * Version: v0.101.0 * **How did you setup DNS configuration:** * Router * **If it's a router or IoT, please write device model:** * Ubiquity USG3 * **Operating system and version:** * EdgeOS (uname -a Linux Router 3.10.107-UBNT #1 SMP Sat Feb 15 02:47:59 UTC 2020 mips64 GNU/Linux) ### Expected Behavior The DNS response from AdGuardHome should come from the interface it was requested to ### Actual Behavior The DNS response comes from the gateway address in the local subnet ### Screenshots <!-- If applicable, add screenshots to help explain your problem. --> <details><summary>Screenshot:</summary> When using AdGuard Home as DNS-server: ![AdguardHome](https://user-images.githubusercontent.com/3773186/81814790-735e9e80-9529-11ea-9bf0-b93a22d87445.jpg) When using dnsmasq as DNS-server: ![dnsmasq](https://user-images.githubusercontent.com/3773186/81814821-7e193380-9529-11ea-87ed-159e9755d027.jpg) <!--- drag and drop, upload or paste your screenshot to this area--> </details> ### Additional Information <!-- Add any other context about the problem here. -->
deekerman 2026-03-04 01:22:45 -05:00
  • closed this issue
  • added the
    duplicate
    label
Author
Owner

@ameshkov commented on GitHub (May 18, 2020):

@lenwar could you please check version 0.102? This bug has been fixed there.

@ameshkov commented on GitHub (May 18, 2020): @lenwar could you please check version 0.102? This bug has been fixed there.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/AdGuardHome#1553
No description provided.