Windows 通过串行电缆直接连接到SCO OpenServer 5.0.5
发表于:2007-06-08来源:作者:点击数:
标签:
Windows 通过串行电缆直接连接到SCOOpenServer5.0.5手记 湖北省仙桃市信用联社财务电脑科吕永辉2002年2月20日 联网目的及要求: 1.客户端:Windows服务端:SCOOpenServer5.0.5协议:PPP联结方式:串行电缆 2.两端各自分配一个IP地址,实现客户端到服务端的
Windows 通过串行电缆直接连接到SCO OpenServer 5.0.5 手记
湖北省仙桃市信用联社财务电脑科 吕永辉 2002年2月20日
联网目的及要求:
1. 客户端:Windows 服务端:SCO OpenServer 5.0.5协议:PPP 联结方式:串行电缆
2. 两端各自分配一个IP地址,实现客户端到服务端的Te
.net、ftp、pop3、smtp等访问
联网前的分析:
SCO OpenServer 5.0.5本身支持PPP拨入连接,关键在于如何配置不通过Modem接入;Windows的PPP连接应该通过“拨号连接”来实现,其中必须解决的是没有Modem如何拨号?是否可以找到将串口模拟成Modem的程序?
具体的实现过程:
1. 准备工作:
1) 按照上面的分析,笔者首先寻找“串口模拟Modem”的程序,在网上找到一个“Null-Medem”的驱动程序,解决了客户端拨号的一个基本问题;
2) 随后,在SCO OpenServer 5.0.5上发现了一个“Serial_cable_between_2_PCs”的Modem类型。最初笔者以为该类型的Modem可以实现串口的拨入连接,于是mkdev modem在tty1A上安装了一个“Serial_cable_between_2_PCs”类型的Modem,并且设置为Answer – On。
3) 做好了一根串口直连线(Null-Modem),说明如下:(9针串口针脚说明)
①DCD Null-Modem连接方法
②RXD 2 <-> 3
③TXD 3 <-> 2
④DTR 4 <-> 1&6
⑤GND 5 <-> 5
⑥DSR 1&6 <-> 4
⑦RTS 7 <-> 8
⑧CTS 8 <-> 7
⑨未使用
并将两台机器的串口直接连接起来。
4) SCO OpenServer 中netconfig 添加一个PPP拨入连接,添加一个PPP拨入用户
例:nppp 目录:/usr/lib/ppp SHELL:/usr/lib/ppp/ppp
2. 初试牛刀:
打开Windows端的拨号
网络,配置好拨号连接开始拨号。但是,结果并非如笔者所想的那样,反馈的错误提示是“调制解调器没有响应”。
问题出在什么地方呢?笔者仔细分析了Null-Modem驱动程序的“.inf”文件,发觉他与普通Modem 驱动的区别在于初始化、拨号、响应等指令和信息,出现上错误信息的原因应该是SCO端的响应信息与之不匹配。通过浏览调制解调器的日志纪录,笔者对Null-Modem的“.inf”文件作了少量的修改,重新安装新的Null-Modem驱动;同时修改了SCO端的/usr/lib/uucp目录中的“Serial_cable_between_2_PCs”Modem驱动的代码并重新编译。
再次拨号,仍然无法完成PPP连接。于是笔者检测SCO端的tty1A中的getty进程,发觉该进程是每隔一段时间自动启动一次,把SCO端的Modem改为正常的Modem类型,该进程的启动依然如此,可见SCO端用Modem 响应PPP的拨入连接不适宜Null-Modem的方式,怎么办?怎么办?
3. 背水一战:
何不始终启动一个getty进程总在那儿响应请求呢?
先disable tty1A ,修改/etc/gettydefs中的部分信息(对应getty的提示符信息,使其反馈部分与Null-Modem对应的响应信息)。加入一行:
q0 # B115200 HUPCL # B115200 CS8 SANE HUPCL TAB3 IXANY #~r
r
login: # q0
修改/etc/inittab中:
Se1a:234:respawn:/etc/getty -f -s 1 tty1a q0
新建文件/etc/gettyacts:
PPP:/usr/lib/ppp/ppp:-u nppp:0x7e 0xff
再enable tty1a,拨号连接,OK!
但是,并非每次拨号连接均能成功,有待改善。
备注:上述文档中有些部分不够详尽,部分细节诸位可以自己去
测试、体会。
附录:LYH’s Null-Modem Driver 的INF文件内容。
==================================================================
; LYH
's Direct Serial Link to SCO OpenServer 5.0.5
; for Windows 9x
[Version]
Signature=
"$CHICAGO
"Class=Modem
ClassGUID=
Provider=%AGENDA%
LayoutFile=LAYOUT.INF
[Manufacturer]
%Man% = Null
[Null]
%MC02% = MC02, RAS-GENERIC
[MC02]
AddReg=All, Common, MC02Reg, 115200, EXTERNAL
[All]
HKR,,FriendlyDriver,,Unimodem.vxd
HKR,,DevLoader,,*VCOMM
HKR,,PortSubClass,1,02
HKR,,ConfigDialog,,modemui.dll
HKR,,EnumPropPages,,
"modemui.dll,EnumPropPages
"[EXTERNAL]
HKR,, DeviceType, 1, 01
;[PARALLEL]
;HKR,, DeviceType, 1, 04
;HKR,,Override,,Paralink.vxd
;HKR,, DCB, 1, 1C,00,00,00, 00,00,06,00, 15,20,00,00, 00,00, 0a,00, 0a,00, 08, 00, 00, 11, 13, 00, 00, 00
[Common]
HKR, Answer, 1,,
""HKR, Hangup, 1,,
"Bye
"HKR, Hangup, 2,,
"NoResponse
"HKR, Settings, DialSuffix,,
""; DCB
's - dwords and words are byte reversed
; ByteSize (Number of bits/byte, 4-8)
; Parity (0-4=None,Odd,Even,Mark,Space)
; StopBits (0,1,2 = 1, 1.5, 2)
; |DCBLength |BaudRate |Bit Mask |Rsvd |XonLim|XofLim| | | |Xon|Xof|Err|Eof|Evt
[115200]
HKR,, DCB, 1, 1C,00,00,00, 00,c2,01,00, 15,20,00,00, 00,00, 0a,00, 0a,00, 08, 00, 00, 11, 13, 00, 00, 00
[MC02Reg] Null-Modem
HKR, Init, 1,,
"<7e><ff><cr><lf><cr><lf><cr><lf>
"HKR, Init, 2,,
"NoResponse
"HKR, Settings, Prefix,,
""HKR, Settings, DialPrefix,,
"<cr><lf><cr><lf><cr><lf><cr><lf><cr><lf>
"HKR, Settings, Terminator,,
"<cr><lf>
"HKR, Monitor, 1,,
"None
"HKR, Answer, 1,,
"HELLO
"HKR, Answer, 2,,
"NoResponse
"; Properties - dwords and words are byte reversed
; |Dial Options |InactivityTimeout |Speaker Mode |Max DTE Rate
; |CallSetupFailTimeout |Speaker Volume |Modem Options |Max DCE Rate
HKR,, Properties, 1, 00,00,00,00, 00,00,00,00, 00,00,00,00, 00,00,00,00, 00,00,00,00, 30,00,00,00, 00,c2,01,00, 00,c2,01,00
HKR, Responses,
"~
", 1, 02, 00, 00, 00, 00, 00, 00,00,00,00 A
clearcase/" target="_blank" >ccept any recvd data as CONNECTED.
HKR, Responses,
"{
", 1, 02, 00, 00, 00, 00, 00, 00,00,00,00 Accept any recvd data as CONNECTED.
HKR, Responses,
"<h00>
", 1, 02, 00, 00, 00, 00, 00, 00,00,00,00 Accept any recvd data as CONNECTED.
HKR, Responses,
"<hff>
", 1, 02, 00, 00, 00, 00, 00, 00,00,00,00 Accept any recvd data as CONNECTED.
HKR, Responses,
"<cr>
", 1, 02, 00, 00, 00, 00, 00, 00,00,00,00 Accept any recvd data as CONNECTED.
HKR, Responses,
"<lf>
", 1, 02, 00, 00, 00, 00, 00, 00,00,00,00 Accept any recvd data as CONNECTED.
HKR, Responses,
"<cr><lf>
", 1, 02, 00, 00, 00, 00, 00, 00,00,00,00 Accept any recvd data as CONNECTED.
[Strings]
AGENDA =
"LYH
"Man =
"LYH
"MC02 =
"LYH
's Serial Link to SCO
Unix"
原文转自:http://www.ltesting.net