PPP supplies internet to clients on WiFi but not to AP itself

I have an OpenWRT machine which uses PPP to create an internet connection with a cell modem connected over USB. The interface is created fine, output from the chatscript shows that the connection was successful, but I can't ping any public IP's from within the AP machine itself. However, some additional OpenWRTs which are connected over WiFi can.
Here's output from ipconfig:

br-lan    Link encap:Ethernet  HWaddr EA:B7:64:AC:00:1C
          inet addr:192.168.1.1  Bcast:192.168.1.255  Mask:255.255.255.0
          inet6 addr: fe80::e8b7:64ff:feac:1c/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:66272 errors:0 dropped:0 overruns:0 frame:0
          TX packets:51804 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:5249514 (5.0 MiB)  TX bytes:7227447 (6.8 MiB)

br-vlan   Link encap:Ethernet  HWaddr EA:B7:64:AC:00:1C
          inet addr:192.168.2.1  Bcast:192.168.2.255  Mask:255.255.255.0
          inet6 addr: fe80::e8b7:64ff:feac:1c/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:3744 errors:0 dropped:0 overruns:0 frame:0
          TX packets:2014 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:597839 (583.8 KiB)  TX bytes:392173 (382.9 KiB)

eth0      Link encap:Ethernet  HWaddr EA:B7:64:AC:00:1C
          UP BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)
          Interrupt:5

eth0.1    Link encap:Ethernet  HWaddr EA:B7:64:AC:00:1C
          UP BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

eth0.2    Link encap:Ethernet  HWaddr 0C:CF:89:6F:9B:F8
          UP BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

eth0.3    Link encap:Ethernet  HWaddr EA:B7:64:AC:00:1C
          UP BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:65536  Metric:1
          RX packets:21164 errors:0 dropped:0 overruns:0 frame:0
          TX packets:21164 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:1946526 (1.8 MiB)  TX bytes:1946526 (1.8 MiB)

ppp-wan2  Link encap:Point-to-Point Protocol
          inet addr:100.73.225.102  P-t-P:10.64.64.64  Mask:255.255.255.255
          UP POINTOPOINT RUNNING NOARP MULTICAST  MTU:1500  Metric:1
          RX packets:1225 errors:0 dropped:0 overruns:0 frame:0
          TX packets:2838 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:3
          RX bytes:195554 (190.9 KiB)  TX bytes:281515 (274.9 KiB)

wlan0     Link encap:Ethernet  HWaddr 40:D6:3C:69:49:6D
          inet6 addr: fe80::42d6:3cff:fe69:496d/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:3762 errors:0 dropped:0 overruns:0 frame:0
          TX packets:2182 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:652127 (636.8 KiB)  TX bytes:468849 (457.8 KiB)

wlan0-1   Link encap:Ethernet  HWaddr 42:D6:3C:69:49:6D
          inet6 addr: fe80::40d6:3cff:fe69:496d/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:49657 errors:0 dropped:0 overruns:0 frame:0
          TX packets:39520 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:4588087 (4.3 MiB)  TX bytes:4513060 (4.3 MiB)

wlan0-2   Link encap:Ethernet  HWaddr 46:D6:3C:69:49:6D
          inet6 addr: fe80::44d6:3cff:fe69:496d/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:16608 errors:0 dropped:0 overruns:0 frame:0
          TX packets:17409 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:1590223 (1.5 MiB)  TX bytes:4445331 (4.2 MiB)

And here's the chatscript output from logread:

