aboutsummaryrefslogtreecommitdiff
path: root/zh_CN.GB2312/books/handbook/ppp-and-slip
diff options
context:
space:
mode:
Diffstat (limited to 'zh_CN.GB2312/books/handbook/ppp-and-slip')
-rw-r--r--zh_CN.GB2312/books/handbook/ppp-and-slip/chapter.sgml272
1 files changed, 136 insertions, 136 deletions
diff --git a/zh_CN.GB2312/books/handbook/ppp-and-slip/chapter.sgml b/zh_CN.GB2312/books/handbook/ppp-and-slip/chapter.sgml
index 35ada57c60..478bd3035f 100644
--- a/zh_CN.GB2312/books/handbook/ppp-and-slip/chapter.sgml
+++ b/zh_CN.GB2312/books/handbook/ppp-and-slip/chapter.sgml
@@ -2,7 +2,7 @@
The FreeBSD Documentation Project
The FreeBSD Simplified Chinese Project
- Original Revision: 1.158
+ Original Revision: 1.170
$FreeBSD$
-->
@@ -35,63 +35,66 @@
这些都要求使用 PPP 或 SLIP。
这章将详细介绍设置这些基于 modem 的通信服务的方法。</para>
- <para>读完这一章,您将会了解到:</para>
+ <para>读完这一章, 您将了解:</para>
<itemizedlist>
<listitem>
- <para> 如何设置用户级PPP.</para>
+ <para>如何设置用户级 PPP。</para>
</listitem>
<listitem>
- <para>如何设置内核级PPP.</para>
+ <para>如何设置内核级 PPP。</para>
</listitem>
<listitem>
<para>如何设置 <acronym>PPPoE</acronym> (PPP over
- Ethernet).</para>
+ Ethernet)。</para>
</listitem>
<listitem>
<para>如何设置 <acronym>PPPoA</acronym> (PPP over
- ATM).</para>
+ ATM)。</para>
</listitem>
<listitem>
- <para>如何配置和安装SLIP客户端和服务器.</para>
+ <para>如何配置和安装 SLIP 客户端和服务器。</para>
</listitem>
</itemizedlist>
<indexterm id="ppp-ppp-user">
<primary>PPP</primary>
- <secondary>用户级PPP</secondary>
+ <secondary>用户级 PPP</secondary>
</indexterm>
<indexterm id="ppp-ppp-kernel">
<primary>PPP</primary>
- <secondary>内核级PPP</secondary>
+ <secondary>内核级 PPP</secondary>
</indexterm>
<indexterm id="ppp-ppp-ethernet">
<primary>PPP</primary>
- <secondary>PPPOE</secondary>
+ <secondary>PPPoE</secondary>
</indexterm>
- <para>在阅读这章之前,您应当:</para>
+ <para>在阅读这章之前, 您应:</para>
<itemizedlist>
<listitem>
- <para>熟悉基本的网络术语.</para>
+ <para>熟悉基本的网络术语。</para>
</listitem>
<listitem>
- <para> 理解拨号连接和PPP,SLIP的基础知识.</para>
+ <para>理解拨号连接和 PPP、 SLIP 的基础知识。</para>
</listitem>
</itemizedlist>
- <para>您可能想知道用户级PPP与内核级PPP不同之处.回答很简单:
- 用户级PPP处理用户级的输入和输出数据,而不是内核级.
- 在内核与用户区之间复制数据的花费要大一些,但它能提供具有更多特性的PPP实现 .
- 用户级PPP使用 <devicename>tun</devicename>设备与外界通信而内核级PPP使用
- <devicename>ppp</devicename>设备.</para>
+ <para>您可能想知道用户级 PPP 与内核级 PPP 之间的不同之处。 回答很简单:
+ 用户级 PPP 处理用户级的输入和输出数据, 而不是内核级。
+ 在内核与用户区之间复制数据的花费要大一些,
+ 但它能提供具有更多特性的PPP实现。
+ 用户级PPP使用 <devicename>tun</devicename>
+ 设备与外界通信而内核级 PPP 使用
+ <devicename>ppp</devicename> 设备。</para>
<note>
- <para>除非需要与其它PPP软件(比如<application>pppd</application>)相区别,在这一章中
- 用户级PPP就简称为<application>ppp</application>.另外,若没有额外的注明,本章所介绍
- 的所有命令都需要<username>root</username>权限.
- .</para>
+ <para>除非需要与其它 PPP 软件 (比如 <application>pppd</application>)
+ 相区别, 在这一章中,
+ 用户级 PPP 就简称为 <application>ppp</application>。
+ 另外, 若没有额外的注明, 本章所介绍的所有命令都需要
+ <username>root</username> 权限。</para>
</note>
</sect1>
@@ -128,10 +131,10 @@
</authorgroup>
</sect1info>
- <title>使用用户级PPP</title>
+ <title>使用用户级 PPP</title>
<sect2>
- <title>用户级PPP</title>
+ <title>用户级 PPP</title>
<sect3>
<title>前提条件</title>
@@ -146,15 +149,16 @@
<primary>PPP</primary>
</indexterm>
<listitem>
- <para>您有一个ISP提供的用于连接使用PPP的帐号.</para>
+ <para>您有一个 ISP 提供的用于连接使用 PPP 的帐号。</para>
</listitem>
<listitem>
- <para>您需要一个连接到您的系统并做了正确配置的modem或其它设备,使您能连接到ISP.</para>
+ <para>您需要一个连接到您的系统, 并做了正确配置的 modem
+ 或其它设备, 使您能连接到 ISP。</para>
</listitem>
<listitem>
- <para>ISP的拨号号码.</para>
+ <para>ISP 的拨号号码。</para>
</listitem>
<indexterm id="ppp-pap">
@@ -173,23 +177,24 @@
<primary>password?/primary>
</indexterm>
<listitem>
- <para>您的登录名称和密码(可能是一般的UNIX风格的登录名和密码对,
- 也可能是PAP或CHAP登录名和密码对.)</para>
+ <para>您的登录名称和密码 (可能是一般的 UNIX 风格的登录名和密码对,
+ 也可能是 PAP 或 CHAP 登录名和密码对。)</para>
</listitem>
<indexterm id="ppp-nameserver">
<primary>nameserver</primary>
</indexterm>
<listitem>
- <para>一个或多个域名服务器IP地址.
- 通常,您会从ISP处得到两个这样的IP地址. 如果您至少得到了一个, 就可以
- 在文件<filename>ppp.conf</filename>中加入<command>enable dns</command>命令
- 使<application>ppp</application>设置域名服务.这个功能取决于ISP对支持DNS协商的具体实现.
- </para>
+ <para>一个或多个域名服务器 IP 地址。
+ 通常, 您会从ISP处得到两个这样的IP地址。
+ 如果您至少得到了一个, 就可以在文件
+ <filename>ppp.conf</filename> 中加入 <command>enable dns</command>
+ 命令使 <application>ppp</application> 设置域名服务。
+ 这个功能取决于 ISP 对支持 DNS 协商的具体实现。</para>
</listitem>
</itemizedlist>
- <para>下面的信息由您的ISP提供,但不是必需的:</para>
+ <para>下面的信息由您的 ISP 提供, 但不是必需的:</para>
<itemizedlist>
<listitem>
@@ -621,10 +626,12 @@ exec /usr/sbin/ppp -direct $IDENT</programlisting>
<screen>&prompt.root; <userinput>ln -s ppp-shell /etc/ppp/ppp-dialup</userinput></screen>
- <para>您应该将这个脚本作为所有拨入用户的<emphasis>shell</emphasis>.
- 以下是在文件<filename>/etc/password</filename>中关于一个PPP用户的例子,用户名为
- <username>pchilds</username> (切记不要直接修改这个密码文件,
- 而是使用<command>vipw</command>命令).</para>
+ <para>您应该将这个脚本作为所有拨入用户的
+ <emphasis>shell</emphasis>。
+ 以下是在文件 <filename>/etc/passwd</filename>
+ 中关于 PPP 用户
+ <username>pchilds</username> 的例子 (切记,
+ 不要直接修改这个密码文件, 用 &man.vipw.8; 来修改它)。</para>
<programlisting>pchilds:*:1011:300:Peter Childs PPP:/home/ppp:/etc/ppp/ppp-dialup</programlisting>
@@ -752,9 +759,10 @@ exec /usr/sbin/ppp -direct pap$IDENT</programlisting>
set ifaddr 203.14.100.1 203.14.100.20-203.14.100.40
enable proxy</programlisting>
- <para>每个通过这种方式登录的用户必须在
- <filename>/etc/ppp/ppp.secret</filename>文件中有一个username/password项,或者加入
- 以下选项以使服务器通过PAP方式用<filename>/etc/password</filename>文件验证用户.</para>
+ <para>每个以这种方式登录的用户, 都必须在
+ <filename>/etc/ppp/ppp.secret</filename> 文件中给出用户名/口令,
+ 或者使用以下选项, 来通过 PAP 方式以 <filename>/etc/passwd</filename>
+ 文件提供的信息来完成身份验证。</para>
<programlisting>enable passwdauth</programlisting>
@@ -1844,8 +1852,9 @@ ppp_profile="name_of_service_provider"</programlisting>
<programlisting>net.graph.nonstandard_pppoe=1</programlisting>
- <para>或直接执行命令:
- <command>sysctl net.graph.nonstandard_pppoe=1</command>.</para>
+ <para>或者, 也可以直接执行下面的命令:</para>
+
+ <screen>&prompt.root; <userinput>sysctl net.graph.nonstandard_pppoe=1</userinput></screen>
<para>很不幸,由于这是系统全局设置,无法同时与正常的PPP客户端(或服务器)
和&tm.3com;<trademark class="registered">HomeConnect</trademark> ADSL Modem通信
@@ -2097,28 +2106,32 @@ tun0: flags=8051&lt;UP,POINTOPOINT,RUNNING,MULTICAST&gt; mtu 1500
<sect2 id="slipc">
<title>设置SLIP客户端</title>
<indexterm><primary>SLIP</primary><secondary>client</secondary></indexterm>
- <para>下面是一个在静态主机网络上设置FreeBSD机器的方法.对于动态主机名分配(您的地址在每次拨号时都会改变),
- 您可能还需要更复杂的设置.</para>
-
- <para>首先,确定您的modem连接的串行口.
- 许多人会设置符号连接, 比如<filename>/dev/modem</filename>指向真实的设备名
- <filename>/dev/cuaaN</filename>.这充许您抽像真实的设备名. 当您需
- 要在<filename>/etc</filename>和<filename>.kermrc</filename>文件中修复整个系统上的许多文件时,
- 这是一件非常麻烦的事情!</para>
+ <para>下面是在静态主机网络上配置 FreeBSD 机器使用 SLIP 的方法。
+ 对于动态主机名分配 (您的地址会随每次拨号而不同),
+ 您可能需要稍复杂一些的设置。</para>
+
+ <para>首先, 您需要确认调制解调器所连接的串口。
+ 许多人会设置一个符号连接, 例如
+ <filename>/dev/modem</filename>, 用以指向实际的设备名,
+ <filename>/dev/cuaaN</filename> (或在 &os;&nbsp;6.X 下是
+ <filename>/dev/cuadN</filename>)。 这样您就可以对实际的设备名进行抽象,
+ 以备调制解调器换到其他串口时方便调整之用。
+ 不然, 在系统中修改一大堆 <filename>/etc</filename> 下的文件以及
+ <filename>.kermrc</filename> 将是非常麻烦的事情!</para>
<note>
- <para><filename>/dev/cuaa0</filename> is
- <devicename>COM1</devicename>, <filename>cuaa1</filename> is
+ <para><filename>/dev/cuaa0</filename> (or <filename>/dev/cuad0</filename> under &os;&nbsp;6.X) is
+ <devicename>COM1</devicename>, <filename>cuaa1</filename> (or <filename>/dev/cuad1</filename>) is
<devicename>COM2</devicename>, etc.</para>
</note>
- <para>确保您的内核文件包含以下内容:</para>
-
- <programlisting>pseudo-device sl 1</programlisting>
+ <para>确保您的内核文件包含以下内容:</para>
+
+ <programlisting>device sl</programlisting>
- <para>在 &os;&nbsp;5.X 中, 则应使用:</para>
+ <para>对于 &os;&nbsp;4.X, 则是:</para>
- <programlisting>device sl</programlisting>
+ <programlisting>pseudo-device sl 1</programlisting>
<para>这包含在<filename>GENERIC</filename>内核,所以这应该不会是个问题,除非您
已经删除了它。</para>
@@ -2163,23 +2176,6 @@ tun0: flags=8051&lt;UP,POINTOPOINT,RUNNING,MULTICAST&gt; mtu 1500
<para>应该用您主机的Internet全名代替.</para>
</listitem>
- <listitem>
- <para>改变以下这些行将<devicename>sl0</devicename>添加到网络接口
- 列表中:</para>
-
- <programlisting>network_interfaces="lo0"</programlisting>
-
- <para>改为:</para>
-
- <programlisting>network_interfaces="lo0 sl0"</programlisting>
- </listitem>
-
- <listitem>
- <para> 加入以下这一行设置<devicename>sl0</devicename>的启动标志:</para>
-
- <programlisting>ifconfig_sl0="inet ${hostname} slip-gateway netmask 0xffffff00 up"</programlisting>
- </listitem>
-
<indexterm><primary>default route</primary></indexterm>
<listitem>
<para>改变这一行以指明默认的路由:</para>
@@ -2368,13 +2364,16 @@ water.CS.Example localhost.Example. UGH 34 47641234 lo0 - 0.438
协议的书籍.</para>
<indexterm><primary>modem</primary></indexterm>
- <para>另外还假定您已经设置好了您的modem并配置了相应的文件允许通过modem登录. 如果您还没有准备好您的系统,请
- 参考拨号服务的配置指南; 如果您能使用网页浏览器,也可以浏览
- <ulink url="&url.base;/docs.html">http://www.FreeBSD.org/docs.html</ulink>上的指南列表.
- 您还需要参考&man.sio.4;以获取串行端口设备驱动的信息,
- &man.ttys.5;,&man.gettytab.5;, &man.getty.8;, &amp; &man.init.8;以获取配置系统以接受modem登录的
- 相关信息,也许还有 &man.stty.1;以获取有关串行口参数设置的信息(比如<literal>clocal</literal>指直线串行
- 接口).</para>
+ <para>此外还假定您已经配置好了您的调制解调器以及相应的系统文件,
+ 以允许通过调制解调器进行登录。 如果您还没有为此配置好系统,
+ 请参见 <xref
+ linkend="dialup"> 以了解关于如何进行拨号服务的配置。
+ 您可能也会想看一看 &man.sio.4; 的联机手册,
+ 以了解关于串口设备驱动的进一步信息, 以及 &man.ttys.5;、
+ &man.gettytab.5;、 &man.getty.8; &amp; &man.init.8;
+ 上关于怎样配置系统来接受来自调制解调器的登录请求的具体情况,
+ 还有 &man.stty.1; 以了解关于设置串口参数
+ (例如 <literal>clocal</literal> 表示串口直联) 等。</para>
</sect3>
<sect3>
@@ -2406,60 +2405,57 @@ water.CS.Example localhost.Example. UGH 34 47641234 lo0 - 0.438
<programlisting>/etc/sliphome/slip.login 0 19200 Shelmerg dc-slip sl-helmer 0xfffffc00 autocomp</programlisting>
- <para>如果一切顺利,
- <filename>/etc/sliphome/slip.login</filename>为<command>sliplogin</command>
- )绑定的接口(在上面的例子中,是<filename>slip.login</filename>参数列表的第一个参数)运行
- <command>ifconfig</command>以设置SLIP接口的本地IP地址(<hostid>dc-slip</hostid>),远程IP地址(<hostid>sl-helmer</hostid>),
- 掩码(<hostid role="netmask">0xfffffc00</hostid>),及其它附加的标志(<literal>autocomp</literal>). 如果出现错误
- ,<command>sliplogin</command> 通常会使用syslog<literal>守护进程</literal>将有用的信息写入
- <filename>/var/log/messages</filename> 参考&man.syslogd.8;和&man.syslog.conf.5;联机手册及<filename>/etc/syslog.conf</filename>,
- 以获知<command>syslogd</command>是如何工作的).</para>
-
- <para>好了,让我们开始设置系统 .</para>
+ <para>如果一切顺利
+ <filename>/etc/sliphome/slip.login</filename> 将在 <command>sliplogin</command>
+ 绑定的 SLIP 接口上发出
+ <command>ifconfig</command> (前述的例子中是 SLIP 接口
+ 0, 这是 <filename>slip.login</filename> 的第一个参数),
+ 以设置本地 IP 地址 (<hostid>dc-slip</hostid>)、 远程 IP 地址
+ (<hostid>sl-helmer</hostid>)、 这一 SLIP
+ 接口的子网掩码 (<hostid role="netmask">0xfffffc00</hostid>),
+ 以及任何其他标志 (<literal>autocomp</literal>)。
+ 如果发生错误, <command>sliplogin</command> 通常会通过
+ <application>syslogd</application> 的 daemon facility
+ 记下有用的信息, 前者会把这些信息保存到 <filename>/var/log/messages</filename>
+ (参见 &man.syslogd.8; 和 &man.syslog.conf.5; 以及
+ <filename>/etc/syslog.conf</filename> 的联机手册, 以了解
+ <application>syslogd</application> 在记录什么,
+ 以及这些内容将被记在哪里)。</para>
</sect4>
</sect3>
<sect3>
<title>内核配置</title>
<indexterm><primary>kernel</primary><secondary>configuration</secondary></indexterm>
- <para>FreeBSD默认的内核一般定义了两个SLIP接口:(<devicename>sl0</devicename>和
- <devicename>sl1</devicename>); 您可以使用 <command>netstat
- -i</command>命令查看您的内核是否定义了这些接口.</para>
-
- <para><command>netstat -i</command>样例输出:</para>
-
- <screen>Name Mtu Network Address Ipkts Ierrs Opkts Oerrs Coll
-ed0 1500 &lt;Link&gt;0.0.c0.2c.5f.4a 291311 0 174209 0 133
-ed0 1500 138.247.224 ivory 291311 0 174209 0 133
-lo0 65535 &lt;Link&gt; 79 0 79 0 0
-lo0 65535 loop localhost 79 0 79 0 0
-sl0* 296 &lt;Link&gt; 0 0 0 0 0
-sl1* 296 &lt;Link&gt; 0 0 0 0 0</screen>
+ <indexterm><primary>SLIP</primary></indexterm>
- <para><command>netstat -i</command>显示的<devicename>sl0</devicename>
- <devicename>sl1</devicename>接口表明您的内核内建了两个SLIP接口. (
- <literal>sl0</literal>和<literal>sl1</literal> 之后的星号表明
- 这两个接口是<quote>关闭</quote>的.)</para>
+ <para>&os; 的默认内核 (<filename>GENERIC</filename>)
+ 提供了 SLIP (&man.sl.4;) 支持; 使用定制的内核时,
+ 您必须把下面的设置加入到配置文件:</para>
- <para>然而,FreeBSD默认的内核并没有配置额外的包 (默认的,您的FreeBSD不会被作为一个路由器)
- 因为Internet RFC对Internet主机有特殊要求(参考
- RFCs 1009 [Requirements for Internet Gateways], 1122
- [Requirements for Internet Hosts &mdash; Communication Layers],
- 还有 1127 [A Perspective on the Host Requirements RFCs]).
- 如果您想让FreeBSD SLIP服务器成为一个路由器,就必须编辑
- <filename>/etc/rc.conf</filename>,将<literal>gateway_enable</literal>变量设为<option>YES</option>.</para>
+ <programlisting>device sl</programlisting>
- <para>然后您要重新启动使新的设置生效.</para>
+ <para>在 &os;&nbsp;4.X 下, 则是:</para>
- <para>您会发现靠近默认内核配置文件(<filename>/sys/i386/conf/GENERIC</filename>)的最后,
- 有这么一行:</para>
+ <programlisting>pseudo-device sl 2</programlisting>
- <programlisting>pseudo-device sl 2</programlisting>
+ <note>
+ <para>行末的数字表示允许同时使用的最大 SLIP 连接数。
+ 从 &os;&nbsp;5.0 开始, &man.sl.4;
+ 驱动具有了 <quote>自动克隆</quote> 的能力,
+ 因而不再需要这一设置。</para>
+ </note>
- <indexterm><primary>SLIP</primary></indexterm>
- <para>这一行定义内核中可用的SLIP设备个数;行末尾的数字表示同时进行操作的SLIP连接的最大个数.</para>
+ <para>默认情况下, 您的 &os; 计算机不会转发包。
+ 如果您希望将 FreeBSD SLIP 服务器作为路由器使用,
+ 就需要修改 <filename>/etc/rc.conf</filename> 文件,
+ 并加入一项将 <literal>gateway_enable</literal> 变量设为
+ <option>YES</option> 的设制。</para>
+
+ <para>接下来需要重新启动以便使新设置生效。</para>
- <para>请参考<xref linkend="kernelconfig">FreeBSD内核配置这一章以获取配置内核的帮助.</para>
+ <para>请参见 <xref linkend="kernelconfig"> 以了解如何配置 FreeBSD
+ 内核, 并获得在重新配置内核方面的指导。</para>
</sect3>
<sect3>
@@ -2496,8 +2492,8 @@ sl1* 296 &lt;Link&gt; 0 0 0 0
<para>本地和远程地址可以是主机名
(通过文件<filename>/etc/hosts</filename>或者域名服务解析为IP地址,
- 在FreeBSD&nbsp;5.X上这取决于文件<filename>/etc/nsswitch.conf</filename>的设置
- 在FreeBSD&nbsp;4.X里,则是<filename>/etc/host.conf</filename>),网络掩网可以是一个
+ 在FreeBSD&nbsp;5.X上这取决于文件<filename>/etc/nsswitch.conf</filename>的设置;
+ 而在FreeBSD&nbsp;4.X里,则是<filename>/etc/host.conf</filename>),网络掩网可以是一个
能通过文件<filename>/etc/networks</filename>解析的名字.在一个样例系统中,
<filename>/etc/sliphome/slip.hosts</filename>是这样的:</para>
@@ -2507,7 +2503,7 @@ sl1* 296 &lt;Link&gt; 0 0 0 0
#
Shelmerg dc-slip sl-helmerg 0xfffffc00 autocomp</programlisting>
- <para>在这行的末尾是一个或多个选项.</para>
+ <para>在这行末尾是一或多个选项:</para>
<itemizedlist>
<listitem>
@@ -2604,12 +2600,12 @@ Shelmerg dc-slip sl-helmerg 0xfffffc00 autocomp</programlisting
这是&man.arp.8;要求的格式; 参考&man.arp.8; 的联机手册以获取完整的使用方法.</para>
<note>
- <para>创建
- <filename>/etc/sliphome/slip.login</filename>和
- <filename>/etc/sliphome/slip.logout</filename>时,一定要设置
- <quote>执行(execute)</quote>位 (<command>chmod 755
- /etc/sliphome/slip.login /etc/sliphome/slip.logout</command>)
- ,否则 <command>sliplogin</command>将无法执行它.</para>
+ <para>在编写
+ <filename>/etc/sliphome/slip.login</filename> 和
+ <filename>/etc/sliphome/slip.logout</filename> 时, 一定要设置
+ <quote>可执行</quote> (execute) 位 (换言之, <command>chmod 755
+ /etc/sliphome/slip.login /etc/sliphome/slip.logout</command>),
+ 否则 <command>sliplogin</command>将无法执行它。</para>
</note>
</sect4>
@@ -2650,10 +2646,14 @@ Shelmerg dc-slip sl-helmerg 0xfffffc00 autocomp</programlisting
# Quit answering ARP requests for the SLIP client
/usr/sbin/arp -d $5</programlisting>
- <para>命令<command>arp -d &#36;5</command> 删除<filename>slip.login</filename>在SLIP客户登录时添加的ARP项 .</para>
+ <para><command>arp -d &#36;5</command> 将删除由 <quote>代理 ARP</quote>
+ <filename>slip.login</filename> 在 SLIP 客户程序登录时所生成的
+ ARP 项。</para>
- <para>再次强调:确保您创建<filename>/etc/sliphome/slip.logout</filename>时设置了执行位
- (ie, <command>chmod 755 /etc/sliphome/slip.logout</command>).</para>
+ <para>再次强调: 建立
+ <filename>/etc/sliphome/slip.logout</filename> 之后,
+ 一定要设置可执行位 (也就是说, <command>chmod 755
+ /etc/sliphome/slip.logout</command>)。</para>
</sect4>
</sect3>