一、概述
通常我们所遇到的问题是这样的:一个使用私有IP的局域网,一台联入Internet的机器,然后要你通过一定的手段将整个局域网联入Internet。其实,该方案的实现手段很多,比如在Windows下,你可以用诸如wingate、winroute以及MS Proxy等等代理软件实现,但是本文所论述的是怎样在linux下不花一分钱就解决问题。本文将从最基本的接入方法开始,一步步的教你实现将使用私有IP的局域网带入Internet的方法。
二、接入方法:
常用的接入方法有拨号上网和专线上网。通常,个人用户使用拨号上网方式,而单位用户则使用专线上网方式。并且,拨号方式可以分为PSTN和ISDN拨号,专线则可以分为ISDN专线和DDN专线。
ISDN拨号方式一般用外置TA适配器,相当于模拟MODEM,Linux下的使用方法与外置MODEM一样,内置的一般叫ISDN PC卡,Linux下一般较难配置,单位用户也最好不买内置的,普通MODEM外置的也比内置的好。所以外置TA拨号上网可以归入外置MODEM一样,确实是一摸一样。其实ISDN拨号方式就是数字式的MODEM,专线方式就是在路由器内部自己拨号,通过拨号联接建立起来的类DDN方式。
ISDN的专线方式必须使用ISDN路由器,专线方式128K电信部门一般给8个合法的IP地址,ISDN路由器拨号是在路由器中进行的,另外ISDN路由器一般还带4个网口,本身集成了PPP Server的功能,又相当于一台拨号服务器,ISDN专线方式还支持回拨功能,由局方向用户拨号,建立联接,联接建立之后就相当于DDN了,Linux不涉及拨号,线路联接设置等,就是路由器提供静态IP。其实ISDN拨号方式就是数字式的MODEM,专线方式就是在路由器内部自己拨号,通过拨号联接建立起来的类DDN方式。
DDN即数字数据网,DDN的专线方式通常是这样实现的,路由器的广域网口用V.35连接到基带Medom,再由基带Medom连接到DDN线路。
PSTN也就是我们通常所说的公用电话网。使用电话拨号上网也是目前个人用户最常用的上网方式。但是在linux下要实现电话拨号上网并不是一件轻松的事,因为虽然在linux下的拨号工具很多,但是好多都得进行复杂的配置。在这里,我们向读者介绍一种最具智能化的拨号工具--wvdial,并用wvdial和ppp实现轻松上网。
wvdial是linux下的智能化拨号工具,利用wvdial和ppp可以实现linux下的轻松上网。在整个过程中wvdial的作用是拨号并等待提示,并根据提示输入相应的用户名和密码等认证信息;ppp的作用是与拨入方协商传输数据的方法并维持该连接。
1.wvdial及其相关配置
wvdial的功能很强大,会试探着去猜测如何拨号及登录到服务器,同时它还会对常见的错误智能的进行处理,不象chat一样,要求你去写登录脚本。wvdial只有一个配置文件 /etc/wvdial.conf。wvdial的启动过程是这样的:首先载入wvdial.conf配置文件,然后再初始化modem并拨号,拨号后等待拨入方的响应,收到拨入方响应后则启动pppd。
可以用wvdialconf程序自动生成wvdial.conf配置文件,自行该程序的格式为:
wvdialconf /etc/wvdial.conf
在执行该程序的过程中,程序会自动检测你的modem的相关配置,包括可用的设备文件名,modem的波特率,初始化字符等等相关的拨号信息,并根据这些信息自动生成wvdial.conf配置文件。如果/etc/wvdial.conf文件已经存在时,再次执行该命令只会改变其中的 Modem、Band、Init等选项。
wvdial的执行格式为:
wvdial --help | --version | section
相关的说明如下:
--help:显示简单的帮助信息
--version:显示wvdial的版本号
section:这里的section有点象windows里的ini文件,一个wvdial.conf配置文件可以有好多个section,每一个section由一些变量组成,即由 变量=值 的语句组成,如上所示。使用wvdialconf自动生成配置文件时将会自动生成一些常用的变量说明如下:
Inherits=InheritedSection:
使用wvdialconf自动生成配置文件时将会自动生成[Dialer Defaults],除此之外,你还 可以自定义你自己的section。程序运行时,首先载入[Dialer Defaults],然后再用指 定的section的相应选项覆盖[Dialer Defaults]的相应选项。比如,我们在 wvdial.conf中还有[Dialer Tom],假如我们运行wvdail Tom,则系统将先读入[Dialer Defaults],然后再用[Dialer Tom]覆盖[Dialer Defaults]的相应选项。如果除了以上 的section之外还有[Dialer 169]并且内容如下:
[Dialer Tom]
Username=tom
Password=xxx
Inherits=169
[Dialer 169]
Phone=169
如果这时候我们执行wvdial Tom则系统将先读入[Dialer Defaults],然后再用[Dialer Tom]覆盖[Dialer Defaults]的相应选项,最后再用[Dialer 169]的相应选项来覆盖前二者的相应选项。由此可见,利用wvdial,我们可以很方便地在不同的ISP或modem之间来回移动(假如你有几个ISP或medom的话)。
Medom=/dev/ttySx:用于指定是用的medom,缺省的为/dev/medom。当然,在这里我们的medom是由wvdialconf自动检测并配置的,所以我们可以忽略该变量。