网络系统管理之静态路由配置

日期: 2011-01-16 来源:TechTarget中国

  公司用的服务器种类繁多,有FreeBSD8.1-64bit、windows2003_R2-64bit和cetnos5.5-64bit,而规划的网段不少,有192.168.4.0、192.168.10.0、192.168.20.0、192.168.21.0,还有10.1.0.0,其中192.168.4.0属于办公网络;还有192.168.20.0和192.168.21.0属于开发环境,192.168.10.0和10.1.0.0属于线上环境(对外提供服务),但是很多时候路由器及防火墙都做了严格控制(因权限方面的原因不能随便更改其rule规则),这时需要手动在服务器或客户机上手动添加路由,我这里就简单归纳一下,希望对大家的工作有所帮助。附注:

  这里的服务器系统均以64bit的windows2003、FreeBSD8.1及Centos5.5说明。

  一、这里先说下最简单的windows2003和windowsxp、windows7下静态路由配置,这个比较简单:

route add 192.168.4.0 mask 255.255.255.0 192.168.4.2

  route add 是windows下route添加网段的特定语法(非route add -net),192.168.4.0是你需要路由的网段,mask后面是此网段的子网掩码,192.168.4.2是下一跳地址,这里详细注明下,要注意与centos和FreeBSD的区别,不然很容易混淆。

  如果要永久添加路由呢?

  ROUTE命令可以在XP、2K/2003、WIN7等操作系统下手工的静态路由配置,但是重启之后路由便丢失了,还要重新增加,那么怎样能让路由一直保待,重启后仍然存在呢?其实很简单,在增加路由的命令后加上-P开关就可以了。例如

route -p add 10.10.0.0 mask 255.255.0.0 192.168.4.222

  -p参数详解

  与Add命令共同使用时,指定路由被添加到注册表并在启动TCP/IP协议的时候初始化IP路由表。默认情况下,启动TCP/IP协议时不会保存添加的路 由,与Print命令一起使用时,则显示永久路由列表。所有其他的命令都忽略此参数。永久路由存储在注册表中的位置是,注意最后一副图画红线的部分,它也可以验证我们新增的命令会永久的增加静态路由。(注意最下面一副图画红线部分)

HKEY_LOCAL_MACHSYSTEMCurrentControlSetServicesTcpipParametersPersistentRoutes

  但很多时候,我们只是临时需要增加路由呢?如果这个过程比较重复,其实可以写一个批处理,要用时双击即可,例如edit c:windowsroute.bat

@echo off
route add 192.168.4.0 mask 255.255.255.0 192.168.21.3
route add 192.168.10.0 mask 255.255.255.0 192.168.21.3
route add 192.168.21.0 mask 255.255.255.0 192.168.21.3
route add 10.1.0.0 mask 255.255.0.0 192.168.21.3

  添加永久路由看需求了,有时如果仅仅只是openVPN需求,就没必要用route add -p添加进路由表,只用bat处理下即可;顺便提下windows下查看本地路由表的命令是route print,注意不要与Linux/FreeBSD发生混乱。

  二、再说下比较常见的Centos5.5 下的永久添加静由方法,手动添加路由的方式为:

route add -net 172.16.6.0 netmask 255.255.255.0 gw 172.16.2.25

  route add -net是centos下的添加静态路由网络的方式,netmask是网络段的子网掩,gw表示下一跳的地址,其实就是指172.16.6.0此网段的路由通过172.16.2.25出去,这只是临时的效果,如果服务器重启则失败,如何能让其永久生效呢?其实可能将其写进文件中,如下:

vim /etc/sysconifg/network-scripts/route-eth0127.16.6.0/24 via 172.16.2.25

  服务器重启也不需要担心了,它会一直生效的。

  Centos下查看路由表的方式蛮多的,netstat -rn或route -n均可;

  三、FreeBSD下较之上面二种服务器较少,所以在其下添加路由不常见,有时还很容易混淆,注意与centos等系列的linux区分,即如果要添加一条网段为172.16.6.0,下一跳地址为172.16.2.25的路由,即

route add -net 172.16.0.0/24 172.16.2.25

  这里注意与centos5和windows2003下的区别,它后面是不接子网掩码这个参数,即172.16.0.0/24,如果硬要接上mask参数的话,shell会产生报错信息

bad netmask

  如果要添加永久路由呢,其实也很简单,即在/etc/rc.conf最后添加,如下命令行可以为你的FreeBSD机器添加4条永久静态路由

static_routes=”net1 net2 net3 net4″
route_net1=”-net 192.168.4.0/24 192.168.21.3″
route_net2=”-net 192.168.10.0/24 192.168.21.3″
route_net3=”-net 192.168.20.0/24 192.168.21.3″
route_net4=”-net 10.1.0.0/16 192.168.21.3″

  顺便提下FreeBSD下的查看路由的命令为netstat -rn,如下:

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

电子邮件地址不会被公开。 必填项已用*标注

敬请读者发表评论,本站保留删除与本文无关和不雅评论的权力。