操作系统 
首页 > 操作系统 > 浏览文章

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

(编辑:jimmy 日期: 2024/11/28 浏览:3 次 )

主机只有一块网卡的时候,不会涉及到默认路由和静态路由的问题。两块网卡时,也可以一块配置有网关(默认路由走这个网卡),另外一块只配置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

上一篇:Linux系统中的passwd命令实用技巧小结
下一篇:Linux Container(LXC容器)的基本命令使用简介
一句话新闻
高通与谷歌联手!首款骁龙PC优化Chrome浏览器发布
高通和谷歌日前宣布,推出首次面向搭载骁龙的Windows PC的优化版Chrome浏览器。
在对骁龙X Elite参考设计的初步测试中,全新的Chrome浏览器在Speedometer 2.1基准测试中实现了显著的性能提升。
预计在2024年年中之前,搭载骁龙X Elite计算平台的PC将面世。该浏览器的提前问世,有助于骁龙PC问世就获得满血表现。
谷歌高级副总裁Hiroshi Lockheimer表示,此次与高通的合作将有助于确保Chrome用户在当前ARM兼容的PC上获得最佳的浏览体验。
友情链接:杰晶网络 DDR爱好者之家 南强小屋 黑松山资源网 白云城资源网 网站地图 SiteMap