30.4.使用以太网 PPP(PPPoE)

本节介绍如何设置基于以太网的 PPP(PPPoE)连接。

以下是一个可用的 ppp.conf 示例:

default:
  set log Phase tun command # 如有需要,可添加更详细的日志项
  set ifaddr 10.0.0.1/0 10.0.0.2/0

name_of_service_provider:
  set device PPPoE:xl1 # 将 xl1 替换为你的以太网设备
  set authname YOURLOGINNAME
  set authkey YOURPASSWORD
  set dial
  set login
  add default HISADDR

root 身份运行:

# ppp -ddial name_of_service_provider

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

ppp_enable="YES"
ppp_mode="ddial"
ppp_nat="YES"	# 如果希望为本地网络启用 NAT,否则设为 NO
ppp_profile="name_of_service_provider"

30.4.1. 使用 PPPoE 服务标签

有时需要使用服务标签才能建立连接。服务标签用于区分连接到同一网络的不同 PPPoE 服务器。

服务标签信息通常会在 ISP 提供的文档中列出。

在万不得已的情况下,可以尝试安装 net/rr-pppoe 软件包或 Ports。不过请注意,这可能会将调制解调器重置为无效状态,因此在执行前请三思。更安全的做法是直接安装调制解调器随附的软件。然后进入程序的 System 菜单。配置文件名通常会列在其中,一般为 ISP

该配置文件名(即服务标签)将作为 PPPoE 设置中 set device 的 provider 部分写入 ppp.conf。具体格式如下(详见 ppp(8)):

set device PPPoE:xl1:ISP

不要忘记将 xl1 替换为以太网设备的实际名称。

也不要忘记将 ISP 替换为实际的服务标签名。

更多信息可参考 Renaud Waldura 所著的 Cheaper Broadband with FreeBSD on DSL

该调制解调器不符合 RFC 2516 所定义的 PPPoE 规范。

为了让 FreeBSD 能够与此设备通信,必须设置一个 sysctl 变量。可在开机时通过修改 /etc/sysctl.conf 实现自动设置:

net.graph.nonstandard_pppoe=1

或者可立即通过以下命令设置:

# sysctl net.graph.nonstandard_pppoe=1

不幸的是,由于这是系统范围的设置,因此无法同时与正常的 PPPoE 客户端或服务器以及 3Com® HomeConnect™ ADSL 调制解调器通信。

最后更新于