详解Linux系统中配置静态路由的方法

  主机只有一块网卡的时候,不会涉及到默认路由和静态路由的问题。两块网卡时,也可以一块配置有网关(默认路由走这个网卡),另外一块只配置IP和掩码确认(该主机同网络的可以互通)。不过在稍大型的、有多网段的环境里就需单独进行默认路由和静态路由的配置了。

  一、需求

  目前有如下的一个网络,主机有两个网卡,两个网段分别是是业务地址eth0和管理地址eth1。

  业务地址段为:192.168.3.0/24段

  管理地址段:10.212.52.0/24段

  防火墙段:10.211.6.0/24段

  现在的需求是,默认路由走业务地址(192.168.3.0/24),防火墙段走10.211.6.0/24业务地址,10.0.0.0/8的所有地址都走管理地址段。

  二、redhat静态路由配置

  在redhat环境下,有三种配置方法

  方法一:在/etc/sysconfig/network配置文件中配置:

  代码如下:

  default via 192.168.3.1 dev eth0 #192.168.3.1为eth0网卡的网关地址

  10.211.6.0/24 via 192.168.3.1 dev eth0

  10.0.0.0/8 via 10.212.52.1 dev eth1 #10.212.52.1为eth1网卡的网关地址

  注:该种配置写法同样支持写到/etc/sysconfig/network-scripts/route-interferface 配置文件中。

  具体可以参看redhat官方文档。

  方法二:在/etc/sysconfig/network-scripts/route-interferface 配置文件配置

  在这里支持两种配置格式的写法

  A:方法1中提到的方法

  代码如下:

  # cat /etc/sysconfig/network-scripts/route-eth0

  0.0.0.0/0 via 192.168.3.1 dev eth0

  10.211.6.0/24 via 192.168.3.1 dev eth0

  # cat /etc/sysconfig/network-scripts/route-eth1

  10.0.0.0/8 via 10.212.52.1 dev eth1

  B:网络掩码法

  代码如下:

  # cat /etc/sysconfig/network-scripts/route-eth0

  ADDRESS0=0.0.0.0

  NETMASK0=0.0.0.0

  GATEWAY0=192.168.3.1

  ADDRESS1=10.211.6.0

  NETMASK1=255.255.255.0

  GATEWAY1=192.168.3.1

  其中网段地址和掩码全是0代表为所有网段,即默认路由。

  # cat /etc/sysconfig/network-scripts/route-eth1

  ADDRESS0=10.0.0.0

  NETMASK0=255.0.0.0

  GATEWAY0=10.212.52.1

  网络掩码法也可以参看redhat官方文档。

  方法三:/etc/sysconfig/static-routes配置

  代码如下:

  # cat /etc/sysconfig/static-route

  any net any gw 192.168.3.1

  any net 10.211.6.0/24 gw 192.168.3.1

  any net 10.0.0.0 netmask 255.0.0.0 gw 10.212.52.1

  注:默认情况下主机中并没有该文件,之所以该方法也可以是因为/etc/init.d/network启动脚本会调用该文件,具体调用部分代码如下:

  代码如下:

  # Add non interface-specific static-routes.

  if [ -f /etc/sysconfig/static-routes ]; then

  grep "^any" /etc/sysconfig/static-routes | while read ignore args ; do

  /sbin/route add -$args

  done

  fi

  三、suse静态路由配置

  方法1:通过/etc/sysconfig/network/routes配置文件

  代码如下:

  # cat routes

  default 192.168.3.1 - -

  10.0.0.0 10.212.52.1 255.0.0.0 eth1

  10.211.6.0 192.168.3.1 255.255.255.0 eth0

  注:其中第一条配置的为默认路由,默认路由掩码和接口可以以"-" 代替。注意非默认路由不可以这样做。

  方法2:通过/etc/sysconfig/network/ifroute-*配置文件

  /etc/sysconfig/network/ifroute-* ,这里的星号代表的相应的设备号,如上面的配置,可以使用以下进行配置:

  代码如下:

  # cat /etc/sysconfig/network/ifroute-eth0

  0.0.0.0 192.168.3.1 0.0.0.0 eth0

  10.211.6.0 192.168.3.1 255.255.255.0 eth0

  # cat /etc/sysconfig/network/ifroute-eth1

  10.0.0.0 10.212.52.1 255.0.0.0 eth1

  具体也可以参看novell站点文档 或 suse 官方文档 。在novell 站点文档,有如下一段说明:

  代码如下:

  define an additional configuration file: /etc/sysconfig/network/ifroute-*. Replace * with the name of the interface.

  The entries in the routing configuration files look like this:

  DESTINATION GATEWAY NETMASK INTERFACE [ TYPE ] [ OPTIONS ]

  DESTINATION GATEWAY PREFIXLEN INTERFACE [ TYPE ] [ OPTIONS ]

  DESTINATION/PREFIXLEN GATEWAY - INTERFACE [ TYPE ] [ OPTIONS ]

  可以看到必需要配置的四个选项分别为:目标段或主机 接口网关地址 目标段掩码 接口

  四、查看路由表

  配置完成后,可以通过重启network服务生效,并通过下面的任一命令查看路由表信息:

  代码如下:

  # netstat -nr

  # route -n

  # ip route list

  # ip route show

猜你喜欢

  1. 详解Linux系统中md5sum命令的用法

    这篇文章主要介绍了详解Linux系统中md5sum命令的用法,用来处理MD5验证的相关操作,需要的朋友可以参考下 MD5算法常常被用来验证网络文件传输的完整性,防止文件被人篡改.MD5全称是报文摘要算 ...

  2. 详解Linux系统中的root权限控制

    在Linux操作系统中,root的权限是最高的,也被称为超级权限的拥有者.普通用户无法执行的操作,root用户都能完成,所以也被称之为超级管理用户. 在系统中,每个文件.目录和进程,都归属于某一个用户 ...

  3. 详解Linux系统中的守护进程

    守护进程daemon,是生存期较长的一种进程.它们常常在系统自举时启动,仅在系统关闭时才终止.因为它们没有控制终端,所以说它们是在后台运行的.UNIX系统有很多守护进程,它们执行日常事务活动. 1.系 ...

  4. 详解Linux系统中的进程初始化配置文件inittab

    /etc/inittab文件描述了哪些进程开始启动并正常运行.inittab为linux初始化文件系统时init初始化程序用到的配置文件.这个文件负责设置init初始化程序初始化脚本在哪里;每个运行级 ...

  5. 详解Linux系统中的usr目录

    linux 文件结构中,有一个很神奇的目录 —— /usr.之前一直没有怎么关注过它,反正程序都是安装在里边的,也没有什么值得追根溯源的东西.直到有一天 fedora 要简化整个文件系统体系,看到讨论 ...

  6. 详解Linux系统中ping和arping命令的用法

    pingping 程序使用 ICMP 协议的强制回显请求数据报以使主机或网关发送一份 ICMP 的回显应答.回显请求数据报(" pings ")含有一个 IP 及 ICMP 的报头 ...

  7. 详解Linux系统中安装配置Samba服务器的步骤

    一.获取源代码包并进行解压 从samba的官方网站可以下载最新的samba源代码包.下面我们以samba-3.5.9.tar.gz的源代码包作为案例进行解析.本例中,我们将源代码包放在目录/home/ ...