在Win95和Linux之间建立直接电缆连接
作者Thomas P. Smyth
翻译gaia
摘要
在Win95和Linux之间可以建立一条115200 baud的串行连接。其传输速率约为10k/sec,相当于PLIP连接所能达到的速率。
Copyright 1999 Thomas P. Smyth
你可以不加任何修改地拷贝此文档。
声明
因使用本文内容引起的后果由使用者自己承担。对于因使用本文挡造成的损失作者不承担任何责任。
1. 简介
本文详细介绍了在一台Windows 95 PC和一台Linux机器间如何建立直接的串口电缆PPP连接。实际上,窍门在于把Linux机器模拟成与Windows 95PC连接的modem。这样就可以用标准的Windows 95拨号网络工具来建立这个连接。在ftp传输时能达到10k/sec的传输速率。
2. 串口电缆
你需要一条空Modem电缆(null modem cable,即交换两接口的发送针和接收针的串口电缆,不是连接计算机与Modem的电缆。)其每个接口的DSR针都与DCD针连接。我用的电缆按以下方式连接各针:-
Txd Rxd
Rxd Txd
RTS CTS
CTS RTS
GND GND
DTR DSR & DCD
DSR & DCD DTR
更详细的内容可以参考Serial-HOWTO 第8章。
3. Linux串口设置
在Linux机器上(我用的是运行于Pentium200MMX上的Redhat 5.2)要用串口设置一个终端连接。在/etc/inittab中,写入:
S1:2345:respawn:/sbin/getty ttyS1 DT115200 ansi
并且在/etc/gettydefs里写入:
# 115200 fixed baud Dumb Terminal entry
DT115200# B115200 CS8 CLOCAL CRTSCTS # B115200 SANE -ISTRIP CLOCAL CRTSCTS #@S login: #DT115200
其实就是把这个文件里有关38400的那一项拷贝过来并把所有的38400改成115200.
运行telinit q 重新读入/etc/inittab.
在Windows下使用一个终端程序(比如,超级终端Hyperterminal) 就可以通过串口连接登录到Linux系统上。记住把ansi终端摸拟(ansi emulation)的通讯参数设置为8N1 和115200 baud。更详细的内容可以参考Serial-HOWTO 第8章。
4. Linux PPP设置
在Linux机器上创建一个用户ppp95,编辑/etc/passwd中相应的项,把它的登录shell改为pppd:-
ppp95: ........ your password, etc ........... :/home/ppp95:/usr/sbin/pppd
在/home/ppp95目录下放一个名叫 .ppprc的文件,其内容如下:-
connect \/usr/sbin/chat -v ATH OK AT OK ATE0V1 OK ATX3 OK ATDT CONNECT\
-detach
modem
crtscts
lock
:192.168.100.4
其中IP地址是分配给Win95机器的。其中的chat脚本模拟了一台modem,所以Win95可以启动一个PPP连接。在/usr/doc/ppp-2.3.5/README.linux里有如何在Linux下设置PPP的信息。重要的一点是把pppd守护进程的权限设置为setuid(chmod u+s /usr/sbin/pppd)。
5. 设置Windows 95
在Windows 95机器上(用的版本是 4.00.950 B) 建立一个新的拨号网络连接。作如下设置:-
电话号码 1
连接时使用 标准Modem
Modem 配置 COM1速度设为115200,选项8N1, & 不等待拨号音。只用硬
件流控制。拨号前出现终端窗口。
服务器类型 PPP
高级选项 只选软件压缩
网络协议 只用TCP/IP。设置: 服务器分配的IP地址, 服务器分配的名字
服务。使用IP报头压缩,使用默认网关。
6. 连接
要连接时,双击拨号网络连接的图标,点击Connect。这时会出现终端屏幕 - 以ppp95登录,并按F7键。对话框里会显示正在拨号,验证用户名等内容。最后会告诉你已经成功登录到网络。
在MSDOS窗口中你应该能ping你的Linux机器(要用IP地址,而不是URL),同样从Linux机器上也应该能ping通 192.168.100.4。其它检测PPP连接的方法可参见
/usr/doc/ppp-2.3.5/README.linux文件。
为了能使用telnet和ftp,我把/etc/hosts.allow改为
ALL: LOCAL, 192.168.100.4
你也许会对某些服务有更严格控制。现在你应该能够从Win95 telnet linux机器的IP地址了。
7. X Windows
为了能在Win95机器上运行 X Windows,要从以下地址取回免费的MI/X server:
http://www.sunsite.auc.dk/tucows/xwinserver95.html. 安装MI/X服务器。使用的时候,先要运行MI/X 服务器,然后从DOS窗口telnet到你的linux机器。以普通用户名登录,然后输入以下命令:-
DISPLAY=192.168.100.4:0.0
export DISPLAY
xterm &
这样就能在MI/X 服务器上显示一个X终端。这种界面有点慢,不过用着还不错。
更详细的内容可以参考Linux公报1998年9月第32期上Ron Jenkins写的文章:
Running Remote X Sessions on Windows 95/98/NT/Mac/PPC Clients 。
8. 其它服务
在Linux机器上我还有ftp服务器和Apache - 在Win95上你如果运行Netscape并输入以下地址:
http://192.168.100.1,你就可以访问Apache,或者输入ftp://192.168.100.1 - 你就可以访问ftp服务器。
9. 关闭连接
要想关闭PPP连接,只需中断拨号连接 - 这可能要等一段时间,因为Win95此时要向modem发送reset指令,但这些指令被Linux的getty接收并被认作登录名和口令。过一段时间连接就会被挂断,这对于Linux机器来说是无关紧要的。
如果你有什么建议,请给我发email [email protected]
发布人:netbull 来自:Linux公报