This one can easily be filed under the “yet another example of things ‘just working’ on mac and being near impossible on ‘linux’”….
My employer currently uses pptp for vpn’ing into the office. Far from the ideal solution security wise, the fact that it is supported on all platforms is a huge plus. This is especially true since the employees use a mix of Windows, Linux, and OSX.
PPTP is trivial to set up on Mac OSX. It’s just entering a few values into a few forms. I’ve never tried on windows, but there have been no complaints. However, linux was a different story. One of my primary motivations for moving to SuSE was that things like this were supposed to be easier. Gone were the days of running through strange command programs and hacking PERL scripts to get things to work.
With pptp, this was not going to be the case. First off, there doesn’t appear to be a gui pptp-client included with the suse installation. So fine, I can break out my Slackware aquired knowledge of the command line and run pptp-command. So far, so good.
I follow the directions on how to configure the secrets, update the resolve.conf, and start setting up the vpn. Everything seems to go fine until I try to run it. Needless to say, I can’t access anything, including stuff on my local network. Eventually I just give up and resort to ssh tunnelling.
Turns out my problem was that I simply didn’t understand the esoteric instructions about routing and I had mis-configured that section. What I had assumed was asking me for 172.16.0.0 netmask 255.255.0.0 was actually asking for the whole command string for the route command. Of course, I didn’t know this until I got the bright idea to look at the perl. Adding “add -net 172.16.0.0 netmask 255.255.0.0 dev ppp0” in the configuration options made everything work.
So granted, this was more a case of me not reading all the documentation. Once I knew where to look, it was pretty simple to figure out. But the point is, I didn’t have to do that on OSX. It “just worked.”