学习是一种信仰。
分类: 网络与安全
2013-12-26 02:46:42
网络路由技术及运用(1)
作者:乐山市电信分公司帐务中心 韩显进
文章来源:赛迪网 2003年01月24日
当今世界,网络技术日新月异,各种高科技含量的网络设备、高带宽传输媒质、丰富多彩的网络内容不断涌现,但所有这些必须通过网络来组织连接、传输、分发和共享,才能体现其高性能和多用途。本文首先介绍网络路由相关概念,然后结合不同的操作平台和不同的硬件设备对常见的网络组织和路由设置功能以及具体运用作一个简单的介绍。
一、相关概念简介
1、路由概念:路由就是通过互联的网络把信息从源地址传输到目的地址的活动。路由发生在0SI网络参考模型中的第三层即网络层。
2、路由选择:路由规定把信息包从一个地址发送到另外一个地址的路径。一条路由并不规定全部路由,仅仅只是主机到网关的一条路径,然后再由网关把包转发到目的地主机或另外一个网关。
路由选择是指选择一条发送报文的路径,而网关是指任何能够完成路由选择功能的网络设备,用来连接不同的网络。
路由选择由IP层来完成,在一台主机上不一定需要完成路由选择的守护进程。
报文距离通常用网关跨(HOP)数来表示,称作METRIC。一个报文从源地址到达目的地址的距离依赖于报文必须经过的网关跨数。一台主机到它直联网的跨数为零,如果通过一个网关就能就能到达指定的网络,则它到该网络的跨数为1,依此类推。
3、网关:网关连接两个或多个网络,并提供路由选择功能。网关在网络层进行选择,一个网关从别的网关接收IP数据,为其选择路由,并按照选定的路由将IP数据报发送到其他网络。网关周期性地检查相连的网络连接状态。
网关把报文按规定的路由发送到指定的目标网络,由目标网络负责把报文发送到目的主机。
4、路由类型:一条路由并不完全描述一条完整的路径,它仅仅定义从一个主机到一个网关的路径段,或者一个网关到另外一个网关的路径段。
TCP/IP通常按照下列顺序搜索路由表以找到路由的最佳匹配:
(1)主机路由:定义网关到一个指定主机的路由;
(2)网络路由:定义网关到一个指定网段或网络的一条路由;
(3)缺省路由:如果主机路由和网络路由都没有定义一条到目的地的路由,则使用缺省路由。
5、路由表:路由在核心路由表中定义。路由表的每项有两个成分:目的地IP地址和网关地址。路由表分为以下三类:
(1)直接路由项:当目的地址和本机地址同处一个网段,使用直接路由项。
(2)间接路由项:当源和目的主机IP地址不在同一网段使用间接路由项。到达目的主机的途径是通过一个或多个网关。源主机只需要访问第一跨网关。
(3)缺省路由项:如果目标IP不在上述两个路由项中,则使用缺省路由项
6、路由选择算法:
从上述算法可以看出主机和网关都参与了路由选择活动。当主机上一个应用程序试图与另外一个主机通信时,系统将产生多个数据报。IP路由选择机制将根据目的IP地址的网络地址部分决定数据报应该送往哪个主机或者网段。
7、路由方式:建立路由的方式主要有隐含方式、静态方式、动态方式3种。
路由是在核心路由选择表中定义的,一般最多可定义到32个路由。这些路由定义包含:本机可达网络的信息、连接远程网络的网关信息和到达这些网络的跨数。
隐含方式定义路由是在配置适配器时进行和完成的。
静态路由是由网络管理员设置的,需要人工维护路由。
动态路由是由守护进程自动更新路由表。通常路由选择的守护进程周期性侦听所有路由刷新信息,并将收到的路由选择表信息进行广播,以便其他路由器更新其路由选择表。
本文主要涉及到静态路由。
二、WINDOWS系统下设置路由
在WINDOWS下手动设置路由主要在DOS系统中命令符下(在运行输入栏中键入COMMAND或者CMD即可)进行。
键入命令ROUTE回车会出现大约几十行英文说明,主要解说在WINDOWS系统中如何添加、删除、修改路由。现简单介绍如下:
ROUTE命令格式如下:
ROUTE [-f] [-p] [command
[destination] [MASK netmask] [gateway] [METRIC metric] [IF interface]
其中 –f 参数用于清除路由表,-p参数用于永久保留某条路由(即在系统重启时不会丢失路由,但在WINDOWS95下无效)。
Command主要有PRINT(打印)、ADD(添加)、DELETE(删除)、CHANGE(修改)共4个命令。
Destination代表所要达到的目标IP地址。
MASK是子网掩码的关键字。Netmask代表具体的子网掩码,如果不加说明,默认是255.255.255.255(单机IP地址),因此键入掩码时候要特别小心,要确认添加的是某个IP地址还是IP网段。如果代表全部出口子网掩码可用0.0.0.0。
Gateway代表出口网关。
其他interface和metric分别代表特殊路由的接口数目和到达目标地址的代价,一般可不予理会。
我们根据单网卡和多网卡(以双网卡为例)两种情况叙述在WINDOWS下如何具体设置路由。
1、单网卡:
在WINDOWS系统下有4条最基本路由,参照下图(键入route
print命令)具体是:
上述路由是WINDOWS自带路由,永不消失,如果上述路由不完整,则说明TCP/IP的安装和运行存在某些最基本问题、或本机网络配置或者安装存在问题。
上述表格中,127.0.0.1用于测试回送(loopback)地址,不能作为有效的网络地址。PC1的IP地址为192.168.97.1,路由器1(用于上互联网)的局域口IP地址为192.168.97.10,路由器2(用于上办公网)的局域口IP地址为192.168.97.11。
如果PC1同时想访问互联网和办公网,通常情况是在WINDOWS网络属性反复修改默认网关,每次还只能访问1个网段,既不方便也非常麻烦。为解决这个问题可在DOS命令符下键入如下命令:
route add 0.0.0.0 maks
0.0.0.0 192.168.97.10(用于上互联网)、
route add 10.42.29.0 mask
255.255.255.0 192.168.97.11(用于上办公网)。
这样将互联网作为默认路由,办公网用作特殊路由添加,当然,如果还有其他系统,可采用同样路由添加。
为了确保路由正确、避免引起路由混乱,最好先删除路由,再添加路由。比如上面的命令可改为:
route delelte 0.0.0.0
route add 0.0.0.0 maks
0.0.0.0 192.168.97.10
route add 10.42.29.0 mask
255.255.255.0 192.168.97.11。
为了确保路由设置长久生效,可将上述命令加入AUTOEXEC.BAT文件中,即操作系统一启动就自动设置路由。当然也可在第一次添加路由时加入-P参数。
具体如下:
route –p add
0.0.0.0 maks 0.0.0.0 192.168.97.10
route –p add
10.42.29.0 mask 255.255.255.0 192.168.97.11。
这时用route print查看路由,就可以看到有两条永久路由添加到路由表中了。
2、多网卡(以双网卡为例)
如果在同一PC机上带有两个网卡,联上两个不同网段的系统,具体参见下面网络连接示意图:
一般情况下,在PC机上加上双网卡和双网关,边可以轻松联上两个子系统。但由于WINDOWS自身系统原因,经常容易出现网关浮动或不稳定的情况,比如PING办公自动化地址无法PING通,却返回从192.168.97.10(路由器1)反馈的信息,此时查看网络路由,路由表正常,此时需要刷新路由。
事实上,可以采取同单网卡类似的办法,可以去掉网络属性中网关,进行人工设置路由。人工设置路由更加精确和自由,比如可以人工控制究竟访问某个网站还是某个网段或者全部网段。
参照上图配置,可在DOS提示符下键入如下命令:
route delete 0.0.0.0
route add 0.0.0.0 mask
0.0.0.0 192.168.97.10(网卡1寻址路由,上互联网,默认路由)
route add 10.42.0.0 mask
255.255.0.0 10.42.29.10(网卡2寻址路由,上办公网)。
当然可以添加- P参数或者将路由添加信息加入自动批处理文件使路由信息永久生效。
三、UNIX系统上设置路由
由于AIX在业界的广泛使用,本文以AIX操作系统为例对如何在UNIX上设置路由进行介绍。
对于静态路由而言,路由表可用SMIT命令或ROUTE命令进行手工维护。需要指出的是SMIT命令可更新ODM数据库相应的路由信息,因此可永久生效,而ROUTE命令并不修改ODM数据库,因此在机器重新启动时将丢失路由。下面首先介绍ROUTE命令的使用方法。
A:命令,有add,flush,delete,change,monitor,
B:网络族系,-inet(默认),xns(代表XEROR网络系统,现已很少使用),
C:网络标志:-net(网络),-host(主机,默认),
D:目的IP地址:symblic
name or numeric address,如果是网段可以只敲IP地址中网络地址部分,但如果是主机地址必须键入完整,目的地址为所有网段,可用参数0或者0.0.0.0均可。
E:网关:symblic
name or numeric address
现看如下网络拓扑图,现要求主机1和主机2和PC2互联,但是不允许192.168.150网段其他机器访问主机1,拨号终端只要拨号成功(获得193.168.97.0网段的动态IP地址)就可通过路由器2访问主机1。
可以在主机1(以ROOT身份进入)上敲入如下命令:
# route add –host
192.168.150.2 133.56.9.82
# route add –host
192.168.150.3 133.56.9.82
# route add –net
193.168.97 133.56.9.29
然后在主机2、PC2上PING主机以及拨号进行连通测试,将会出现连接成功的提示,同样,在主机1PING前几个设备也提示成功。但是PC1和PC2、主机2却网络不通,说明路由设置正确。
如果某条或者路由设置错误,重新输入命令“# route add -net
192.168.150.0 133.56.9.98”会出现“0821-279 writing to
routing socket: Do not specify an existing file.133.56.9.98 net 192.168.150.0:
gateway 133.56.9.98: 0821-285 ioctl returns 17 Do not specify an existing file.”的提示,此时可以命令change改变路由,但如果路由不多的情况下,可以先刷新(删掉路由)路由,重新手动加入路由,这样虽然有点麻烦,但是路由更加清晰。
当然,要使得路由设置永久生效,可将上述命令加入/etc/rc.bat文件中。
如果使用SMIT命令对于生手可能更为容易上手(SMIT采用界面化工具)。要达到同样要求,用SMIT配置静态路由的命令如下:
1、#smit
tcpip
Minimum Configuration &
Startup
Further Configuration
Use DHCP for TCPIP
Configuration & Startup
……..
Configure IP Security (IPv6)
2、选择Further
Configuration
Hostname
Static Routes
Network Interfaces
…………
Stop TCPIP Daemons
Authentication Configuration
3、选择Static
Routes
List All Routes
Add a Static Route
Remove a Static Route
Flush Routing Table
4、填写相关路由信息
按回车确认,这样就实现了主机1和主机2的网络互联。用同样的方法完成另外两条路由的添加。用SMIT添加、删除、修改路由都非常方便,尤其对于生手,如果某个选项输错系统还会提示出错,因此建议多用SMIT设置路由。
四、在路由器上设置路由
目前比较流行的主要有CISCO和3COM路由器,普遍采用动态路由协议(如:RIP、IGRP、OSPF、EIGRP)来实现网络互联。我们以CISCO路由器为例简述。
如果一个小型或者中型网络,没有或者只有较小网络扩充时,采用手工方式输入静态路由并手工管理。但如果网络增大或者网络经常变化,静态路由管理开销将非常之大。
静态路由的优点是:(1)就带宽而言,静态路由没有开销。而在动态路由中,路由协议存在一个相关的带宽问题以维护它与临近路由器的关系。尤其是基于距离向量的协议对带宽要求更高。(2)就安全性而言,静态路由可以人工限定IP地址的访问权限,因此对于高安全行网络而言是非常必要的。
关于在CISCO上设置路由,各方面书籍介绍不少,我们在此只是简单介绍以下静态路由的添加方法,其他不多做赘述。
静态路由通过ip route 命令来设置,该命令完整如下:
CISCO(config)#ip route
A.B.C.D E.F.G.H I.J.K.L/interface X。
其中A.B.C.D是目的网络地址,E.F.G.H是子网掩码,I.J.K.L是下一跳的IP地址,或者Interface是下一跳的接口名。X代表管辖距离(1到255)。
现有一需求,某银行和水厂联网(采用DDN物理链路),为其代收水费,双方在各自网络端都加有网络防火墙,具体网络拓扑图和网络配置如下:
要实现路由器1和路由器2之间路由,可分别在路由器1和路由器2上加入下述路由:
ip route 0.0.0.0 0.0.0.0
162.0.0.2(router1)
ip route 0.0.0.0 0.0.0.0
162.0.0.1 (rotuer2)
这样就可以实现两个路由之间的通信,当然至于网络安全策略可在防火墙上定义(一般采取端口内转椅或者IP地址映射以及应用端口限制的方法)。
在3COM上配置路由可用ME –IP命令进入配置菜单,操作也非常简单。