来源(久久网络-网络学堂-网络编程)

From: http://www.99net.net/study/system/13.htm

SUN工作站在网络中的深入应用

--------------------------------------------------------------------------------
2003-4-10 13:48:06

目前建立在客户机/服务器(C/S)网络体系结构上的应用系统越来越多,技术上也越来越成熟。具有多用户多任务网络特性的UNIX操作系统以其高可靠性、高伸缩性、高开放性的特点而成为C/S结构系统后台服务器上的主流操作系统。在我们所开发的系统中采用了SUN公司的SOLARIS2.5.1操作系统,它具有很强大的网络功能,为了充分发挥它的作用,我们不仅让其承担数据库系统的核心工作,还让其成为系统中的PPP拨入服务器、软路由服务器或NFS共享磁盘服务器。以下介绍我在使用中的一点体会。

将SOLARIS设置成PPP拨入服务器

由于我们所开发的系统要安装在外地,我们将SOLARIS设置成PPP拨入服务器,然后通过远程拨号上网,在PPP的基础上使用TCP/IP协议来进行远程登录或传输文件,给我们的维护工作以极大的方便。以下介绍设置步骤:

一、设置调制解调器:

1、用随MODEM带的串型电缆连接MODEM和SUN工作站的串口A(或B,以下以串口A为例),打开MODEM的电源开关。

2、编辑文件/etc/remote,加入下行:

#vi/etc/remote;编辑文件/etc/remote

cuaa:dv=/dev/cua/a:at=hayes:br#38400;假设用A串口

3、设置MODEM,在命令行上发如下命令:

#tipcuaa;tip是联结远程系统命令

[connected];表示和MODEM已连接正常

ats0=1;设置成自动应答方式

OK;MODEM成功执行的返回信息

at&c1;设置成跟踪数据载波

OK

at&w;存储设置

OK

~.;退出tip命令

[EOT]

#;返回到命令行状态

以上各步完成后,MODEM将有HS、AA、TR、MR四个指示灯亮(以HAYESA系列为例)。

二、设置SUN工作站的串口:

在SOLARIS上设置工作站的串口可以通过命令行的方式一步步地来做,但也可利用openwindow窗口环境来操作,这样比较方便:

1、启动openwindow窗口环境:

#/usr/openwin/bin/openwin;启动命令

2、在shell命令窗口内启动admintool系统管理工具:

#admintool&;另开一窗口执行

3、在“浏览”菜单中选择“串行口”后,将显示出本工作站的所有串口及其状态。

4、选择所用的串口,在“编辑”菜单中选取“修改”后,在窗口中先按“重置”钮,然后按照设置的内容点选参数,选择完成后按“设置”钮,系统提示设置成功,最后按“OK”钮,即完成了串口的设置。

5、检查串口的设置正确与否。在命令行上可用sacadm、pmadm命令来检查串口的设置情况,如下即为正确的设置:

#sacadm-l;带参数l,列出串口服务器

PMTAGPMTYPEFLGSRCNTSTATUSCOMMAND

zsmonttymon-0ENABLED/usr/lib/saf/ttymon#

#pmadm-l;列出串口监控器

PMTAGPMTYPESVCTAGFLGSIDΙPMSPECIFICΛ

zsmonttymonttyauroot/dev/term/ab-/usr/bin/login-38400ldterm,

ttcompatlogin:--n#

三、设置系统文件:

1、编辑文件/etc/hosts,以增加ppp客户机的网址:

#vi/etc/hosts

127.0.0.1localhost

192.9.200.1serverloghost;本例的主机名及地址

192.9.200.10pppclient;ppp客户机地址和名称

2、增加一个拨号用户的注册名:

a.编辑文件/etc/passwd,增加一个用户名:

#vi/etc/passwd

ppplogin:x:1200:1045:pppclientlogin:/:/usr/sbin/aspppls;增加

用户ppplogin

b.编辑文件/etc/shadow,加入下行:

#vi/etc/shadow

ppplogin::::::::;对应增加

c.可以修改ppplogin用户的注册口令:

#passwdppplogin

Newpassword:

Re-enternewpassword:



3、编辑文件/etc/asppp.cf,内容如下:

#vi/etc/asppp.cf

ifconfigipdptp0plumbserverdown;开机时启动ipdptp接口

defaults;缺省设置

interfaceipdptp*;针对所有的ipdptp接口

inactivity—timeout120

ipcp—async—map0

path

peer—system—nameppplogin;与用户注册名一致

peer—ip—addresspppclient;与ppp客户名一致

4、查询主网卡的地址:

#ifconfig-a;列出系统中的所有网络接口

lo0:flags=849ΙUP,LOOPBACK,RUNNING,MULTICASTΛmtu8232

inet127.0.0.1netmaskff000000

hme0:flags=863ΙUP,BROADCAST,NOTRAILERS,RUNNING,MULTICASTΛ

mtu1500

inet192.9.200.1netmaskffffff00broadcast192.9.200.255

ether8:0:20:1:2:3

