本节将介绍如何建立基于以太网的PPP (PPPoE).
对于PPPOE,并没有必须的内核配置. 如果必需的netgraph支持没有编译入内核 ,它可以由 ppp动态加载.
以下是一个ppp.conf的例子:
default: set log Phase tun command # you can add more detailed logging if you wish set ifaddr 10.0.0.1/0 10.0.0.2/0 name_of_service_provider: set device PPPoE:xl1 # replace xl1 with your Ethernet device set authname YOURLOGINNAME set authkey YOURPASSWORD set dial set login add default HISADDR
在文件/etc/rc.conf加入以下内容:
ppp_enable="YES" ppp_mode="ddial" ppp_nat="YES" # if you want to enable nat for your local network, otherwise NO ppp_profile="name_of_service_provider"
在某些时候,有必要使用一个服务标签来建立您的连接.服务标签用于区分同一网络中的不同服务器.
您可以在ISP提供的文档中找到必要的服务标签信息.若不能找到,向您的ISP询求技术支持.
作为最后的方法, 您可以试试程序 Roaring Penguin PPPoE 所建议的方法,这个程序可以在 ports collection找到. 但要切记, 这会de-program您的modem,可能使其无效,因此在使用之前要考虑再三.装与modem一起取得的程序.然后访问 这个程序的System菜单.您的profile名应该在那里显示出来.一般是会 ISP的名称.
profile名(服务器标签)会在 ppp.conf中的PPPOE配置项作为 set device命令的provider部分被用到(参考ppp(8)). 如下所示:
set device PPPoE:xl1:ISP
记住将xl1换成实际的以太网设备.
记住将 ISP 换成您刚刚找到的profile名.
获得更多的信息,请参考:
Cheaper Broadband with FreeBSD on DSL by Renaud Waldura.
Nutzung von T-DSL und T-Online mit FreeBSD by Udo Erdelhoff (in German).
这个modem不遵循RFC 2516 (A Method for transmitting PPP over Ethernet (PPPoE), written by L. Mamakos, K. Lidl, J. Evarts, D. Carrel, D. Simone, and R. Wheeler). 而是使用不同的数据包格式作为以太网的框架.请向 3Com抱怨,如果您认为它应该遵守PPPOE的规范.
为了让FreeBSD能够与这个设备通信,必须设置sysctl.通过更改/etc/sysctl.conf,这一步 可以在启动时自动完成:
net.graph.nonstandard_pppoe=1
或直接执行命令: sysctl net.graph.nonstandard_pppoe=1.
很不幸,由于这是系统全局设置,无法同时与正常的PPP客户端(或服务器) 和3Com®HomeConnect® ADSL Modem通信 .