Linux ppp0 and default route and how to reach public internet
1
vote
1
answer
8087
views
my project needs mobile internet. I am trying to achieve this by using a LTE stick modem with a M2M sim (public IP, no NAT)
This works well on ubuntu (5.3.0-29-generic), but I cannot get it working on Raspbian Buster (4.19.97+)
Feb 11 22:31:48 raspberrypi systemd: Reloading.
Feb 11 22:31:51 raspberrypi systemd: getty@tty1.service: Current command vanished from the unit file, execution of the command list won't be resumed.
Feb 11 22:31:51 raspberrypi systemd: serial-getty@ttyAMA0.service: Current command vanished from the unit file, execution of the command list won't be resumed.
Feb 11 22:32:00 raspberrypi systemd: Reloading.
Feb 11 22:32:41 raspberrypi pppd: pppd 2.4.7 started by root, uid 0
Feb 11 22:32:41 raspberrypi pppd: Using interface ppp0
Feb 11 22:32:41 raspberrypi pppd: Connect: ppp0 /dev/ttyUSB1
Feb 11 22:32:41 raspberrypi NetworkManager: [1581460361.7138] manager: (ppp0): new Ppp device (/org/freedesktop/NetworkManager/Devices/5)
Feb 11 22:32:42 raspberrypi pppd: CHAP authentication succeeded: Welcome!!
Feb 11 22:32:42 raspberrypi pppd: CHAP authentication succeeded
Feb 11 22:32:42 raspberrypi pppd: Could not determine remote IP address: defaulting to 10.64.64.64
Feb 11 22:32:42 raspberrypi pppd: not replacing default route to eth0 [192.168.0.1]
Feb 11 22:32:42 raspberrypi pppd: local IP address 10.217.44.214
Feb 11 22:32:42 raspberrypi pppd: remote IP address 10.64.64.64
Feb 11 22:32:42 raspberrypi pppd: primary DNS address 109.249.185.224
Feb 11 22:32:42 raspberrypi pppd: secondary DNS address 109.249.186.32
Feb 11 22:32:42 raspberrypi NetworkManager: [1581460362.2378] device (ppp0): state change: unmanaged -> unavailable (reason 'connection-assumed', sys-iface-state: 'external')
Feb 11 22:32:42 raspberrypi NetworkManager: [1581460362.3090] device (ppp0): state change: unavailable -> disconnected (reason 'none', sys-iface-state: 'external')
Feb 11 22:35:30 raspberrypi pppd: Terminating on signal 15
Feb 11 22:35:30 raspberrypi pppd: Connect time 2.8 minutes.
Feb 11 22:35:30 raspberrypi pppd: Sent 0 bytes, received 0 bytes.
Feb 11 22:35:30 raspberrypi NetworkManager: [1581460530.4393] device (ppp0): state change: disconnected -> unmanaged (reason 'connection-assumed', sys-iface-state: 'external')
Feb 11 22:35:30 raspberrypi pppd: Connection terminated.
For this, I tried using wvdial with these settings
[Dialer Defaults]
Auto DNS = yes
Init1 = ATZ+CFUN=1
Init2 = ATH
Init3 = ATE1
Init3 = AT+CGDCONT=1,"IP","EEM2M"
Stupid mode = 1
Baud = 9600
Dial Command = ATD
Modem = /dev/ttyUSB1
ISDN = 0
Phone = *99#
Password = bt
Username = bt
NetworkManager.conf has this content
[main]
plugins=ifupdown,keyfile
[ifupdown]
managed=false
ppp/resolv.conf has this content
nameserver 109.249.185.224
nameserver 109.249.186.32
I think this was set by the setup (see log above)
Last but not least, this shows when I do ifconfig -a after wvdial is running.
Note that the 6 packets in ppp0 are internal pings to 10.217.44.214
eth0: flags=4163 mtu 1500
inet 192.168.0.12 netmask 255.255.255.0 broadcast 192.168.0.255
inet6 fe80::b435:fc5d:b267:a226 prefixlen 64 scopeid 0x20
ether 00:e0:92:00:15:f3 txqueuelen 1000 (Ethernet)
RX packets 299 bytes 30739 (30.0 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 269 bytes 36598 (35.7 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
lo: flags=73 mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10
loop txqueuelen 1000 (Local Loopback)
RX packets 4 bytes 156 (156.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 4 bytes 156 (156.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
ppp0: flags=4305 mtu 1500
inet 10.217.44.214 netmask 255.255.255.255 destination 10.64.64.64
ppp txqueuelen 3 (Point-to-Point Protocol)
RX packets 6 bytes 66 (66.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 7 bytes 129 (129.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
wwan0: flags=4098 mtu 1500
ether 00:1e:10:1f:00:00 txqueuelen 1000 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
Edit 1:
When running wvdial as root, I get this:
--> WvDial: Internet dialer version 1.61
--> Initializing modem.
--> Sending: ATZ+CFUN=1
OK
--> Sending: ATH
OK
--> Sending: AT+CGDCONT=1,"IP","EEM2M"
OK
--> Modem initialized.
--> Sending: ATD*99#
--> Waiting for carrier.
CONNECT 150000000
--> Carrier detected. Starting PPP immediately.
--> Starting pppd at Tue Feb 11 23:01:49 2020
--> Pid of pppd: 1281
--> Using interface ppp0
--> pppd: X?CX?C
--> pppd: X?CX?C
--> pppd: X?CX?C
--> pppd: X?CX?C
--> pppd: X?CX?C
--> pppd: X?CX?C
--> local IP address 10.217.44.214
--> pppd: X?CX?C
--> remote IP address 10.64.64.64
--> pppd: X?CX?C
--> primary DNS address 109.249.185.224
--> pppd: X?CX?C
--> secondary DNS address 109.249.186.32
--> pppd: X?CX?C
I also noticed that when wvdial is running, the NetworkManager will load the correct DNS in /etc/resolv.conf, changing
# Generated by NetworkManager
nameserver 194.168.4.100
nameserver 194.168.8.100
to
nameserver 109.249.185.224
nameserver 109.249.186.32
# Generated by NetworkManager
Asked by bem22
(167 rep)
Feb 11, 2020, 10:53 PM
Last activity: Jan 12, 2021, 03:07 PM
Last activity: Jan 12, 2021, 03:07 PM