跳至主要内容

HowTo resolve MPD5 error On FreeBSD

这些天,在FreeBSD上做PPTP Server,可是MPD5 一直有问题:

can't create tee node at ".:"->"l1": No such file or directory
Nov  7 07:20:00 mpd: [VPNLink-1] PPTP: attaching to peer's outgoing call
Nov  7 07:20:00  mpd: [VPNLink-1] PPTP: can't attach pptpgre node: No such file or directory
Nov  7 07:20:00  mpd: [VPNLink-1] PPTP call cancelled in state CONNECTING

查遍了互联网,连老外也没想出解决办法,这真是人间悲剧。不过没事,咱自己来解决。
首先,注意到出错提示中有 "Tee Node"这个字样,这也为解决问题提供了方法,查问了Netgrath 资料,知道 ng_tee 这个device,猜测应该是少了这个东西。
于是在我的另一台FreeBSD上使用:

kldload ng_tee 
kldload ng_tcpmss

问题得到解决。

不过,我的VPS只有2G的硬盘,因此不得不将上述模块编译进内核,所以需要在kernel里加入

options         NETGRAPH                #netgraph(4) system
options         NETGRAPH_ASYNC
options         NETGRAPH_BPF
options         NETGRAPH_BRIDGE
options         NETGRAPH_CISCO
options         NETGRAPH_ECHO
options         NETGRAPH_ETHER
options         NETGRAPH_FRAME_RELAY
options         NETGRAPH_HOLE
options         NETGRAPH_IFACE
options         NETGRAPH_KSOCKET
options         NETGRAPH_LMI
options         NETGRAPH_MPPC_ENCRYPTION
options         NETGRAPH_ONE2MANY
options         NETGRAPH_PPP
options         NETGRAPH_PPPOE
options         NETGRAPH_PPTPGRE
options         NETGRAPH_RFC1490
options         NETGRAPH_SOCKET
options         NETGRAPH_TEE
options         NETGRAPH_TTY
options         NETGRAPH_UI
options         NETGRAPH_VJC
options         NETGRAPH_TCPMSS

其中粗体部分为必须的,OK ,make buildkernel &&make  installkernel去吧。

评论