FreeBSD 使用手册
上一页 | 第27章 　PPP 和 SLIP | 下一页

# 27.6 使用 ATM 上的 PPP (PPPoA)

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

## 27.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`样例。

## 27.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服务是推荐的方式。

## 27.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` 以获得线索。

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

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

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