PPP crash after a while, start sending crazy packets

Bug #1705391 reported by Simone Lussardi
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
ppp (Ubuntu)
New
Undecided
Unassigned

Bug Description

Hey guys, I have a very weird issue here. PPP works fine for 1-5 minutes, then it hangs with CPU usage very high, and I noticed it start uploading insane (but fake) bytes to the tunnel. To do a simple test, I started watching a YouTube video, and when the problem started to happen:

ppp0 Link encap:Point-to-Point Protocol
          inet addr:172.16.99.9 P-t-P:xxx.xxx.xxx.xxx Mask:255.255.255.255
          UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1400 Metric:1
          RX packets:26586 errors:0 dropped:0 overruns:0 frame:0
          TX packets:5921622 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:3
          RX bytes:35077655 (35.0 MB) TX bytes:2885396935 (2.8 GB)

Then it crashed, and VPN turned itself off. I tried everything: MTU, tunnel parameters etc. Please note I am a guy with 20+ years experience in networking and I own an IT company. This is definitely a BUG of PPP. It started happening since Ubuntu 16.04, before I never had this issue.

Description: Ubuntu 16.04.2 LTS
Release: 16.04
PPP: 2.4.7-1+2ubuntu1

Cheers,
Simone

Revision history for this message
Simone Lussardi (simone-lussardi) wrote :

Sorry I want to add: it happens with any server, I have many of them to test.

Revision history for this message
Simone Lussardi (simone-lussardi) wrote :

Guys, seems I have found the conditions in which it happens. I have successfully managed to *not* make it happen.

If you set the radius server IP property to match the public address, this crash *will* happen, no matter what MTU or other encryption things are set. PPP on Android doesn't have this problem.

Let's assume your PPTP server is at public IP 1.2.3.4, and such server has an inside LAN IP of 192.168.79.1, you have two options:

A) You can leave the server IP property empty, in which case ppp will work just fine !

B) You can set to a value, in order to do some manual routing on client side later on by using that server IP.

But, if you set such property to 1.2.3.4 (matching exactly the public IP on which the interface connects to) it will create this race condition after a while and start sending crazy packets, crashing the ppp module. Could be due to a looping-back broadcast.

Even though it might not be important for everyone, it shouldn't happen that a property set on server side can crash a module on the client. There should be a check.

Cheers,
Simone

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.