diff options
author | Xin LI <delphij@FreeBSD.org> | 2005-04-06 11:49:23 +0000 |
---|---|---|
committer | Xin LI <delphij@FreeBSD.org> | 2005-04-06 11:49:23 +0000 |
commit | 058561dc25c94702521138e2139be21b6a88bc0e (patch) | |
tree | 72377a56a9cdc3a692b51c68877ac8f02325647f /zh_CN.GB2312/books/handbook | |
parent | 5174d5c33475cad1b6540ea9890645aec32aeb27 (diff) |
Notes
Diffstat (limited to 'zh_CN.GB2312/books/handbook')
-rw-r--r-- | zh_CN.GB2312/books/handbook/ppp-and-slip/chapter.sgml | 258 |
1 files changed, 152 insertions, 106 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 608bed46ba..a250b533ef 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.143 + Original Revision: 1.157 $FreeBSD$ --> @@ -29,8 +29,11 @@ <primary>SLIP</primary> </indexterm> - <para>FreeBSD有很多方法可以将计算机与计算机连接起来. 通过一个拨号modem来建立一个网络或Internet连接, - 或允许其他人与您连接,要求使用PPP或SLIP.这章将详细介绍设置这些基于modem的通信服务的方法 .</para> + <para>FreeBSD 有很多方法可以将计算机与计算机连接起来。 + 通过使用拨号 modem 来建立网络或 Internet 连接, + 或允许其他人通过您的机器来连上网络, + 这些都要求使用 PPP 或 SLIP。 + 这章将详细介绍设置这些基于 modem 的通信服务的方法。</para> <para>读完这一章,您将会了解到:</para> @@ -232,7 +235,7 @@ 是否存在<devicename>tun0</devicename>设备,如果已经启用了&man.devfs.5;,这一步就没必要了 (因为&man.devfs.5;会根据需要创建设备).</para> - <para>为了确保<devicename>tun0</devicename>配置正确,最古老的方式是重新创建它. + <para>为了确保<devicename>tun0</devicename>配置正确, 最简单的方式是重新创建它。 按照以下步骤可以重新创建设备:</para> <screen>&prompt.root; <userinput>cd /dev</userinput> @@ -263,7 +266,7 @@ <note> <para>以冒号<literal>:</literal>结尾的行从第一列 (行首)开始, - 其它所有的行都要缩进一个空格或制表区间.</para> + 其它所有的行都要使用空格或制表符 (Tab) 来缩进。</para> </note> <programlisting>1 default: @@ -386,7 +389,8 @@ <para>设置提供商的电话号码. 多个电话号码可以使用冒号(<literal>:</literal>) 或管道符号(<literal>|</literal>)隔开.这两个字符的区别在&man.ppp.8;的联机手册中有介绍. 总的来讲,如果您要循环使用这些号码,可以使用冒号.如果您想使用第一个号码, - 当第一个号码失败了再用第二个号码,就使用管道符号.正如显示的那样,要用括号将号码集括起来.</para> + 当第一个号码失败了再用第二个号码,就使用管道符号。 + 如所示的那样, 要给整个电话号码加上引号(")。</para> <para> 如果电话号码里有空格,必须用引号(<literal>"</literal>)将其括起来. 否则会造成简单却难以察觉的错误.</para> @@ -921,21 +925,23 @@ ifconfig_tun0=</programlisting> 您可能希望使用<option>-alias</option>.参考相关联机手册了解更多细节.</para> </note> - <para>在<filename>/etc/rc.conf</filename>用下面这一行把路由程序设为<literal>NO</literal>:</para> + <para>务必在 + <filename>/etc/rc.conf</filename> 中, 把路由程序设置为 <literal>NO</literal>:</para> <programlisting>router_enable="NO"</programlisting> <indexterm> <primary><application>routed</application></primary> </indexterm> - <para>这很重要,如果您没有启动 <command>routed</command> 服务的话(这是默认情况), - 因为 <command>routed</command> 总是会删掉 <command>ppp</command> 所建立的默认路由。</para> + <para>不启动 <command>routed</command> 服务程序非常重要, 因为 + <command>routed</command> 总会删掉由 <command>ppp</command> + 所建立的默认路由。</para> - <para>此外,可能还应该确认一下 - <literal>sendmail_flags</literal> 中不包括 - <option>-q</option> 这个选项,否则 - <command>sendmail</command> 会不断地尝试做网络连接,这可能会导致您的机器不停地进行拨号。 - 可以试试看:</para> + <para>此外, 还应该确保 + <literal>sendmail_flags</literal> 这一行没有 + <option>-q</option> 参数, 否则 + <command>sendmail</command> 将会不断地尝试查找网络, + 而这样做将会导致机器不断地进行拨号。 可以考虑:</para> <programlisting>sendmail_flags="-bd"</programlisting> @@ -1131,16 +1137,17 @@ defaultroute # put this if you want that PPP server will be your <para>连接:</para> - <indexterm><primary>kermit</primary></indexterm> + <indexterm><primary>Kermit</primary></indexterm> <indexterm><primary>modem</primary></indexterm> <procedure> <step> - <para>使用<application>kermit</application>(或其它的拨号软件)拨号到远程主机, 然后键入用户名和密码 (或者其它). - </para> + <para>使用 <application>Kermit</application> (或其他 modem + 程序来拨号), 然后输入您的用户名和口令 + (或在远程主机上启用 PPP 所需的其他信息)。</para> </step> <step> - <para>退出<application>kermit</application> (不挂断连接).</para> + <para>退出 <application>Kermit</application> (并不挂断连接)。</para> </step> <step> @@ -1177,9 +1184,10 @@ ifconfig ppp0 delete kermit -y /etc/ppp/kermit.dial pppd /dev/tty01 19200</programlisting> - <indexterm><primary>kermit</primary></indexterm> - <para><filename>/etc/ppp/kermit.dial</filename>是一个 <application>kermit</application>脚本,它用于 - 向远程主机进行拨号和验证(在文档的最后有这个脚本的例子).</para> + <indexterm><primary>Kermit</primary></indexterm> + <para><filename>/etc/ppp/kermit.dial</filename> 是一个 <application>Kermit</application> + 脚本, 它会完成拨号, 并在远程主机上完成所有需要的身份验证过程 + (这份文档的最后有一个脚本实例)。</para> <para>使用下面这个脚本<filename>/etc/ppp/pppdown</filename>断开PPP连线:</para> @@ -1342,7 +1350,7 @@ ifconfig ppp0 delete kermit -y /etc/ppp/kermit.noans</programlisting> - <para>The following <application>kermit</application> script + <para>The following <application>Kermit</application> script (<filename>/etc/ppp/kermit.ans</filename>) will enable/disable autoanswer mode on your modem. It should look like this:</para> @@ -1520,7 +1528,7 @@ exit 1 如果没有配置过内核, 就没什么可担心的了.只要查看 <command>dmesg</command>的输出以找到modem设备:</para> - <screen>&prompt.root;<userinput>dmesg | grep sio</userinput></screen> + <screen>&prompt.root; <userinput>dmesg | grep sio</userinput></screen> <para>您应该找到与<devicename>sio</devicename>设备有关的输出. 这些就是我们需要的COM端口. 如果您的modem按照标准串行端口工作,您能在<devicename>sio1</devicename>或<devicename>COM2</devicename>找到它. 如果是这样, @@ -1779,17 +1787,21 @@ ppp_profile="name_of_service_provider"</programlisting> <para>您可以在ISP提供的文档中找到必要的服务标签信息.若不能找到,向您的ISP询求技术支持.</para> - <para>作为最后的方法, 您可以试试程序 + <para>作为最后的方法, 您可以试试 <ulink url="http://www.roaringpenguin.com/pppoe/">Roaring Penguin - PPPoE</ulink> 所建议的方法,这个程序可以在 <link - linkend="ports">ports collection</link>找到. 但要切记, - 这会de-program您的modem,可能使其无效,因此在使用之前要考虑再三.装与modem一起取得的程序.然后访问 - 这个程序的<guimenu>System</guimenu>菜单.您的profile名应该在那里显示出来.一般是会 - <emphasis>ISP</emphasis>的名称.</para> - - <para> profile名(服务器标签)会在 - <filename>ppp.conf</filename>中的PPPOE配置项作为 <command>set device</command>命令的provider部分被用到(参考&man.ppp.8;). - 如下所示:</para> + PPPoE</ulink>, 它可以在 <link + linkend="ports">Ports Collection</link> 中找到。 + 然而需要注意的是, 它可能会清楚 modem 的固件, 并使其无法正常工作, + 因此一定要仔细考虑之后再做这个操作。 简单地安装由服务提供商随 modem + 提供的程序。 随后, 选择 + <guimenu>System</guimenu> 菜单。 您的配置文件应该会在这里列出。 + 一般来说它的名字应该是 + <emphasis>ISP</emphasis>。</para> + + <para>配置文件名 (service tag, 服务标签) 将被用于 PPPoE + 在 <filename>ppp.conf</filename> 中的配置项, + 作为服务商 <command>set device</command> 命令的一部分 (参见 &man.ppp.8; + 联机手册以了解更多细节)。 它应该类似下面的样子:</para> <programlisting>set device PPPoE:<replaceable>xl1</replaceable>:<replaceable>ISP</replaceable></programlisting> @@ -1856,18 +1868,22 @@ ppp_profile="name_of_service_provider"</programlisting> <sect2> <title>使用带有一个Alcatel &speedtouch;USB的PPPoA </title> - <para>在FreeBSD中对这个设备的PPPoA支持是作为一个port - 提供的.因为此设备的驱动程序是在 <ulink - url="http://www.speedtouchdsl.com/disclaimer_lx.htm">Alcatel的许可协议</ulink>下发布的, - 无法再在FreeBSD的基础系统中自由的重新发布.</para> + <para>针对这一设备的 PPPoA 支持, 在 + FreeBSD 中是作为 port 提供的, 因为其固件使用了 <ulink + url="http://www.speedtouchdsl.com/disclaimer_lx.htm">阿尔卡特许可协议</ulink>, + 因而不能与 FreeBSD 的基本系统一起免费地再发布。</para> - <para>要安装这个软件,只需使用<link linkend="ports">ports collection</link>. 安装 - <filename role="package">net/pppoa</filename>port,然后根据提供的指示操作.</para> + <para>使用 <link + linkend="ports">Ports Collection</link> 可以非常方便地安装 + <filename role="package">net/pppoa</filename> port, + 之后按照它提供的指使操作就可以了。</para> - <para>如同大部分的USB设备, Alcatel &speedtouch; USB也需要从主机上 - 下载驱动程序以正常工作.可以在&os;中自动完成这个过程(当每次设备被接入USB接口时,即完成传输). - 加入到<filename>/etc/usbd.conf</filename>需要加入以下内容以启用自动化固件传输. - <username>root</username>才有用户有权限编辑这个文件.</para> + <para>和许多 USB 设备类似, 阿尔卡特的 &speedtouch; USB + 需要从主机上下载固件才能够正常工作。 您可以在 &os; 中将此操作自动化, + 这样当设备插到某个 USB 口的时候就会自动下载固件了。 可以在 + <filename>/etc/usbd.conf</filename> + 文件中加入下面的信息来让它自动完成固件的传送。 注意, 必须以 + <username>root</username> 用户的身份编辑它。</para> <programlisting>device "Alcatel SpeedTouch USB" devname "ugen[0-9]+" @@ -1896,20 +1912,26 @@ ppp_profile="adsl"</programlisting> <sect2> <title>使用mpd</title> - <para>您可以使用<application>mpd</application>连接多种服务 - ,特别是PPTP服务.您能在ports collection中找到<application>mpd</application> - (<filename role="package">net/mpd</filename>).许多ADSL modem - 需要在计算机和modem之间创建一个PPTP tunnel. Alcatel &speedtouch; - Home就是这样的modem.</para> - - <para>首先您必须安装这个port,然后您要配置 - <application>mpd</application>以符合您的需要及提供商的设置.这个port把一系列编写 - 地很好的配置文件样例放在<filename><replaceable>PREFIX</replaceable>/etc/mpd/</filename>目录中. - 注意这里的 <replaceable>PREFIX</replaceable>指的是port安装的目录,默认的是 - <filename>/usr/local/</filename>.port完成安装后,会有一份完整的<application>mpd</application>配置向导放在 - <filename><replaceable>PREFIX</replaceable>/share/doc/mpd/</filename>目录. - 这里是一个使用<application>mpd</application>连接ADSL的样例配置信息. 配置分为两个文件 - 第一个是<filename>mpd.conf</filename>:</para> + <para>可以使用 <application>mpd</application> 来连接多种类型的服务, + 特别是 PPTP 服务。 您可以在 Ports Collection 中找到 + <application>mpd</application>, 它的位置是 + <filename role="package">net/mpd</filename>。 许多 ADSL modem + 需要在 modem 和计算机之间建立一条 PPTP 隧道, + 而阿尔卡特 &speedtouch; Home 正是其中的一种。</para> + + <para>首先需要从 port 完成安装, + 然后才能配置 <application>mpd</application> 来满足您的需要, + 并完成服务商的配置。 port 会把一系列包括了详细注解的配置文件实例放到 + <filename><replaceable>PREFIX</replaceable>/etc/mpd/</filename>。 + 注意, 这里的 <replaceable>PREFIX</replaceable> 表示 ports + 安装的目录, 默认情况下, 应该是 + <filename>/usr/local/</filename>。 + 关于配置 <application>mpd</application> 的完整说明, 会以 + HTML 格式随 port 一起安装。 这些文件将放在 + <filename><replaceable>PREFIX</replaceable>/share/doc/mpd/</filename>。 + 下面是通过 <application>mpd</application> 连接 ADSL + 服务的一个简单例子。 配置被分别放到了两个文件中, 第一个是 + <filename>mpd.conf</filename>:</para> <programlisting>default: load adsl @@ -2106,7 +2128,9 @@ tun0: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 1500 <procedure> <step> - <para>向文件<filename>/etc/hosts</filename>添加您的主机,网关和域名服务器.我的是这样的:</para> + <para>把您本地网络上的机器、 网关以及域名服务器, + 都加入到 <filename>/etc/hosts</filename> 文件中。 + 我们的是下面这个样子:</para> <programlisting>127.0.0.1 localhost loghost 136.152.64.181 water.CS.Example.EDU water.CS water @@ -2116,11 +2140,15 @@ tun0: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 1500 </step> <step> - <para>在FreeBSD5.0以前的版本中,请确保<filename>/etc/host.conf</filename>中<option>绑定 - </option>的<option>hosts</option>必须是存在的.从FreeBSD 5.0开始,系统开始改用 - 文件<filename>/etc/nsswitch.conf</filename>, - <option>hosts</option>行的<option>dns</option>选项之前必须有<option>files</option>选项. - 缺少这些可能会发生很滑稽的事.</para> + <para>在 FreeBSD 5.0 之前的版本中, 请务必确保 + <filename>/etc/host.conf</filename> 中的 <literal>hosts</literal> 在 + <literal>bind</literal> 之前出现。 + 从 FreeBSD 5.0 开始, 系统转而使用 + <filename>/etc/nsswitch.conf</filename> 文件, + 请确认在这个文件中 <option>hosts</option> 一行里, + <literal>files</literal> 出现在 + <literal>dns</literal> 之前。 如果没有这些参数, + 可能会发生很奇怪的事情。</para> </step> <step> @@ -2193,8 +2221,11 @@ nameserver 128.32.136.12</programlisting> <indexterm><primary>SLIP</primary><secondary>connecting with</secondary></indexterm> <procedure> <step> - <para>在命令行输入<command>slip</command>进行拨号, - 输入您的主机名和密码.需要输入的内容取决您的环境.如果您使用kermit,可以试试这个脚本:</para> + <para>在命令提示符之后输入 <command>slip</command> 进行拨号, + 输入您的机器名和口令。 具体需要输入什么, + 与您的环境密切相关。 如果使用 + <application>Kermit</application>, + 则可以使用类似下面的脚本:</para> <programlisting># kermit setup set modem hayes @@ -2210,21 +2241,22 @@ output slip\x0d, input 10 Username:, if failure stop, - output silvia\x0d, input 10 Password:, if failure stop, - output ***\x0d, echo \x0aCONNECTED\x0a</programlisting> - <para>当然,您需要更改主机名和密码以符合实际情况.完成了这些后,您只需在kermit提示符下键入 - <command>slip</command>进行连接.</para> + <para>当然, 您还需要修改用户名和口令来满足实际需要。 + 完成这些操作之后, 只需在 <application>Kermit</application> 提示符之后输入 + <command>slip</command> 就可以连接了。</para> <note> - <para>将密码以纯文本的形式存放在文件系统无论如何都是个 <emphasis>坏</emphasis>主意. - Do it at your own risk.</para> + <para>将密码以纯文本的形式存放在文件系统无论如何都是个 <emphasis>坏</emphasis> 主意。 + 请考虑这样做的风险。</para> </note> </step> <step> - <para>退出kermit(您可以用 + <para>在这里退出 <application>Kermit</application> (也可以用 <keycombo> <keycap>Ctrl</keycap> <keycap>z</keycap> - </keycombo>将其挂起),以<username>root</username>用户键入:</para> + </keycombo> 将其挂起), 以 <username>root</username> 用户键入:</para> <screen>&prompt.root; <userinput>slattach -h -c -s 115200 /dev/modem</userinput></screen> @@ -2242,21 +2274,26 @@ output ***\x0d, echo \x0aCONNECTED\x0a</programlisting> <screen>&prompt.root; <userinput>kill -INT `cat /var/run/slattach.modem.pid`</userinput></screen> - <para>kill <command>slattach</command>. 切记您一定要是 <username>root</username>用户才有权限. - 然后回到kermit(如果想将其挂起,执行命令<command>fg</command>)再从中退出(<command>q</command>).</para> + <para>来杀掉 <command>slattach</command>。 切记上述操作只有以 + <username>root</username> 身份才能完成。 接下来回到 + <command>kermit</command> (如果之前是将它挂起了, + 则使用 <command>fg</command>) 并退出 (<keycap>q</keycap>)。</para> - <para><command>slattach</command>的联机手册说必须用<command>ifconfig sl0 down</command> - 将这个接口标记为关闭,但对我来说,这似乎没有任何区别. - (<command>ifconfig sl0</command>仍报告一样的东西.)</para> + <para>在 &man.slattach.8; 联机手册中提到, + 必须使用 <command>ifconfig sl0 down</command> + 才能将接口标记为关闭, 但和这样做似乎没有什么区别。 + (<command>ifconfig sl0</command> 仍然报告同样的东西。)</para> - <para>有时候,您的modem会拒绝退出 - (我的时常这样).遇到这种情况,您只要启动kermit然后再次退出.一般在试二次就可以了.</para> + <para>有时, 您的 modem 可能会拒绝挂断。 + 这种情况下, 只需重新启动 <command>kermit</command> + 并再次退出它就可以了。 一般来说试二次就可以了。</para> </sect3> <sect3> <title>问题解答</title> - <para>如果不行,尽管来问我.一般可以这样解决问题:</para> + <para>如果还不行, 尽管发邮件到 &a.net.name; 邮件列表来提问。 + 常见的问题包括:</para> <itemizedlist> <listitem> @@ -2625,9 +2662,10 @@ Shelmerg dc-slip sl-helmerg 0xfffffc00 autocomp</programlisting <primary>SLIP</primary> <secondary>routing</secondary> </indexterm> - <para>如果您不使用<quote>ARP代理</quote>的 - 方式来路由SLIP客户端与网络的其余部分(可能是Internet)之间的数据包, - 您就必须通过SLIP服务器向最近的默认路由器添加静态路由以路由您的SLIP客户子网.</para> + <para>如果没有使用 <quote>代理 ARP</quote> 的方法来在您的 + SLIP 客户机和网络的其余部分 (也可能是 Internet) + 之间路由数据包, 您可能需要增加离您最近的默认路由器的静态路由, + 以便通过 SLIP 服务器来在 SLIP 客户机子网上进行路由。</para> <sect4> <title>静态路由</title> @@ -2643,7 +2681,7 @@ Shelmerg dc-slip sl-helmerg 0xfffffc00 autocomp</programlisting <sect4> <title>运行<application>&gated;</application></title> <indexterm> - <primary><application>gated</application></primary> + <primary><application>&gated;</application></primary> </indexterm> <note> @@ -2653,12 +2691,13 @@ Shelmerg dc-slip sl-helmerg 0xfffffc00 autocomp</programlisting those that are still using an older version.</para> </note> - <para>为了避免静态路由使您头疼,您可以在FreeBSD SLIP服务器上安装 - <application>&gated;</application> - ,然后配置它使用合适的路由协议 - (RIP/OSPF/BGP/EGP)以告知其它路由器有关SLIP子网的信息. - 您需要编写一个名为 <filename>/etc/gated.conf</filename> - 文件来配置您的gated;这里有一个样例,与作者所使用的相同:</para> + <para>另一种避免静态路由所造成的头疼的方法, 是在您的 FreeBSD + SLIP 服务器上安装 <application>&gated;</application>, + 并配置它使用合适的路由协议 + (RIP/OSPF/BGP/EGP) 来告诉其他路由器您的 SLIP + 子网的存在。 您需要编写一个 <filename>/etc/gated.conf</filename> + 文件来配置 <application>&gated;</application>; + 这里是 FreeBSD SLIP 服务器作者编写的一个例子:</para> <programlisting># # gated configuration file for dc.dsu.edu; for gated version 3.5alpha5 @@ -2699,23 +2738,30 @@ import proto rip interface ed { } ;</programlisting> <indexterm><primary>RIP</primary></indexterm> - <para>以上这个<filename>gated.conf</filename> 文件 - 通过RIP向以太网广播有关SLIP子网的信息<replaceable>xxx.xxx.yy</replaceable>; - 如果您使用的以太网驱动与<devicename>ed</devicename>不同 - 您需要将<devicename>ed</devicename>改成合适的接口. - 这个示例文件也设置了将跟踪信息写入<filename>/var/tmp/gated.output</filename> - 以诊断<application>&gated;</application>的活动;如果<application>&gated;</application>工作正常, - 您当然也可以关闭跟踪选项.要把<replaceable>xxx.xxx.yy</replaceable> - 改成实际的SLIP子网网络地址 - (确保同时更改了 <literal>proto direct</literal>中的掩码 ).</para> - - <para>一旦您在系统上安装并配置了 - <application>&gated;</application>,您需要告知 - FreeBSD<application>&gated;</application>的启动脚本以代替 - <application>routed</application>. 最古老的做法是在<filename>/etc/rc.conf</filename>中设置 - <varname>router</varname> - <varname>router_flags</varname>变量. 参考 - <application>&gated;</application>的联机手册以获得有关命令行参数的信息.</para> + <para>上面这个 <filename>gated.conf</filename> 示例文件, + 将把关于 SLIP 子网 + <replaceable>xxx.xxx.yy</replaceable> 的信息, 通过 RIP 广播到 + Ethernet 上; 如果您使用了的 Ethernet 驱动不是 + <devicename>ed</devicename>, 则需要把 <devicename>ed</devicename> + 改为相应的网络接口。 这个例子也配置了将跟踪信息写到 + <filename>/var/tmp/gated.output</filename> + 以提供调试 <application>&gated;</application> 活动的信息; + 当然, 如果 + <application>&gated;</application> 工作正常, + 就可以关闭这些跟踪信息了。 您需要把 <replaceable>xxx.xxx.yy</replaceable> + 改成您自己的 SLIP 子网 (一定要同时修改 <literal>proto direct</literal> + 小节)。</para> + + <para>一旦在系统中安装并配置了 + <application>&gated;</application>, + 就可以告诉 FreeBSD 启动脚本来运行 + <application>&gated;</application> 而不是 + <application>routed</application> 了。 + 最简单的办法,是配置 <varname>router</varname> 和 + <varname>router_flags</varname> 两个 + <filename>/etc/rc.conf</filename> 变量。 + 请参见 <application>&gated;</application> 的联机手册, + 以了解更多关于命令行参数的信息。</para> </sect4> </sect3> </sect2> |