注: 2.4.x的内核除了patch文件和modules.conf文件外,其它都类似。为什么pppd的选项文件里面会有不同?pptp客户端是基于PPP协议的。PPP需要MPPE加密协议支持来支持某些PPTP服务器。
早期的版本包含了OpenSSL授权的源码,这一部分源码是独立于PPP项目的;这就是PPP-MPPE 2.4.0(红色)。稍晚些的版本使用了BSD授权的源码,这些源码是PPP项目的一部分;这就PPP 2.4.2 及其更高版本了(绿色),第三个就是使用了Jan Dubiec的patch,加入MPPC 支持的版本(蓝色)
对每个版本来说,PPP MPPE支持需要有两个部分。其一是内核的支持,另外就是pppd程序的支持。这两个部分必须是同一个版本,如果两个的版本不一致,产生的结果就是pppd程序报告这样的错误:内核不支持。两个版本的详细对比:
<b>PPP-MPPE 2.4.0</b>
no further development?
no response to problems
has known problems such
as kernel panics
OpenSSL license directly
conflicts with kernel license
when loaded, does not
indicate a license conflict
requires /etc/modules.conf changes
module file name mppe.o (or ppp_mppe.o)
+mppe-128 (inconsistent
with existing option names)
mppe-stateless
require-chapms-v2
(incorrect protocol name) |
<b>PPP 2.4.2 and later</b>
ongoing development by PPP project
active response to problems by developers
has no known problems
at this time (stay tuned)
BSD license does not conflict
(as much) with kernel license
when loaded, indicates a license conflict
requires no /etc/modules.conf changes
module file name ppp_mppe.o
<i>require-mppe-128</i>
<i>nomppe-stateful</i>
<i>require-mschap-v2</i> |
这两个版本的pppd程序也有不同的命令行参数。
如果你是从老的PPP-MPPE 2.4.0 包升级过来的,请修改/etc/ppp/options.pptp 和 /etc/ppp/peers文件中已经存在的tunnels名称,采用与MPPE支持相关的正确的pppd参数命名。
PPTP客户端项目以前使用的参数选项命名是对非官方的打了MPPE补丁的PPP而言的。从那时起,PPP项目组就采用了他们的命名使其与其它pppd选项一致。