Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 295159 - Could not establish VPN on kernel 2.6.31-gentoo-r6 and later
Summary: Could not establish VPN on kernel 2.6.31-gentoo-r6 and later
Status: RESOLVED UPSTREAM
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Core system (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Gentoo Kernel Bug Wranglers and Kernel Maintainers
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2009-11-30 10:00 UTC by Sergey Belyashov
Modified: 2010-06-26 13:41 UTC (History)
2 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
diff config-2.6.30 config-2.6.31 (config.diff,7.52 KB, patch)
2009-12-03 21:37 UTC, Sergey Belyashov
Details | Diff
diff config-2.6.30 config-2.6.31 for x86 (config.diff,4.68 KB, patch)
2009-12-03 21:41 UTC, Sergey Belyashov
Details | Diff
strace log file (pptp-strace.log,39.78 KB, text/plain)
2009-12-03 22:08 UTC, Sergey Belyashov
Details
log of pptp process (pptp.log,5.91 KB, text/plain)
2009-12-03 22:11 UTC, Sergey Belyashov
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Sergey Belyashov 2009-11-30 10:00:46 UTC
I upgrade kernel to gentoo-sources-2.6.31-r6. And could not establish VPN connection (ppp/pptp/mschapv2) which works fine with gentoo-sources-2.6.30-r5 and previous.



Reproducible: Always

Steps to Reproduce:
1. configure VPN client connection to MS VPN server (PPTP/MSCHAPv2)
2. test it on any 2.6.30 and earlier kernels
3. test it on 2.6.31-gentoo-r6 kernel

Actual Results:  
pppd/pptp logs:

Nov 30 12:36:14 is-server pppd[16723]: Created /dev/ppp device node
Nov 30 12:36:14 is-server pppd[16730]: pppd 2.4.4 started by root, uid 0
Nov 30 12:36:14 is-server pppd[16730]: Using interface ppp0
Nov 30 12:36:14 is-server pppd[16730]: Connect: ppp0 <--> /dev/pts/0
Nov 30 12:36:14 is-server pptp[18559]: anon log[main:pptp.c:310]: The synchronous pptp option is activated
Nov 30 12:36:14 is-server pptp[18565]: anon log[ctrlp_rep:pptp_ctrl.c:251]: Sent control packet type is 1 'Start-Control-Connection-Request'
Nov 30 12:36:14 is-server pptp[18565]: anon log[ctrlp_disp:pptp_ctrl.c:739]: Received Start Control Connection Reply
Nov 30 12:36:14 is-server pptp[18565]: anon log[ctrlp_disp:pptp_ctrl.c:773]: Client connection established.
Nov 30 12:36:15 is-server pptp[18565]: anon log[ctrlp_rep:pptp_ctrl.c:251]: Sent control packet type is 7 'Outgoing-Call-Request'
Nov 30 12:36:15 is-server pptp[18565]: anon log[pptp_read_some:pptp_ctrl.c:544]: read returned zero, peer has closed
Nov 30 12:36:15 is-server pppd[16730]: Modem hangup
Nov 30 12:36:15 is-server pppd[16730]: Connection terminated.
Nov 30 12:36:15 is-server pptp[18565]: anon log[callmgr_main:pptp_callmgr.c:258]: Closing connection (shutdown)
Nov 30 12:36:15 is-server pptp[18565]: anon log[ctrlp_rep:pptp_ctrl.c:251]: Sent control packet type is 12 'Call-Clear-Request'
Nov 30 12:36:15 is-server pptp[18565]: anon log[pptp_read_some:pptp_ctrl.c:544]: read returned zero, peer has closed
Nov 30 12:36:15 is-server pptp[18565]: anon log[call_callback:pptp_callmgr.c:79]: Closing connection (call state)
Nov 30 12:36:15 is-server pppd[16730]: Child process pptp --sync 10.67.4.1 --nolaunchpppd --loglevel 0 (pid 18559) terminated with signal 15


Expected Results:  
pppd/pptp logs:


Nov 30 12:40:22 is-server pppd[6988]: Created /dev/ppp device node
Nov 30 12:40:22 is-server pppd[6995]: pppd 2.4.4 started by root, uid 0
Nov 30 12:40:22 is-server pppd[6995]: Using interface ppp0
Nov 30 12:40:22 is-server pppd[6995]: Connect: ppp0 <--> /dev/pts/0
Nov 30 12:40:22 is-server pptp[6996]: anon log[main:pptp.c:310]: The synchronous pptp option is activated
Nov 30 12:40:22 is-server pptp[7008]: anon log[ctrlp_rep:pptp_ctrl.c:251]: Sent control packet type is 1 'Start-Control-Connection-Request'
Nov 30 12:40:22 is-server pptp[7008]: anon log[ctrlp_disp:pptp_ctrl.c:739]: Received Start Control Connection Reply
Nov 30 12:40:22 is-server pptp[7008]: anon log[ctrlp_disp:pptp_ctrl.c:773]: Client connection established.
Nov 30 12:40:23 is-server pptp[7008]: anon log[ctrlp_rep:pptp_ctrl.c:251]: Sent control packet type is 7 'Outgoing-Call-Request'
Nov 30 12:40:23 is-server pptp[7008]: anon log[ctrlp_disp:pptp_ctrl.c:858]: Received Outgoing Call Reply.
Nov 30 12:40:23 is-server pptp[7008]: anon log[ctrlp_disp:pptp_ctrl.c:897]: Outgoing call established (call ID 0, peer's call ID 12291).
Nov 30 12:40:23 is-server pppd[6995]: CHAP authentication succeeded
Nov 30 12:40:23 is-server pppd[6995]: CHAP authentication succeeded
Nov 30 12:40:23 is-server pppd[6995]: local  IP address 81.25.50.106
Nov 30 12:40:23 is-server pppd[6995]: remote IP address 10.7.3.35
Nov 30 12:41:23 is-server pptp[7008]: anon log[logecho:pptp_ctrl.c:677]: Echo Request received.
Comment 1 Sergey Belyashov 2009-12-02 09:15:57 UTC
I test it on x86 box, and result is same.
Kernel configs are simply copied from 2.6.30 to 2.6.31 and make oldconfig runned.
Comment 2 Alexey Dobriyan 2009-12-03 18:39:56 UTC
Run pptp under strace: strace -f -o pptp-strace.log
Attach diff -U0 .config-2.6.30 .config-2.6.31 just in case, or both.
Comment 3 Sergey Belyashov 2009-12-03 21:37:21 UTC
Created attachment 211916 [details, diff]
diff config-2.6.30 config-2.6.31

before comparing configs were prepared to reduce size: removed all comments and sorted
Comment 4 Sergey Belyashov 2009-12-03 21:41:50 UTC
Created attachment 211917 [details, diff]
diff config-2.6.30 config-2.6.31 for x86

same as previous but from x86 box
Comment 5 Sergey Belyashov 2009-12-03 22:08:51 UTC
Created attachment 211918 [details]
strace log file
Comment 6 Sergey Belyashov 2009-12-03 22:11:04 UTC
Created attachment 211919 [details]
log of pptp process
Comment 7 Sergey Belyashov 2009-12-03 22:16:36 UTC
Both above logs are for 2.6.31 kernel.
Comment 8 Nicolas 2010-02-16 13:45:19 UTC
Confirmed for me. 

Latest working kernel I have is 2.6.30-gentoo-r7. Earliest non-working is 2.6.30-gentoo-r8. Logs are almost exactly the same as Sergey's.

Need data to substantiate this?

Will turn on the relevant debugging and see if I can pick up something with tcpdump.
Comment 9 Sergey Belyashov 2010-02-16 15:47:33 UTC
I have no problem with kernel 2.6.30-gentoo-r8.
Comment 10 Mike Pagano gentoo-dev 2010-02-28 22:27:46 UTC
Are you using modemmanager?
Comment 11 Sergey Belyashov 2010-03-02 09:29:17 UTC
No, I do not. I use only pptp-client and pppd.
Comment 12 Mike Pagano gentoo-dev 2010-03-03 13:31:03 UTC
I would like to see if anything changed in 2.6.33, please test with gentoo-sources-2.6.33
Comment 13 Sergey Belyashov 2010-03-05 12:13:51 UTC
(In reply to comment #12)
> I would like to see if anything changed in 2.6.33, please test with
> gentoo-sources-2.6.33
 
same problem.
Comment 14 Mike Pagano gentoo-dev 2010-03-06 15:16:31 UTC
I have to admit, I don't have a lot of experience in this area.

I see these in your pptp process log:

LCP: timeout sending Config-Requests

Is this web page at all helpful:
http://pptpclient.sourceforge.net/howto-diagnosis.phtml#lcp_timeout


Comment 15 Sergey Belyashov 2010-03-06 21:23:31 UTC
I solve problem adding ip_gre module to the /etc/modules.autoload.d/kernel-2.6. And may be moving netfilter rule accepting input GRE protocol.
In kernels <gentoo-sources-2.6.31 this module and rule are not required...

Thank you.
Comment 16 Sergey Belyashov 2010-03-25 09:48:01 UTC
I need reopen bug because solution described above is not work. Connection establishes after some random changes in configuration. But after some time outgoing speed reduces (from 20 MBit/s to 0.5 MBit/s). Rebooting to 2.6.30 kernel fixes problem.
Comment 17 Mike Pagano gentoo-dev 2010-06-24 20:10:11 UTC
Sergey, this has been an issue for awhile for you, now. Can you test with 2.6.34 and then post the issue upstream at http://bugzilla.kernel.org upon failure?
Comment 18 Sergey Belyashov 2010-06-26 13:41:10 UTC
Yes, I try it. And there is that problem. On first booting is all OK. But after some days outgoing speed greately decreases. Restarting of interface pull down ppp connection and it MAY (or may not) reconnect after lot of time.