ITPub博客

首页 > Linux操作系统 > Linux操作系统 > centos7 永久添加静态路由

centos7 永久添加静态路由

Linux操作系统 作者:strivechao 时间:2020-09-02 08:28:27 0 删除 编辑

查看路由表

ip route show|column -t
route -n

永久添加路由

vim /etc/sysconfig/network-scripts/route-ens224
./ via ../ via

重启网络生效

systemctl restart network


Centos6 

C、# vi /etc/sysconfig/static-routes (没有static-routes的话就手动建立一个这样的文件,推荐使用)
语句:
any net 0.0.0.0 gw 192.168.209.128
any net 192.168.3.0/24 gw 192.168.3.254
any net 10.250.228.128 netmask 255.255.255.192 gw 10.250.228.129


一、使用route命令 添加route 命令

设置和查看路由表都可以用 route 命令,设置内核路由表的命令格式是:

# route  [add|del] [-net|-host] target [netmask Nm] [gw Gw] [[dev] If]

其中:

  • add : 添加一条路由规则
  • del : 删除一条路由规则
  • -net : 目的地址是一个网络
  • -host : 目的地址是一个主机
  • target : 目的网络或主机
  • netmask : 目的地址的网络掩码
  • gw : 路由数据包通过的网关
  •  route 命令的输出项说明 输出项  说明
Destination 目标网段或者主机
Gateway 网关地址,”*” 表示目标是本主机所属的网络,不需要路由
Genmask 网络掩码
Flags 标记。一些可能的标记如下:

U — 路由是活动的

H — 目标是一个主机

G — 路由指向网关

R — 恢复动态路由产生的表项

D — 由路由的后台程序动态地安装

M — 由路由的后台程序修改

! — 拒绝路由
Metric 路由距离,到达指定网络所需的中转数(linux 内核中没有使用)
Ref 路由项引用次数(linux 内核中没有使用)
Use 此路由项被路由软件查找的次数
Iface 该路由表项对应的输出接口
  • dev : 为路由指定的网络接口
  •  
  • 使用route 命令添加的路由,机器重启或者网卡重启后路由就失效了,方法:
    A、添加到主机的路由
    # route add –host 192.168.1.10 dev eth0
    # route add –host 192.168.1.10 gw 192.168.1.1
    B、添加到网络的路由
    # route add –net 192.168.1.0  netmask 255.255.255.0 eth0
    # route add –net 192.168.1.0  netmask 255.255.255.0 gw 192.168.1.1
    # route add –net 192.168.1.0/24 eth1
    C、添加默认网关
    # route add default gw 192.168.1.1
    D、删除路由
    # route del –host 192.168.1.10 dev eth0

ip route add 192.178.18.0/24 via 192.178.17.200 dev em4




CentOS7、CentOS6添加永久静态路由

本人在实际工作中经常需要添加 永久静态路由,故整理此文。我这里只列举最快捷有效的添加方法,其他方法大家可自行查找,本文不再赘述。

假设我这台机器有三块儿网卡,ip192.168.102.30配置在网卡eth0上,掩码是255.255.255.0,网关是192.168.102.1,需要与192.168.100.0段内所有服务器通信,以下是路由设置方法。

1. CentOS7添加永久静态路由方法

输入 ip route show | column -t查看当前路由表:

[root@test ~]# ip route show | column -t
192.168.102.0/24	dev	 eth0	proto	kernel	scope	link	src	  192.168.102.107	metric	100
[root@test ~]# 
123

输入命令 ip addr查看所需经过的网卡的名称:

[root@test ~]# ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
	link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
	inet 127.0.0.1/8 scope host lo
		valid_Ift forever preferred_Ift forever
	inet6 ::1/128 scop host
		valid_Ift forever prefeered_Ift forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
	link/ether 00:13:dd:a2:08:00 brd ff:ff:ff:ff:ff:ff
	inet 192.168.102.30/24 brd 192.168.102.255 scope global noprefixroute eth0
		valid_Ift forever preferred_Ift forever
	inet6 ed20::21c:5dff:fe64:3000/64 scop link
		valid_Ift forever prefeered_Ift forever
3: eth1: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc mq state DOWN group default qlen 1000
	link/ether 00:13:dd:a2:08:01 brd ff:ff:ff:ff:ff:ff
4: eth2: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc mq state DOWN group default qlen 1000
	link/ether 00:13:dd:a2:08:02 brd ff:ff:ff:ff:ff:ff
[root@test ~]# 
123456789101112131415161718

从以上回显中可以得知所需经过的网卡名为 eth0,然后我们用 vi编辑器在以下路径创建文件 route-eth0并编辑:

[root@test ~]# vi /etc/sysconfig/network-scripts/route-eth01

在route-eth0文件中添加以下行: 192.168.100.0/24 via 192.168.102.1 dev eth0
其中,192.168.100.0/24是目标网段及掩码,192.168.102.10是网关,dev eth0是途径设备。

192.168.100.0/24 via 192.168.102.1 dev eth0
~
~
~
~
~
~
~
"/etc/sysconfig/network-scripts/route-eth0" 3L, 89C123456789

添加完成后按 Esc退出编辑,输入“ :wq”,敲击回车保存并退出:

192.168.100.0/24 via 192.168.102.1 dev eth0
~
~
~
~
~
~
~
:wq123456789

随后输入 service network restart重启网络服务:

[root@test ~]# service network restart
Restarting network (via systemctl):						[  ok  ]
[root@test ~]# 
123

ping一下目标网段的机器,看看通不通,按Ctrl+C中断:

