28.6. 使用 ATM 上的 PPP (PPPoA)
上一页 | 第 28 章 PPP 和 SLIP | 下一页

## 28.6. 使用 ATM 上的 PPP (PPPoA)

以下将介绍如何设置基于ATM的PPP(PPPoA)。 PPPoA是欧洲DSL提供商的普遍选择。

### 28.6.1. 使用 Alcatel SpeedTouch™USB 的 PPPoA

针对这一设备的 PPPoA 支持， 在 FreeBSD 中是作为 port 提供的， 因为其固件使用了 阿尔卡特许可协议， 因而不能与 FreeBSD 的基本系统一起免费地再发布。

使用 Ports 套件 可以非常方便地安装 `net/pppoa` port， 之后按照它提供的指示操作就可以了。

和许多 USB 设备类似， 阿尔卡特的 SpeedTouch™ USB 需要从主机上下载固件才能够正常工作。 在 FreeBSD 中您可以将此操作自动化， 在有设备插到某个 USB 口的时候自动下载固件。 可以在 `/etc/usbd.conf` 文件中加入下面的信息来让它自动完成固件的传送。 注意， 必须以 `root` 用户的身份编辑它。

device "Alcatel SpeedTouch USB" devname "ugen[0-9]+" vendor 0x06b9 product 0x4061 attach "/usr/local/sbin/modem_run -f /usr/local/libdata/mgmt.o"

要启动USB守护进程usbd， 在`/etc/rc.conf`加入以下行：

usbd_enable="YES"

也可以将ppp设置成启动时拨号。 向 `/etc/rc.conf`加入以下这几行。 同样地您需要以`root`用户登录。

ppp_enable="YES" ppp_mode="ddial" ppp_profile="adsl"

为了使其正常工作， 您需要使用`net/pppoa` port提供的`ppp.conf`样例。

### 28.6.2. 使用mpd

可以使用 mpd 来连接多种类型的服务， 特别是 PPTP 服务。 您可以在 Ports Collection 中找到 mpd， 它的位置是 `net/mpd`。 许多 ADSL modem 需要在 modem 和计算机之间建立一条 PPTP 隧道， 而阿尔卡特 SpeedTouch™ Home 正是其中的一种。

首先需要从 port 完成安装， 然后才能配置 mpd 来满足您的需要， 并完成服务商的配置。 port 会把一系列包括了详细注解的配置文件实例放到 ``PREFIX`/etc/mpd/`。 注意， 这里的 `PREFIX` 表示 ports 安装的目录， 默认情况下， 应该是 `/usr/local/`。 关于配置 mpd 的完整说明， 会以 HTML 格式随 port 一起安装。 这些文件将放在 ``PREFIX`/share/doc/mpd/`。 下面是通过 mpd 连接 ADSL 服务的一个简单例子。 配置被分别放到了两个文件中， 第一个是 `mpd.conf`：

default: load adsl adsl: new -i ng0 adsl adsl set bundle authname `username` set bundle password `password` set bundle disable multilink set link no pap acfcomp protocomp set link disable chap set link accept chap set link keep-alive 30 10 set ipcp no vjcomp set ipcp ranges 0.0.0.0/0 0.0.0.0/0 set iface route default set iface disable on-demand set iface enable proxy-arp set iface idle 0 open

| username用来向您的ISP进行验证。
| password用来向您的ISP进行验证。

`mpd.links`包含连接的信息：

adsl: set link type pptp set pptp mode active set pptp enable originate outcall set pptp self `10.0.0.1` set pptp peer `10.0.0.138`

| 运行mpd的主机的IP地址。
| ADSL modem的IP地址。 Alcatel SpeedTouch™ Home 默认的是 `10.0.0.138`。

初始化连接：

`#` `mpd -b `adsl``

您可以通过以下命令查看连接状态：

`%` `ifconfig `ng0`` ng0: flags=88d1<UP,POINTOPOINT,RUNNING,NOARP,SIMPLEX,MULTICAST> mtu 1500 inet 216.136.204.117 --> 204.152.186.171 netmask 0xffffffff

使用mpd连接ADSL服务是推荐的方式。

### 28.6.3. 使用pptpclient

也可以使用`net/pptpclient`连接其它的 PPPoA。

要使用 `net/pptpclient` 连接 DSL 服务， 需要安装 port 或 package 并编辑 `/etc/ppp/ppp.conf`。 您需要有 `root` 权限才能完成这两项操作。 以下是 `ppp.conf` 中的一个示例项。 参考 ppp 的联机手册 ppp(8)， 以了解更多有关 `ppp.conf` 选项的信息。

adsl: set log phase chat lcp ipcp ccp tun command set timeout 0 enable dns set authname `username` set authkey `password` set ifaddr 0 0 add default HISADDR

| 您在 DSL 服务提供商那里的用户名
| 您帐户的口令。

### 警告:

由于您必须将帐号密码以明文的方式放入`ppp.conf` 您应该确保没有任何人能看到此文件的内容。 以下一系列命令将会确保此文件只对 `root`用户可读。 请参见 chmod(1) 和 chown(8) 的联机手册以了解有关如何操作的进一步信息。

`#` `chown root:wheel /etc/ppp/ppp.conf` `#` `chmod 600 /etc/ppp/ppp.conf`

以下将为到 DSL 路由器的会话打开一个 tunnel。 以太网DSL modem有一个设置的局域网IP地址。 以 Alcatel SpeedTouch™ Home 为例， 这个地址是 `10.0.0.138`。 路由器的文档应该会告诉您它使用的地址。 执行以下命令以打开 tunnel 并开始会话：

`#` `pptp `address` `adsl``

### 提示:

您应该在命令的最后加上(“&”)号， 否则 pptp 无法返回到命令行提示符。

要创建一个 `tun`虚拟设备用于进程pptp 和ppp 之间的交互。 一旦您回到了命令行， 或者 pptp 进程确认了一个连接， 您可以这样检查tunnel设备：

`%` `ifconfig `tun0`` tun0: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 1500 inet 216.136.204.21 --> 204.152.186.171 netmask 0xffffff00 Opened by PID 918

如果您无法连接， 一般可以通过telnet或者web浏览器检查路由器(modem)的配置。 如果依旧无法连接， 您应该检查`pptp`的输出及ppp的日志文件 `/var/log/ppp.log` 以获得线索。

上一页 | 上一级 | 下一页
28.5. 使用基于以太网的PPP(PPPoE) | 起始页 | 28.7. 使用SLIP

本文档和其它文档可从这里下载： ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/.

如果对于FreeBSD有问题，请先阅读 文档，如不能解决再联系 <questions@FreeBSD.org>.
关于本文档的问题请发信联系 <doc@FreeBSD.org>.