Wed Jul  5 17:46:08 2023 daemon.notice pppd[21640]: pppd 2.4.9 started by root, uid 0
Wed Jul  5 17:46:09 2023 local2.info chat[21663]: timeout set to 3 seconds
Wed Jul  5 17:46:09 2023 local2.info chat[21663]: send (AT^M)
Wed Jul  5 17:46:09 2023 local2.info chat[21663]: expect (OK)
Wed Jul  5 17:46:09 2023 local2.info chat[21663]: AT^M^M
Wed Jul  5 17:46:09 2023 local2.info chat[21663]: OK
Wed Jul  5 17:46:09 2023 local2.info chat[21663]:  -- got it
Wed Jul  5 17:46:09 2023 local2.info chat[21663]: send (AT+CGDCONT=1,"IPV4V6","super"^M)
Wed Jul  5 17:46:10 2023 local2.info chat[21663]: expect (OK)
Wed Jul  5 17:46:10 2023 local2.info chat[21663]: ^M
Wed Jul  5 17:46:10 2023 local2.info chat[21663]: AT+CGDCONT=1,"IPV4V6","super"^M^M
Wed Jul  5 17:46:10 2023 local2.info chat[21663]: OK
Wed Jul  5 17:46:10 2023 local2.info chat[21663]:  -- got it
Wed Jul  5 17:46:10 2023 local2.info chat[21663]: send (AT+CFUN=1^M)
Wed Jul  5 17:46:10 2023 local2.info chat[21663]: expect (OK)
Wed Jul  5 17:46:10 2023 local2.info chat[21663]: ^M
Wed Jul  5 17:46:10 2023 local2.info chat[21663]: AT+CFUN=1^M^M
Wed Jul  5 17:46:10 2023 local2.info chat[21663]: OK
Wed Jul  5 17:46:10 2023 local2.info chat[21663]:  -- got it
Wed Jul  5 17:46:10 2023 local2.info chat[21663]: send (AT+QCSQ;+CEREG?;+COPS?;+CGDCONT?^M)
Wed Jul  5 17:46:10 2023 local2.info chat[21663]: expect (OK)
Wed Jul  5 17:46:10 2023 local2.info chat[21663]: ^M
Wed Jul  5 17:46:10 2023 local2.info chat[21663]: AT+QCSQ;+CEREG?;+COPS?;+CGDCONT?^M^M
Wed Jul  5 17:46:10 2023 local2.info chat[21663]: +QCSQ: "eMTC",-62,-94,80,-19^M
Wed Jul  5 17:46:10 2023 local2.info chat[21663]: ^M
Wed Jul  5 17:46:10 2023 local2.info chat[21663]: +CEREG: 0,5^M
Wed Jul  5 17:46:10 2023 local2.info chat[21663]: ^M
Wed Jul  5 17:46:10 2023 local2.info chat[21663]: +COPS: 0,0,"Verizon Wireless",8^M
Wed Jul  5 17:46:10 2023 local2.info chat[21663]: ^M
Wed Jul  5 17:46:10 2023 local2.info chat[21663]: +CGDCONT: 1,"IPV4V6","super","0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0",0,0,0^M
Wed Jul  5 17:46:10 2023 local2.info chat[21663]: +CGDCONT: 2,"IPV4V6","ota.super","0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0",0,0,0^M
Wed Jul  5 17:46:10 2023 local2.info chat[21663]: ^M
Wed Jul  5 17:46:10 2023 local2.info chat[21663]: OK
Wed Jul  5 17:46:10 2023 local2.info chat[21663]:  -- got it
Wed Jul  5 17:46:10 2023 local2.info chat[21663]: send (ATD*99#^M)
Wed Jul  5 17:46:11 2023 local2.info chat[21663]: expect (CONNECT)
Wed Jul  5 17:46:11 2023 local2.info chat[21663]: ^M
Wed Jul  5 17:46:11 2023 local2.info chat[21663]: ATD*99#^M^M
Wed Jul  5 17:46:11 2023 local2.info chat[21663]: CONNECT
Wed Jul  5 17:46:11 2023 local2.info chat[21663]:  -- got it
Wed Jul  5 17:46:11 2023 local2.info chat[21663]: send (150000000^M)
Wed Jul  5 17:46:11 2023 daemon.info pppd[21640]: Serial connection established.
Wed Jul  5 17:46:11 2023 kern.info kernel: [ 1684.394982] ppp-wan2: renamed from ppp0
Wed Jul  5 17:46:11 2023 daemon.info pppd[21640]: Renamed interface ppp0 to ppp-wan2
Wed Jul  5 17:46:11 2023 daemon.info pppd[21640]: Using interface ppp-wan2
Wed Jul  5 17:46:11 2023 daemon.notice pppd[21640]: Connect: ppp-wan2 <--> /dev/ttyUSB2

I have a suspicion this may be due to some improperly set up routing tables? Although doing ip route show shows output that looks fine. The default route is via the P-t-P address from the ppp interface!
Any help would be greatly appreciated

The wan2 interface should be in the wan firewall zone, and output should be allowed on that zone.

Are you pinging by name or by numeric IP?

In general QMI or MBIM should be used instead of raw ppp if the modem supports it, any modern modem does. chat/ppp has been relegated to a compatibility mode which usually has lower performance.

Here's an excerpt from my firewall file:

config defaults
        option input 'ACCEPT'
        option output 'ACCEPT'
        option forward 'REJECT'
        option synflood_protect '1'

config zone
        option name 'lan'
        option input 'ACCEPT'
        option output 'ACCEPT'
        option forward 'REJECT'
        list network 'lan'

config zone
        option name 'wan'
        option input 'REJECT'
        option output 'ACCEPT'
        option forward 'REJECT'
        option masq '1'
        option mtu_fix '1'
        list network 'wan'
        list network 'wan6'
        list network 'wwan'
        list network 'wan2'

I'm doing both, address resolution fails when I do by name.
Also my modem doesn't support QMI. Its the nimbelink qbg95

^ this says I don't need any extra commands for MBIM mode

Turns out the solution was not related to the cell modem at all. dnsmasq was getting confused because a single entry in /tmp/dhcp.leases got assigned the same hostname as my host machine. From doing logread, I could see it was hesitant to assign the "OpenWRT" hostname to most connecting machines, but not this one in particular.
Changing the host machines hostname to something different seems to have resolved the issue

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