[root@test ~]# ping 192.168.100.226
PING 192.168.100.226 (192.168.100.226) 56(84) bytes of data.
64 bytes from 192.168.100.226: icmp_seq=1 ttl=255 time=1.33 ms
64 bytes from 192.168.100.226: icmp_seq=2 ttl=255 time=1.34 ms
64 bytes from 192.168.100.226: icmp_seq=3 ttl=255 time=1.56 ms
^C
--- 192.168.100.226 ping statistics ---
3packets transmitted, 3 received, 0% packet loss, time 2002ms
rtt min/avg/max/mdev = 1.339/1.417/1.565/0.104 ms
[root@test ~]# 
12345678910

输入 ip route show | column -t查看路由表中是否有刚才添加的路由:

[root@test ~]# ip route show | column -t
192.168.100.0/24	via	  192.168.102.1	dev		eth0	proto	static	metric	100
192.168.102.0/24	dev	  eth0				proto	kernel	scope	link	src		192.168.102.30	metric	100
[root@test ~]# 
1234
至此,CentOS7操作系统下永久静态路由设置完成。

2. CentOS6添加永久静态路由方法

CentOS6要比CentOS7简单粗暴的多。

输入 route -n查看当前路由表:

[root@test2 ~]# route -n
Kernel IP routing table
Destination	Gateway			Genmask			Flags	Metric	Ref	Use	Iface
0.0.0.0			192.168.102.1	255.255.255.0	UG		0		0	0	eth0
[root@test2 ~]# 
12345

输入命令 ifconfig查看所需经过的网卡的名称:

[root@test2 ~]# ifconfig
eth0		Link encap:Ethernet  HWaddr 00:13:DD:A2:08:00
		inet addr:192.168.102.30  Bcast:192.168.102.255 Mask:255.255.255.0
		inet6 addr: ed20::21c:5dff:fe64::3000/64 Scope:Global
		inet6 addr: fe80::215:5d66::1100/64 Scope:Link
		UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
		RX packets:32609036 errors:0 dropped:0 overruns:0 carrier:0
		TX packets:83149 errors:0 dropped:0 overruns:0 carrier:0
		collisions:0 txqueuelen:1000
		RX bytes:3808450527 (3.5 GiB)  TX bytes:5266402 (5.0 MiB)
lo		Link encap:Local Loopback
		inet addr:127.0.0.1 Mask:255.0.0.0
		inet6 addr: ::1/128 Scope:Host
		UP LOOPBACK RUNNING  MTU:65536  Metric:1
		RX packets:346915 errors:0 dropped:0 overruns:0 frame:0
		TX packets:346915 errors:0 dropped:0 overruns:0 carrier:0
		collisions:0 txqueuelen:0
		RX bytes:24878697 (23.7 MiB)  TX bytes:24878697 (23.7 MiB)
			
[root@test2 ~]# 
123456789101112131415161718192021

从以上回显中可以得知所需经过的网卡名为 eth0,然后我们用 vi编辑器在以下路径创建文件 static-routes并编辑:

[root@test2 ~]# vi /etc/sysconfig/static-routes

在 static-routes文件中添加以下行: any net 192.168.100.0 netmask 255.255.255.0 gw 192.168.102.1
其中,192.168.100.0是目标网段,netmask是子网掩码,192.168.102.1是途径网关。

any net 192.168.100.0 netmask 255.255.255.0 gw 192.168.102.1
~
~
~
~
~
~
~
"/etc/sysconfig/static-routes" 3L, 189C123456789

添加完成后按 Esc退出编辑,输入“ :wq”,敲击回车保存并退出:

192.168.100.0/24 via 192.168.102.1 dev eth0
~
~
~
~
~
~
~
:wq123456789

随后输入 service network restart重启网络服务:

[root@test2 ~]# service network restart
Shutting down interface eth0:							[  ok  ]
Shutting down loopback interface:						[  ok  ]
Bringing up loopback interface:						[  ok  ]
Shutting down interface eth0:  Determining if ip address 192.168.102.30 is already in use for device eth0...
														[  ok  ]
[root@test2 ~]# 
1234567

ping一下目标网段的机器,看看通不通,按Ctrl+C中断:

[root@test2 ~]# ping 192.168.100.226
PING 192.168.100.226 (192.168.100.226) 56(84) bytes of data.
64 bytes from 192.168.100.226: icmp_seq=1 ttl=255 time=1.81 ms
64 bytes from 192.168.100.226: icmp_seq=2 ttl=255 time=1.24 ms
64 bytes from 192.168.100.226: icmp_seq=3 ttl=255 time=1.89 ms
64 bytes from 192.168.100.226: icmp_seq=4 ttl=255 time=1.21 ms
^C
--- 192.168.100.226 ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3272ms
rtt min/avg/max/mdev = 1.213/1.542/1.897/0.318 ms
[root@test2 ~]# 
1234567891011

输入 route -n查看路由表,看看刚才添加的路由是否存在:

[root@test2 ~]# route -n
Kernel IP routing table
Destination	Gateway			Genmask			Flags	Metric	Ref	Use	Iface
192.168.100.0	192.168.102.1	255.255.255.0	UG		0		0	0	eth0
0.0.0.0			192.168.102.1	255.255.255.0	UG		0		0	0	eth0
[root@test2 ~]# 
123456
至此,CentOS6操作系统下永久静态路由设置完成。



来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/25469263/viewspace-2716435/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2018-06-21

  • 博文量
    108
  • 访问量
    338451