Page 1 of 1
Linux Name Resolution (DNS) Failure
Posted: Fri 30. Apr 2021, 19:51
by nburkitt
Hi.
I'm using a PEAK PCAN-USB FD interface on an embedded device running Ubuntu 18.04 Linux. It works beautifully, but as soon as the device is connected, DNS queries begin to fail. After some research, I've come to believe that this is due to the systemd network service incorporating the CAN bus into the name resolution algorithm.
Obviously this isn't a PEAK issue, but does anyone on the forum have any insight into how to prevent or work around this problem?
Thanks,
-Nick
Re: Linux Name Resolution (DNS) Failure
Posted: Mon 3. May 2021, 07:58
by M.Heidemann
Hello Nick,
Which driver are you currently using with your PCAN-USB FD?
Are you using the mainline drivers included in the kernel or are you
using the PCAN-Linux driver package?
If you use the latter, we suspect your use the NetDev variant?
Please let us know.
Best Regards
Marvin
Re: Linux Name Resolution (DNS) Failure
Posted: Mon 3. May 2021, 10:16
by M.Heidemann
Furthermore,
Usually the CAN interfaces are not set up to handle DNS,
a output for "resolvectl status" would show a CAN-Interface configured like this:
Code: Select all
Link 4 (can0)
Current Scopes: none
DefaultRoute setting: no
LLMNR setting: yes
MulticastDNS setting: no
DNSOverTLS setting: no
DNSSEC setting: no
DNSSEC supported: no
Please check wether or not the CAN-interface is set in
/etc/systemd via:
and
Please report back to us regarding this.
Best Regards
Marvin
Re: Linux Name Resolution (DNS) Failure
Posted: Mon 3. May 2021, 19:58
by nburkitt
Hi Marvin.
Thanks for the response.
I'm using the built-in drivers.
The information returned by "systemd-resolve --status" includes this section:
Code: Select all
Link 9 (can0)
Current Scopes: none
LLMNR setting: yes
MulticastDNS setting: no
DNSSEC setting: no
DNSSEC supported: no
For what it's worth, this is identical to the section for eth0, an interface for which name resolution works correctly when the CAN interface is not attached:
Code: Select all
Link 2 (eth0)
Current Scopes: none
LLMNR setting: yes
MulticastDNS setting: no
DNSSEC setting: no
DNSSEC supported: no
"find /etc/systemd/ -name "can*"" produces no output.
"grep -R can0 /etc/systemd/" produces no output (other than "grep: /etc/systemd/system/multi-user.target.wants/lm-sensors.service: No such file or directory").
Thanks again,
-Nick
Re: Linux Name Resolution (DNS) Failure
Posted: Tue 4. May 2021, 09:59
by M.Heidemann
Hello,
Is the output for
regarding Link2 (Eth0) the same,
if the PCAN-USB FD is not connected?
Please report back to us reagrding this.
Best Regards
Marvin
Re: Linux Name Resolution (DNS) Failure
Posted: Tue 4. May 2021, 18:25
by nburkitt
Hi Marvin.
Yes, the output when the PCAN-USB FD is connected is identical to that when it is not connected, except for the addition of the (can0) section. The output for both conditions is below.
PEAK CAN-FD not attached:
Code: Select all
# systemd-resolve --status
Global
DNS Servers: 192.168.0.1
DNS Domain: attlocal.net
DNSSEC NTA: 10.in-addr.arpa
16.172.in-addr.arpa
168.192.in-addr.arpa
17.172.in-addr.arpa
18.172.in-addr.arpa
19.172.in-addr.arpa
20.172.in-addr.arpa
21.172.in-addr.arpa
22.172.in-addr.arpa
23.172.in-addr.arpa
24.172.in-addr.arpa
25.172.in-addr.arpa
26.172.in-addr.arpa
27.172.in-addr.arpa
28.172.in-addr.arpa
29.172.in-addr.arpa
30.172.in-addr.arpa
31.172.in-addr.arpa
corp
d.f.ip6.arpa
home
internal
intranet
lan
local
private
test
Link 3 (sit0)
Current Scopes: none
LLMNR setting: yes
MulticastDNS setting: no
DNSSEC setting: no
DNSSEC supported: no
Link 2 (eth0)
Current Scopes: none
LLMNR setting: yes
MulticastDNS setting: no
DNSSEC setting: no
DNSSEC supported: no
PEAK CAN-FD attached:
Code: Select all
# systemd-resolve --status
Global
DNS Servers: 192.168.0.1
DNS Domain: attlocal.net
DNSSEC NTA: 10.in-addr.arpa
16.172.in-addr.arpa
168.192.in-addr.arpa
17.172.in-addr.arpa
18.172.in-addr.arpa
19.172.in-addr.arpa
20.172.in-addr.arpa
21.172.in-addr.arpa
22.172.in-addr.arpa
23.172.in-addr.arpa
24.172.in-addr.arpa
25.172.in-addr.arpa
26.172.in-addr.arpa
27.172.in-addr.arpa
28.172.in-addr.arpa
29.172.in-addr.arpa
30.172.in-addr.arpa
31.172.in-addr.arpa
corp
d.f.ip6.arpa
home
internal
intranet
lan
local
private
test
Link 9 (can0)
Current Scopes: none
LLMNR setting: yes
MulticastDNS setting: no
DNSSEC setting: no
DNSSEC supported: no
Link 3 (sit0)
Current Scopes: none
LLMNR setting: yes
MulticastDNS setting: no
DNSSEC setting: no
DNSSEC supported: no
Link 2 (eth0)
Current Scopes: none
LLMNR setting: yes
MulticastDNS setting: no
DNSSEC setting: no
DNSSEC supported: no
Additionally, without the PCAN-USB-FD attached, queries via nslookup succeed:
Code: Select all
# nslookup google.com
Server: 127.0.0.53
Address: 127.0.0.53#53
Non-authoritative answer:
Name: google.com
Address: 172.217.1.238
Name: google.com
Address: 2607:f8b0:4007:814::200e
With the PCAN-USB-FD attached, they fail:
Code: Select all
# nslookup google.com
Server: 127.0.0.53
Address: 127.0.0.53#53
** server can't find google.com: SERVFAIL
But if I specify the DNS server to use, they succeed:
Code: Select all
# nslookup google.com 192.168.0.1
Server: 192.168.0.1
Address: 192.168.0.1#53
Non-authoritative answer:
Name: google.com
Address: 64.233.177.100
Name: google.com
Address: 64.233.177.139
Name: google.com
Address: 64.233.177.113
Name: google.com
Address: 64.233.177.101
Name: google.com
Address: 64.233.177.138
Name: google.com
Address: 64.233.177.102
Name: google.com
Address: 2607:f8b0:4002:810::200e
Thanks again for your help with this.
-Nick
Re: Linux Name Resolution (DNS) Failure
Posted: Wed 5. May 2021, 12:08
by M.Heidemann
Hi Nick,
Please check "/etc/systemd/resolved.conf", is any DNS configured?
Do you have a Fallback DNS configured?
Please check this, configure both if necessary and check if that resolved the
issue.
Please report back to us, if this has changed anything for you.
Possibly a service is also handling DNS settings, you might want
to check this for your Distro and if other users experience similar issue (with any plug&play network device)
Best Regards
marvin
Re: Linux Name Resolution (DNS) Failure
Posted: Fri 7. May 2021, 18:28
by nburkitt
Hi Marvin.
DNS is configured via DHCP. "/etc/systemd/resolved.conf" is effectively empty, which should be correct for that configuration. Remember, name resolution works correctly when the PCAN-FD-USB interface is not attached.
I've tried disabling the Avahi (mDNS/Bonjour/Zeroconf) service, but this had no effect on the problem.
Thanks,
-Nick
Re: Linux Name Resolution (DNS) Failure
Posted: Mon 10. May 2021, 16:30
by M.Heidemann
Hello,
Are you able to reproduce this issue,
when another network-adaptor is added instead of the PCAN-USB FD(a usb-wifi dognle, for example)?
Please let us know.
Best Regards
Marvin