0

I have a Raspberry Pi 5 with the latest OS build (Kernel 6.6.20+rpt-rpi-2712). I have a Quectel EC25 cellular module hat plugged into the pi using QMI mode. The modem connects successfully to the network and udhcpc assigns an ip address to the wwan0 interface. The problem is that I cannot get DNS to work. I have no other networking connections to the Pi ( no wifi and no ethernet ). Through the wwan0 interface, I can ping 8.8.8.8 - but not google.com.

I was unable to get NetworkManager to work and so I disabled it and installed systemd-networkd and systemd-resolved.

There is a default route through wwan0, and /etc/resolv.conf has 8.8.8.8 setup as a DNS server. Furthermore, resolvectl shows that the interface could be using 8.8.8.8 for DNS. How can I get DNS to work through the working wwan0 internet connection? Thanks.   Modem:

pi@raspberrypi:~/Desktop $ lsusb
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 003: ID 046d:c52b Logitech, Inc. Unifying Receiver
Bus 003 Device 002: ID 2c7c:0125 Quectel Wireless Solutions Co., Ltd. EC25 LTE modem

Connection script:

pi@raspberrypi:~/Desktop $ cat connect-cellular.sh
sudo ip link set wwan0 down
echo 'Y' | sudo tee /sys/class/net/wwan0/qmi/raw_ip
sudo ip link set wwan0 up
sudo qmicli -p -d /dev/cdc-wdm0 --device-open-net='net-raw-ip|net-no-qos-header' --wds-start-network="apn='super',ip-type=4" --client-no-release-cid
sudo udhcpc -q -f -i wwan0

Connection output:

pi@raspberrypi:~/Desktop $ ./connect-cellular.sh
Y
[/dev/cdc-wdm0] Network started
        Packet data handle: '2269121952'
[/dev/cdc-wdm0] Client ID not released:
        Service: 'wds'
            CID: '17'
udhcpc: started, v1.35.0
Dropped protocol specifier '.udhcpc' from 'wwan0.udhcpc'. Using 'wwan0' (ifindex=3).
udhcpc: broadcasting discover
udhcpc: broadcasting select for 100.84.137.75, server 100.84.137.76
udhcpc: lease of 100.84.137.75 obtained from 100.84.137.76, lease time 7200
Dropped protocol specifier '.udhcpc' from 'wwan0.udhcpc'. Using 'wwan0' (ifindex=3).

Interface:

pi@raspberrypi:~/Desktop $ ifconfig  wwan0
wwan0: flags=4305<UP,POINTOPOINT,RUNNING,NOARP,MULTICAST>  mtu 1500
        inet 100.84.137.75  netmask 255.255.255.248  destination 100.84.137.75
        unspec 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00  txqueuelen 1000  (UNSPEC)
        RX packets 7  bytes 1425 (1.3 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 147  bytes 14394 (14.0 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

Ping:

pi@raspberrypi:~/Desktop $ ping -I wwan0 google.com
PING google.com (142.251.32.14) from 100.84.137.75 wwan0: 56(84) bytes of data.
^C
--- google.com ping statistics ---
5 packets transmitted, 0 received, 100% packet loss, time 4101ms

pi@raspberrypi:~/Desktop $ ping -I wwan0 8.8.8.8
PING 8.8.8.8 (8.8.8.8) from 100.84.137.75 wwan0: 56(84) bytes of data.
64 bytes from 8.8.8.8: icmp_seq=1 ttl=113 time=151 ms
64 bytes from 8.8.8.8: icmp_seq=2 ttl=113 time=164 ms
64 bytes from 8.8.8.8: icmp_seq=3 ttl=113 time=204 ms
^C
--- 8.8.8.8 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2002ms
rtt min/avg/max/mdev = 150.517/172.688/203.546/22.503 ms

Route:

pi@raspberrypi:~/Desktop $ ip route
default via 100.84.137.76 dev wwan0
100.84.137.72/29 dev wwan0 proto kernel scope link src 100.84.137.75

pi@raspberrypi:~/Desktop $ route
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
default         _gateway        0.0.0.0         UG    0      0        0 wwan0
100.84.137.72   0.0.0.0         255.255.255.248 U     0      0        0 wwan0

Resolvectl:

pi@raspberrypi:~/Desktop $ resolvectl status
Global
       Protocols: +LLMNR +mDNS -DNSOverTLS DNSSEC=no/unsupported
resolv.conf mode: stub

Link 2 (eth0)
Current Scopes: none
     Protocols: -DefaultRoute -LLMNR +mDNS -DNSOverTLS DNSSEC=no/unsupported

Link 3 (wwan0)
    Current Scopes: DNS LLMNR/IPv4
         Protocols: +DefaultRoute +LLMNR -mDNS -DNSOverTLS DNSSEC=no/unsupported
Current DNS Server: 8.8.4.4
       DNS Servers: 8.8.4.4 8.8.8.8

Link 4 (wlan0)
Current Scopes: none
     Protocols: -DefaultRoute +LLMNR -mDNS -DNSOverTLS DNSSEC=no/unsupported
3
  • You have failed to explain how you are attempting to configure networking. Raspberry Pi OS (which is not Raspbian) by default uses NetworkManager. You seem to be trying Debian networking and have tagged systemd-networkd.
    – Milliways
    Mar 31 at 21:31
  • I have fixed the tag and clarified the use of systemd-networkd.
    – PhilBot
    Apr 1 at 1:04
  • You might find raspberrypi.stackexchange.com/a/145594/8697 helpful. I have never setup using a modem but it should be similar. systemd-networkd can do lots but is fiendishly difficult to setup. NM is much simpler. Either way using ip doesn't help.
    – Milliways
    Apr 1 at 1:24

0

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.