最后一行ether后的数字串即为该网卡的地址,如本机为8:0:20:1:2:3。

5、新建可执行文件/etc/rc2.d/S99proxyarp,步骤:

#vi/etc/rc2.d/S99proxyarp

ndd-set/dev/ipip—forwarding1

arp-spppclient8:0:20:1:2:3pub;将ppp客户名和网卡的地址的填入相应位置

#chmod+x/etc/rc2.d/S99proxyarp;改变文件属性,让其可执行

四、完成以上所有设置后,重启SUN工作站。

五、检验效果:

重启后,我们用接口查询命令即可看到ipdptp0接口已启动,但还没有up:

#ifconfig-a;列出系统中的所有网络接口

lo0:flags=849ΙUP,LOOPBACK,RUNNING,MULTICASTΛmtu8232

inet127.0.0.1netmaskff000000

hme0:flags=863ΙUP,BROADCAST,NOTRAILERS,RUNNING,MULTICASTΛ

mtu1500

inet192.9.200.1netmaskffffff00broadcast192.9.200.255

ether8:0:20:1:2:3

ipdptp0:flags=8d0ΙPOINTOPOINT,RUNNING,NOARP,MULTICASTΛmtu8232

inet192.9.200.1--Λ0.0.0.0netmaskffffff00

ether0:0:0:0:0:0

在客户机上(例如WIN95),在控制面板中将拨号网络设置好后,新建一个拨号连接并设好TCP/IP的地址(这些步骤已有许多介绍,这里不再详述)即可向工作站拨号上网。注册成功后,我们用接口查询命令可看到ipdptp0接口已up:

#ifconfig-a;列出系统中的所有网络接口

lo0:flags=849ΙUP,LOOPBACK,RUNNING,MULTICASTΛmtu8232

inet127.0.0.1netmaskff000000

hme0:flags=863ΙUP,BROADCAST,NOTRAILERS,RUNNING,

MULTICASTΛmtu1500

inet192.9.200.1netmaskffffff00broadcast192.9.200.255

ether8:0:20:1:2:3

ipdptp0:flags=28d1ΙUP,POINTOPOINT,RUNNING,NOARP,MULTICAST,

UNNUMBEREDΛmtu1500

inet192.9.200.1--Λ192.9.200.10netmaskffffff00

ether0:0:0:0:0:0

这时客户机就如同远程网络上的一个主机,可以进行任何网络操作。在客户机退出PPP后,ipdptp接口会自动down。

将SOLARIS设置成软路由器

我们在单位里调试用户系统时,单位的网络地址一般和用户的网络地址不在一个网段上,如果没有路由器则两网不能互通,那对工作会很有影响。硬路由器价格昂贵也没有必要去配,因为SOLARIS可以很容易地设成软件路由器,而不需另外花费。

1、编辑文件/etc/hosts,为该工作站加另一个网段地址:

#vi/etc/hosts

127.0.0.1localhost

192.9.200.1serverloghost;本例的主机名及地址

192.9.201.1 anoserver;另一个对应的名称及地址

2、编辑文件/etc/nerworks,将两个网络的地址加入:

#vi /etc/networks

loc 192.9.200;本网网址

ano 192.9.201;另一个网的网址

3、新建文件/etc/gateways,该文件只要存在没有内容也可,以使SOLARIS在启动时运行路由器服务进程。

#cat/dev/null>/etc/gateways

4、查询主网卡的名称:

#ifconfig-a;列出系统中的所有网络接口

loO:flags=849 mtu 8232

inet 127.0.0.1 netmask

ff000000

hneO:flags=863 mtu1500

inet 192.2.200.1 netmask ffffff00 broadcast

192.2.200.255

ether 8:0:20:1:2:3

hme即为工作站上所配的100M网卡名,如果你所用的是10M网卡则名为le。

5、新建文件/etc/hostname.hme0:1,将/etc/josts中的另一个主机名填入,以使SOLARIS启动时在物理接口hme0上建立一个逻辑接口。

6、设置完以上各步后,重启工作站

7、效果:

在工作站启动中,可以看到“machine is a router.”的噗显示。表明本机已成为一个路由器,会向网络上发RIP包,用接口查询命令可见:

#ifcofig -a ;列出系统中的所有网络接口

lo0:flags=849 mtu8232

inet 127.0.0 .1etmask ff00000

hne0:flags=863 mtu 1500

inet 192.9.200.1 netmask ffff00 broadcast

192.9.200.255

hne0:1:flags=8d0 mtu

1500

inet 192.9.201.1 netmask ffff00 broadcast

192.9.201.255

以上表明已启动了hme0上的一个逻辑接口,地址为192.9.201.1。

在别的UNIX机器上,会根据RIP包自动将该工作站加入到路由表中,在PC机上(例如WIN95),只要在控制面板中将TCP/IPM网络的网关设置为该工作站的地址(使用与本机同一个网络的地址),就可以与另一网络的机器通迅了。

Link: http://www.asm32.net/article_details.aspx?id=834