回首页

后一页
前一页
PPP HOWTO 中译版: 20,21,22
姓名:Robert Hart
Email:hartr@interweft.com.au
地址 :
转摘 : /




20. 连结运作之後的普遍问题
一个问题是你将会发现许多服务提供者只支援他们给新帐号的套装连线软体.这(典型)是给微软视窗环境的 :-( - 而且许多服务提供者的支援处看来一点都不了解 Unix (or Linux).所以要有准备,从他们那得不到太多协助!

你当然可以帮他们一个忙并且教育他们关於 Linux 的知识(任何 ISP 的协助人员在网际网路用语中都应该 "知道它" 而这意味著他们在家里应该要有台 Linux 机器 - 当然是这样)!

20.1. 我无法看见我连线的 PPP 伺服器以外的世界
好的 - 你的 PPP 连线已建立并执行中而且你可以藉由该 PPP 伺服器的 IP 号码(藉由 ifconfig ppp0 指令所显示的第二个或 "远端" 的 IP 号码) ping 该伺服器,但是你不能触及其後的任何地方.

首先,尝试 ping 你在 /etc/resolv.conf 里指定作为名称伺服器那台机器的 IP 号码.如果可以的话,那麽你就可以见到在你 PPP 伺服器之外的东西(除非这个 IP 号码跟你连线的 "远端" IP 号码相同).所以现在来试试 ping 你的服务提供者的完整网际网路名称 - 例如


ping my.provider.net.au


如果这样无法成功,那麽你有个名称解析上的问题.这可能是因为在你的 /etc/resolv.conf 档案里有打字错误.打电话给你的服务提供者对照所得的资讯并且小心地检查这个档案.如果看起来全都没问题,再打电话给服务提供者确定你写下正确的 IP 号码〉

如果它仍然无法运作(而且你的服务提供者确认他的名称伺服器有开机并且正在执行),那麽你的问题在其它的地方 - 而且我建议你小心地从头到尾检查你安装的 Linux(特别注意档案权限).

如果你仍然不能藉由 IP 号码 ping 你服务提供者的名称伺服器,那麽不是他们关掉机器(打个电话给他们确定一下)就是有个递送问题发生在你的服务提供者那边.再一次,打电话给他们查问看看.

有个可能是 "远端" 是一台 Linux PPP 伺服器而在其核心里没有指定 IP forwarding 选项!

一个良好的测试方法是使用大多提供给(一整套) Microsoft Windows 的软体尝试进入你的服务提供者.如果完全相同的帐号在另外一套作业系统下一切正常,那麽问题是在你的 Linux 系统上而不是在你的服务提供者那边.

20.2. 我可以寄送电子邮件,但不能接收
如果你使用动态的 IP 号码,这是很正常的.参阅下面的 " 设立服务" 一节.

20.3. 为什麽人们不能来我的机器 finger, WWW, gopher, talk 等等?
同样地,如果你使用动态的 IP 号码,这是非常正常的.参阅下面的 " 设立服务"该节.


--------------------------------------------------------------------------------21. 以动态 IP 提供网际网路服务
如果你使用动态的 IP 号码(许多服务提供者也只提供动态的 IP 号码除非你为你的连线付出更多代价),那麽你必须认识这隐含的限制.

首先,外送服务请求将不会有问题.这是说你可以使用 sendmail 送出电子邮件,从远端节点传输(ftp)档案, 调查(finger)在其它机器上的使用者,浏览全球资讯网等等.

特别是,虽然你不在线上但你可以回覆带回你机器上的电子邮件.邮件将单纯地丢在你的邮递伫列中直到你拨回你的 ISP 再行送出.

然而,你的机器并非一天 24 小时都连接在网际网路上,它每次连线也不会拥有相同的 IP 号码.所以你不可能接得到直接寄到你机器的电子邮件,并且很难设立一台全球资讯伺服器或档案传输伺服器! 因为网际网路与你的机器不存在一种唯一的,永久可以联系的关系,因为你的机器并没有唯一的 IP 号码(记住 - 其它的机器也会使用这些 IP 号码,当它们拨上线时).

如果你设立一台 WWW(或任何其它伺服器),在网际网路上的任何人都完全不会知道除非他们知道你的机器现在正在线上以及它确实(目前)的 IP 号码.他们有许多管道可以得到这项资讯,包括由你打电话给他们,寄发电子邮件告诉他们或者是在你服务提供者的帐号上巧妙地使用 ".plan" 档案(假设你的提供者允许 shell 及 finger 存取).

现在,对大部分的使用者而言,这不是个问题 - 大部分人们所想要做的全部只是寄送与接收电子邮件(使用在你服务提供者上的帐号)以及连线到全球资讯网,传输档案以及其它网际网路上的服务.如果你必须拥有由外往内的连线服务,你真的应该取得静态的 IP 号码.另外一种方法是研究前面提示过的方法...

21.1. 设定电子邮件
即使是动态的 IP 号码,你的确可以配置你机器上的 sendmail 来送出你在本地端写好的任何电子邮件.有关 sendmail 的配置可能会是很含糊而且很困难的 - 所以这份文件不会试图告诉你该怎麽做.然而,你可能应该配置你的 sendmail 以便你的网际网路服务提供者能授命你作为 "smart relay" 主机(在 sendmail.cf 的 DS 选项).(更为详细的配置资讯请参阅 sendmail 的文件 - 并详阅随附於 sendmail 的 m4 配置巨集.几乎可以确定里面一定有一个能符合你的需要).

也有一本非常好的书在讲 Sendmail(O'Reilly and Associates 称它为 '圣经'),但对大部份的使用者来说实在太过困难了!

一旦你配置好 sendmail 後,你可能想在 PPP 连线刚一起动的时候就要 sendmail 赶快送出任何待在邮件伫列里的讯息.要这麽做的话,加入这行指令


sendmail -q &


到你的 /etc/ppp/ip-up 指令稿中(参见下面说明).

由外往内的电子邮件对动态的 IP 号码而言是个问题.处理这个问题的方法是:

配置你的使用者邮递程式让所有送出去的邮件在 "reply to" 表头中有个在你的网际网路服务提供者上的电子邮递位址.
如果可以的话,你也应该将你的 FROM 地址设为你 ISP 提供的电子邮递位址.
使用 popclient 程式从你的服务提供者那边撷取你的电子邮件.或者,如果你的 ISP 使用 IMAP,使用支援 IMAP 的使用者邮递程式(例如 pine).

你可以藉由在 /etc/ppp/ip-up 指令稿中放入必要的指令以便在拨接时将这个过程自动化(参见下面说明).

21.2. 设定本地的名称伺服器
虽然你大可使用在你 ISP 那里的领域名称伺服器,你也可以设立一台本地的暂存专用(次要)名称伺服器,并藉由 ip-up 指令稿启动.跑本地(暂存专用)名称伺服器的好处是如果你在连线期间常常联系相同的节点那麽它可以节省你的时间(以及频宽).

暂存专用名称伺服器(在 named.boot 档案里使用一行 'forwarders' 指向你 ISPs 的 DNS)的名称伺服器配置比较简单. O'Reilly book (DNS and Bind) 解释所有你需要知道的东西.

也有一份 DNS-HOWTO 可以取得.

如果你有一小型区域网路经由你的 Linux PC 取用网际网路(例如使用 IP 伪装),在本地端执行名称伺服器(使用 forwarders 导向)会是个好主意,因为它会降低由名称解析所占用的网路频宽及延迟时间.

网路作业的一个要点: 当你要在你 ISP 的领域里开始启用一台次要的,暂存专用的名称伺服器之前先询问你的 ISP 相关的权限.正确配置它,你的 DNS 一点都不会造成你 ISP 的困扰,但是如果你做错了些什麽,它可能会引起麻烦...


--------------------------------------------------------------------------------22. 使用 PPP 连结两个网路
基本上连结单一台 Linux PC 到 PPP 伺服器以及使用 PPP 连结两个区域网路没有什麽差别.记得,PPP 是一种点对点的协定.

然而,你的确得了解关於递送路径如何建立的问题.阅读 NET-2 howto 以及 Linux Network Administrator Guide (NAG).你也将发现这本书 "TCP/IP Network Administration" (by O'Reilly and Assoc - ISBN 0-937175-82-X)会有极佳的帮助.

如果你想在连结的某一边使用一个网路号码的次网路分割,你会发现 Linux (draft) sub networking mini-howto 满有用的.这可在 Linux Sub networking mini-HOWTO 找到.

为了连结两个区域网路,你使用的必须是不同的 IP 网路编号(或是同样网路编号的次网路)而且你将得使用静态的 IP 号码 - 或使用 IP 伪装.如果你想要使用 IP 伪装的话,参阅 IP masquerade mini-howto 有关它的设定介绍.

22.1. 设定 IP 号码
与其它区域网路的网路管理者协商两端的 PPP 界面使用的 IP 号码.如果你使用静态的 IP 号码,这可能也会要求你拨接特定的电话号码.

现在编辑适当的 /etc/ppp/options[.ttyXX] 档案 - 对於此连线在你这一端使用特定的数据机及串列埠是个好主意.你可能也得要去变更你的 /etc/ppp/options 档案 - 并且也要为任何其它的连线建立适当的 options.ttyXX 档案!

在适当的选项档案里指定 PPP 连接中你这端的 IP 号码,这与前面所展示使用静态 IP 号码拨接的方式完全相同.

22.2. 设定递送路径
你必须安排你区域网路上的封包经过 PPP 连结所建立的界面递送出去.这是个两阶段的过程.

首先,你必须建立从执行 PPP 连结的机器到连结的远方网路去的递送路径.如果该连结通往网际网路,那麽这可以藉由 pppd 的选项 'defaultroute' 由它自己建立的预设递送路径来处理而你不必做任何事.

然而如果该连结只是连结两个区域网路,那麽必须加入一个指定的网路递送路径.这是在 /etc/ppp/ip-up 指令稿中使用 'route' 指令执行的(参阅连线起动之後... 该节里有关如何执行的介绍).

你得做的第二件事是告诉在你区域网路上的其它电脑这台 Linux 电脑实际上是该 ppp 连结中通往远方网路的'闸道'.

当然,这些工作该连结另一端的网路管理者也全都得做! 然而,因为她/他必须将封包递送到你的网路,一个指定的网路递送路径是必要的,而不是预设递送路径(除非远端的区域网路是连上你去取用网际网路的).

22.3. 网路安全
如果你使用 PPP 连结你的区域网路到网际网路上去 - 或甚至只是到一个``外面的''区域网路上去,你都必须考虑安全性的问题.我强烈鼓励你考虑设立一台防火墙!

你还应该在以此方式连到外面的区域网路或网际网路之前先告诉你的区域网路管理者.没有这样做的话可能使你惹上严重的麻烦!


后一页
前一页

回首页