📄 00000015.htm
字号:
echo "PPP link to $DEVICE terminated." <BR> <BR> exit 0 <BR> <BR> fi <BR> <BR># <BR> <BR> # The ppp process is not running for ppp0 <BR> <BR> echo "ERROR: PPP link is not active on $DEVICE" <BR> <BR> exit 1 <BR> <BR> 最后把ppp-on,ppp-on-dialer,ppp-off的属性都设置成700。 <BR> <BR> 配置现在就完毕了,然后就可以执行PPP: <BR> <BR> $ cd /etc/ppp <BR> <BR> $ ./ppp-on <BR> <BR> 会听到拨号声音,一会拨号就连通了,连通后,用ifconfig命令可以看到ppp0设备及 <BR>其IP地址。 <BR> <BR> 当拨号网络连通的时候,ISP会向客户机器传递域名服务器的地址,对于Windows 95, <BR>拨号网络程序可以自动下载这个地址并且刷新名字服务器信息,不过对于Linux,我们一 <BR>般自己直接在名字服务器解析文件/etc/resolv.conf中加入ISP提供的名字服务器地址。 <BR> <BR> 使用完毕后,可以用ppp-off命令切断ppp连接: <BR> <BR> 上面的内容就是一般的启动拨号服务的办法。个别的ISP会使用所谓PAP认证方式,这 <BR>个认证方式不使用username:/password:指令对,而是由拨号程序在建立连线时自动传输 <BR>认证信息(换句话说,当你使用minicom拨号的时候并不出现要求你登录的提示)。如果 <BR>是这样,那么设置ppp的方式和我们这里讲的有所不同,详细的资料可以参考Linux PPP <BR>-HOWTO,这部分内容已经被翻译成中文。 <BR> <BR> 如同上面显示的那样,配置ppp的任务并不算困难但是却很讨厌,一般来说,人们总是 <BR>希望使用简化的配置。最常用的拨号程序除了直接使用ppp-on之外,就是图形界面下的 <BR>kppp。当然对于服务器,为了拨号而启动X Window有些不值得。kppp的配置与Windows下 <BR>的拨号网络一样简单,因此我们不再详细叙述了。 <BR> <BR> 另外一个基于命令行的拨号工具称为wvdial,它和ppp的配置其实差不多,但是不需要 <BR>设置令人头痛的应答过程。(笔者当初配置邮电局的16道连选弄得晕头转向,作了两天 <BR>还没有解决,而用wvdial十分钟就连通了。) <BR> <BR> 要使用wvdial,需要安装wvdial软件包,在新的Linux发行版本中有不少包含这个程序 <BR>。安装后,你只要按照下面的格式生成一个配置文件/etc/wvdial.conf: <BR> <BR> [Dialer Defaults] <BR> <BR> Modem=/dev/ttyS0 <BR> <BR> #调制解调器在com1,com2=/dev/ttyS1 <BR> <BR> Baud=57600 <BR> <BR> #调制解调器的速度 <BR> <BR> Init = ATZ <BR> <BR> Init2 = AT S11=50 <BR> <BR> #调制解调器的初始化命令 <BR> <BR> Phone=163 <BR> <BR> #ISP电话号码 <BR> <BR> Username=user <BR> <BR> Password=user <BR> <BR> #ISP给你的用户名和口令 <BR> <BR> 然后执行wvdial ,就可以看到一连串内容在屏幕上滚过,最后出现starting pppd . <BR>...表示连线成功了。连线结束时,可以用^C退出wvdial程序,这时wvdial会自动切断线 <BR>路。 <BR> <BR> wvdial工作时需要保持运行,如果你觉得把它放在前台影响工作,可以用wvdial &将 <BR>它放到后台,结束时用killall wvdial 命令。 <BR> <BR> 要记住,pppd可能因为稀奇古怪的原因挂掉,如果你拨号没有成功,可以察看/var/l <BR>og/messages文件(或者在/etc/syslog.conf里面定义的任何记账文件)找出问题何在。 <BR> <BR> 8.4.2 拨号代理 <BR> <BR> 拨号代理其实就是我们前面说的IP代理系统,只是它的代理出口是使用拨号网络接口 <BR>。简单地说,拨号代理就是一台能够拨号连接到internet的机器,局域网内的其他机器 <BR>可以通过它连接到internet。 <BR> <BR> 说到这里,大家应该已经理解一个拨号代理应该怎么做了,首先要按照前面的方法配 <BR>置拨号网络使得拨号机器能够访问internet;配置局域网的机器IP为私用网络的IP,比 <BR>如说私用网络是10.0.0.0/24,拨号代理的机器网卡IP地址为10.0.0.1;配置私用网络客 <BR>户机器的网关地址为10.0.0.1;配置拨号代理机器启动核心IP转发功能;然后只要在拨 <BR>号代理的机器上: <BR> <BR> ipchains -A forward -s 10.0.0.1/24 –i ppp0 –j MASQ <BR> <BR> insmod ip_masq_ftp <BR> <BR> 现在整个局域网就可以通过这条电话线访问internet了。 <BR> <BR> 实际上,作拨号代理确实十分简单,最多再加上身份鉴别,避免别的用户冒充为你的 <BR>私用网络用户进入系统: <BR> <BR> ipchains –A input –s 10.0.0.1/24 –i ppp0 –j REJECT <BR> <BR> 其他像禁止某些用户访问别的站点等等都可以按照前面讨论防火墙的方法去做。 <BR> <BR> 如果你想用拨号网络连接两个局域网,那么做法仍然和这里是类似的,只是不再使用 <BR>MASQ选项,而且要按照第一节的原则来考虑路由递送问题。特别是,现在我们需要使用 <BR>静态IP地址,就是将ppp-on里面的LOCAL_IP和REMOTE_IP正确配置。另外,在ppp-on脚本 <BR>中的pppd命令行选项defaultroute必须仔细考虑,这个参数表示将拨号连接当成缺省路 <BR>由,如果你认为有问题的话,把它改成nodefaultroute并且手工用route命令设置路由。 <BR> <BR> 在使用拨号代理的过程中,你很可能会感到在用户开始上网的同时进行拨号是很方便 <BR>的,而一旦所有用户都已经停止连接就自动切断ppp连接。这个功能可以用diald程序来 <BR>完成。diald并不包含在一般的Linux发行版本中,你需要自己去下载这个程序。 <BR> <BR> 要使用diald,你需要在内核中编译加入SLIP支持(即使你仅仅准备使用ppp连接网络 <BR>)。然后你可以编译并且安装diald。一般情况下,有几个文件设置了diald的行为,最 <BR>主要的是/etc/diald.conf。 <BR> <BR> 如果你按照我们上面说的那样已经配置好了ppp连接,ppp-on-dial脚本已经正常,那 <BR>么你可以写这样一个非常简单的/etc/diald.conf: <BR> <BR> mode ppp <BR> <BR> connect /etc/ppp/ppp-on-dial <BR> <BR> device /dev/ttyS1 <BR> <BR> speed 57600 <BR> <BR> modem <BR> <BR> lock <BR> <BR> crtscts <BR> <BR> local 10.0.0.2 <BR> <BR> remote 10.0.0.1 <BR> <BR> dynmatic <BR> <BR> defaultroute <BR> <BR> include /usr/lib/diald/standard.filter <BR> <BR> 注意这个文件中的local和remote参数。这两个参数是设置拨号两端的IP的,现在因为 <BR>使用的ip地址是ISP动态分配给你的,所以用dynmatic参数设置地址为动态地址。问题是 <BR>如果在配置文件中不给出地址的话,diald程序就无法正确启动拨号脚本,所以你可以给 <BR>它一对私用IP让diald程序自己去处理。剩下的任务就是启动diald,然后让服务器自己 <BR>去拨号就可以了。 <BR> <BR> 8.4.3 拨号服务器 <BR> <BR> 现在我们来研究如何做一个拨号网络服务器。作拨号服务器仍然是利用pppd程序,不 <BR>过,这一次我们必须解释一点东西。 <BR> <BR> 在最简单的情况下,假如你是一个ISP管理者,你只需要让用户连接到你的系统中,就 <BR>可以为他们提供网路服务。在这种情况下,客户的机器逻辑上是你的子网的一部分,为 <BR>了是客户机器可以和同一子网的机器通讯,我们可以使用ARP代理功能,就是拨号服务器 <BR>替客户应答ARP询问,因此其他机器会把应该送给客户机器的信息包交给服务器,服务器 <BR>再转交给客户机器。这个和我们前面讨论分割地址空间时的ARP代理没有任何区别。这种 <BR>情况下,客户机器到外界的联系完全由服务器代理,因此客户端几乎不需要设置任何东 <BR>西。相反,如果你是要用电话线把两个子网连接起来,那么你需要的是在两个子网上建 <BR>立缺省投递路径,内容就和我们第一节介绍的完全一样,甚至也可以用ipchains控制信 <BR>息的流动。 <BR> <BR> 当客户拨号到服务器上的时候,首先是调制解调器之间建立连接,为了实现这个功能 <BR>,服务器的调制解调器必须设置为等待/应答方式,一旦有拨入就能接受服务。如果你仅 <BR>仅是想把客户机器当成终端来使用服务器,那么这就足够了;否则,如果你使用拨号网 <BR>络等windows 9x的ppp客户程序来拨入,它将向服务器传输PAP认证信息。你的拨号服务 <BR>器接受到这些信息之后,对客户的身份进行验证并且去处理缺省的拨号脚本,启动pppd <BR>程序在两台机器之间建立起数据通路,这样,客户机器就被连接到服务器所在的网络上 <BR>。 <BR> <BR> 现在我们来介绍如何制作第一种情况下的PPP服务器,仍然假定你的内核编译的时候已 <BR>经加入了PPP支持。我们首先建立一个下面形式的/etc/ppp/options文件: <BR> <BR>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -