mppc for kernel 2.6.31

之前我搞了一台华硕的小机器做穿墙路由器,操作系统用的是Gentoo Linux

SSH的socks5钻墙是好了,但我现在还想要开VPN到墙外,还有VPN到公司里,这样在家里用起来就更方便了。

有些PPTP的VPN需要mppe,mppc。而我用的Gentoo不像Ubuntu,原装的内核不带mppe-mppc模块,得自己打补丁。可是这补丁只到2.6.13,之后的没有了。之前每次内核升级都遇到同样麻烦:|

不过最终还是google到了devil-linux项目里现成的2.6.31补丁

cd /usr/src/patches
wget http://ftp.devil-linux.org/pub/devel/sources/1.4/linux-2.6.31-mppe-mppc-1.3.patch.bz2
bunzip2 linux-2.6.31-mppe-mppc-1.3.patch.bz2
cd /usr/src/linux
patch -p1 < /usr/src/patches/linux-2.6.31-mppe-mppc-1.3.patch
make menuconfig

选上CONFIG_PPP_MPPE_MPPC=m

Device Drivers  --->
[*] Network device support  --->
<M>   PPP (point-to-point protocol) support
<M>     Microsoft PPP compression/encryption (MPPC/MPPE)

然后重新编译安装内核。这样就有了ppp_mppe_mppc模块。

最后emerge ppp的时候需要带上USE="mppe-pmmc"参数。我是把”net-dialup/ppp mppe-mppc”添加到”/etc/portage/package.use”文件里。