28.4. 使用以太网 PPP(PPPoE)

本节介绍如何设置以太网 PPP(PPPoE)。

下面是一个工作中的 ppp.conf 的例子:

  1. default:
  2. set log Phase tun command # you can add more detailed logging if you wish
  3. set ifaddr 10.0.0.1/0 10.0.0.2/0
  4. name_of_service_provider:
  5. set device PPPoE:xl1 # replace xl1 with your Ethernet device
  6. set authname YOURLOGINNAME
  7. set authkey YOURPASSWORD
  8. set dial
  9. set login
  10. add default HISADDR

root 身份执行:

  1. # ppp -ddial name_of_service_provider

/etc/rc.conf 中添加以下内容:

  1. ppp_enable="YES"
  2. ppp_mode="ddial"
  3. ppp_nat="YES" # if you want to enable nat for your local network, otherwise NO
  4. ppp_profile="name_of_service_provider"

28.4.1.使用 PPPoE 服务标签

在某些时候,有必要使用一个服务标签来建立你的连接。服务标签用于区分同一网络中的不同 PPPoE 服务器。

任何所需的服务标签信息应在ISP提供的文件中。

作为最后的方法,你可以试试用 package 或 port 安装 net/rr-pppoe 。但需要注意的是,它可能会清除 modem 的固件,使其无法正常工作,因此一定要三思而行。简单地安装由服务提供商附带的 modem 程序。随后,选择 System 菜单。你的配置文件应该会在这里列出。一般来说它的名字应该是 ISP 。

配置文件名 (service tag,服务标签) 将被用于 PPPoE 在 ppp.conf 中的配置项,作为服务商 set device 命令的一部分 (参见 ppp(8) 联机手册以了解更多细节)。它应该类似下面的样子:

  1. set device PPPoE:xl1:ISP

记得将 xl1 换成实际的以太网设备。

记得将 ISP 换成你刚刚找到的 profile 名。

欲了解更多信息,可以阅读 Renaud Waldura 的 Cheaper Broadband with FreeBSD on DSL

28.4.2.带有一个 3Com® HomeConnect™ ADSL Modem 的 PPPoE 双重连接

本调制解调器 (modem) 不遵循 RFC 2516 中定义的 PPPoE 规范。

为了让 FreeBSD 能够与这个设备通信,必须设置 sysctl。通过更改 /etc/sysctl.conf,这一步可以在启动时自动完成:

  1. net.graph.nonstandard_pppoe=1

也可以直接执行下面的命令:

  1. # sysctl net.graph.nonstandard_pppoe=1

不幸的是,由于这是系统全局设置,无法同时与正常的 PPP 客户端 (或服务器) 和 3Com® HomeConnect™ ADSL Modem 通信。