Linux 版 (精华区)

发信人: netiscpu (网中鸟~~离歌), 信区: Linux
标  题: 让Linux服务器回拨Windows PC上网
发信站: 紫 丁 香 (Wed Aug 18 10:58:17 1999), 转信


发信人: bstone (飘), 信区: Linux 
标 题: 如何让Linux服务器回拨Windows PC上网? 
发信站: BBS 荔园晨风站 (Sat Aug 7 12:30:34 1999), 站内信件 

作者:吴阿亭 [Linux应用版版主] 


概述: 在公司局域网上有两台Linux server,一台服务器用ISDN上网(2B) 
让整个局域网上用户共享。(已在另一篇中介绍过),另一台通过 
它上网,并在这一台上连一个modem到ttyS0,向家里的windows 
PC回拨,以便让家中的windows PC上网。 

服务器取名:一台用ISDN拨号上网的服务器取名为 isdn,局域网上另一台 
Linux server取名为sh3. 

所用软硬件:Redhat Linux 5.2( kernel:2.0.36-3 )(isdn) 
Redhat Linux 6.0/5.2 (sh3) 
两个USR external 56K modem(sh3 and windows PC) 
(通常所说的黑猫) 

实现步骤: 首先从家里的windows PC向公司sh3服务器拨号建立连接,然后 
telnet to sh3 ,su as root, 
运行call98断线,然后让它向windows PC回拨即可。 


实现方法: A. 如何设置sh3(192.168.13.3)? 
1.将默认网关指向isdn(192.168.13.5),且打开IP Forwarding功能。 
你需要加下面的行到/etc/rc.d/rc.local/sbin/route del default 
/sbin/route add -net 0.0.0.0 gw 192.168.13.5/sbin/modprobe bsd_comp 
/sbin/modprobe pppecho 1 > /proc/sys/net/ipv4/ip_forward 
注:请先确保能从sh3上能成功地ping外面的网站,如你的ISP的DNS服务器。 
2.设置sh3做为PAP方式认证的PPP server. 
加下面的行到/etc/inittab,然后运行 /sbin/init q 使它生效。 
s0:2345:respawn:/sbin/mgetty -D -x 3 ttyS0 
更改 /etc/mgetty+sendfax/login.config,改/AutoPPP/那一行象下面的 
/AutoPPP/ - - /usr/sbin/pppd file /etc/ppp/options.auto 
设置pppd权限位:chmod u+s /usr/sbin/pppd/etc/ppp/options.auto应 
该象这样:-detachauthmodem 
lockloginproxyarpcrtsctsasyncmap 0192.168.13.3:192.168.13.242 
ms-dns 192.168.13.1 (# 192.168.13.1为我局域网上的一台DNS服务器, 
你也可设成你的ISP的DNS服务器) 
3.新建一PPP 用户, useradd jephe; passwd jephe 
4.设置sh3,让它能向Windows PC拨号。cp /usr/doc/ppp*/ppp-on /usr/bin/ 
cp /usr/doc/ppp*/ppp-off /usr/bin/cp /usr/doc/ppp*/ppp-on-dialer /etc/ppp 
chmod +x /usr/bin/ppp-on /usr/bin/ppp-off /etc/ppp/ppp-on-dialer 
改/etc/ppp/ppp-on-dialer中的chat为 /usr/sbin/chat并注释掉最后两行。#!/bin/sh 
exec /usr/sbin/chat -v \ 
TIMEOUT 3 \ 
ABORT '\nBUSY\r' \ 
ABORT '\nNO ANSWER\r' \ 
ABORT '\nRINGING\r\n\r\nRINGING\r' \ 
'' \rAT \ 
'OK-+++\c-OK' ATH0 \ 
TIMEOUT 30 \ 
OK ATDT$TELEPHONE \ 
CONNECT '' 改/usr/bin/ppp-on象下面 
(回拨时windows不要求用户名和口令) 
TELEPHONE=12345678 # 你家中的电话号码LOCAL_IP=192.168.13.3 
REMOTE_IP=192.168.13.242 NETMASK=255.255.255.0 export TELEPHONE 
DIALER_SCRIPT=/etc/ppp/ppp-on-dialer 
exec /usr/sbin/pppd debug lock modem crtscts /dev/ttyS0 38400 \ 
$LOCAL_IP:$REMOTE_IP \ 
noipdefault netmask $NETMASK connect $DIALER_SCRIPT 
.创建一个script,取名call98。#!/bin/shkill `cat /var/run/ppp0.pid` 
nohup sleep 5; /usr/bin/ppp-onB. Windows PC 设置。 
你必须在modem附加设置栏填上 &C0S0=001 。(001表示在响铃一次后应答) 
C. 服务器 isdn 设置。 
你需要在服务器 isdn 里添加一条路由。加下面的行到 /etc/rc.d/rc.local 
/sbin/route add 192.168.13.242 gw 192.168.13.3 
注意:1. 在/etc/ppp目录下,请删掉或换名options文件,因为options.auto 与 
options不能同时存在,否则回拨后立刻断掉,很奇怪 2. 在使用过程中,发 
现回拨后DNS不能自动获得,你可能要到网上邻居/拨号 
网络适配器中手动设置DNS值。 3. 在回拨成功后,windows PC中默认网关丢 
失,你必须还要在DOS窗口运行 
下面的命令大约回拨10秒之后做,如有错误信息,说明回拨后PPP还未完 
全建立,可再等几秒按F3再试可以把它设成批处理文件如98call.bat) 
route add 0.0.0.0 mask 0.0.0.0 192.168.13.242 
4. 当然,你必须telnet到sh3 as root后运行call98,不能在98中断线,否则 
sh3怎么知道要回拨? 
5. 请接modem到ttyS0,不要接到ttyS1,在我使用过程中,ttyS1好象不能成功地 
回拨 

--

                              Enjoy Linux!
                          -----It's FREE!-----

※ 来源:.紫 丁 香 bbs.hit.edu.cn.[FROM: dns.mtlab.hit.ed]
[百宝箱] [返回首页] [上级目录] [根目录] [返回顶部] [刷新] [返回]
Powered by KBS BBS 2.0 (http://dev.kcn.cn)
页面执行时间:3.722毫秒