linux 下添加,修改,删除路由

ぃ、小莉子 提交于 2019-11-27 18:54:48

转自https://www.cnblogs.com/w-s-y/p/9497504.html

在日常生活中,或者在服务器中,有多个网卡配置多个地址,访问不同的网络段,这种情况是非常常见的现象,这个时候我们就需要添加多个路由来实现多网络段的通行。

一、设置当前终端路由(再开机就没效了)

      1、显示现有路由

复制代码
route

[root@localhost network-scripts]# route
 Kernel IP routing table
 Destination          Gateway         Genmask         Flags    Metric    Ref    Use Iface
 5.5.5.0             2.2.2.252       255.255.255.0     UG          0      0        0 eth3
 2.2.2.0                 *           255.255.255.0     U           1      0        0 eth3
 192.168.248.0           *           255.255.255.0     U           1      0        0 eth1
 6.6.6.0            2.2.2.252        255.255.255.0     UG          0      0        0 eth3
 1.1.1.0                *            255.255.255.0     U           1      0        0 eth2
 4.4.4.0            2.2.2.252        255.255.255.0     UG          0      0        0 eth3
3.3.3.0             2.2.2.252        255.255.255.0     UG          0      0        0 eth3
复制代码

2、添加路由

  • 添加到网络的路由
复制代码
route add-net Destination/genmask gw Gateway

[root@localhost network-scripts]# route add -net 3.3.3.0/24 gw 2.2.2.252
[root@localhost network-scripts]# route add -net 4.4.4.0/24 gw 2.2.2.252
[root@localhost network-scripts]# route add -net 5.5.5.0/24 gw 2.2.2.252
复制代码

添加到主机的路由

route add –host Destination/genmask gw Gateway

route add –host 192.168.168.119 gw 192.168.168.1

添加默认网关

route add default gw IP

[root@localhost network-scripts]# route add default gw 6.6.6.250

3、删除路由

  • 删除默认路由
route del default 

        删除指定路由

route del –net Destination/genmask

[root@localhost network-scripts]# route add -net 6.6.6.0/24 gw 5.5.5.250

路由相关的操作大致如此,比较简单,不过与路由器相关的配置比较复杂,路由器在设置之前需要对网卡和相关配置进行设置,这个过程是比较痛苦的。

二:在linux下设置永久路由的方法: 
1.在/etc/rc.local里添加 
方法:

route add -net 192.168.3.0/24 dev eth0 
route add -net 192.168.2.0/24 gw 192.168.2.254 
route add –net 180.200.0.0 netmask 255.255.0.0 gw 10.200.6.201 dev eth0 metric 1

-host/-net:表示路由目标是主机还是网段;

netmask:表示路由目标为网段时才会使用到,表示路由目标网段的子网掩码;

gw:命令关键字,后面跟下一跳网关;

dev:命令关键字,后面跟具体设备名,表示路由是从该设备出去。

metric:为路由指定所需跃点数的整数值(范围是 1 ~ 9999),它用来在路由表里的多个路由中选择与转发包中的目标地址最为匹配的路由。所选的路由具有最少的跃点数。跃点数能够反映跃点的数量、路径的速度、路径可靠性、路径吞吐量以及管理

2.在/etc/sysconfig/network里添加到末尾(相当于添加默认网关) 
方法:GATEWAY=gw-ip 或者 GATEWAY=gw-dev

3.写入/etc/sysconig/static-routes文件,不过默认在/etc/sysconfig目录中没有这个文件需要我们手工创建然后进行添加

方法:

/etc/sysconfig/static-routes : 
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 

三、路由器相关的实验

与路由器相关的实验,大多都是添加或添加路由表,可以使多个网段之间相互ping可以相通,接下来我将展示两台PC机(PC1,PC2)和五台路由器(r1 ,r2,r3,r4,r5)之间相互ping的实验。

1、在虚拟机编辑模式下添加虚拟网络(2-7)以便以后添加网卡使用

2、规划5台路由以及2台PC的网址

PC1设为1.1.1.1/24                         PC2设为6.6.6.6/24

route1左为1.1.1.251                      route1右为2.2.2.251

route2左为2.2.2.252                      route2右为3.3.3.252

route3左为3.3.3.253                      route3右为4.4.4.253

route4左为4.4.4.254                      route4右为5.5.5.254

route5左为5.5.5.250                      route5右为6.6.6.250

PC1在左侧,然后路由器按1-5从左到右一致排列,PC2在最右侧。在 /etc/sysconfig/network-scripts目录下修改新加网卡的默认配置,删dhcp然后添加上述网址。

3、规划完相关地址后开始规划路由表

开了七台虚拟机,分别修改相关hostname为对应的机器名,在两台PC机上设置器默然网关,

复制代码
PC1                  [root@pc1 ~]# route add default gw 1.1.1.251
PC2                  [root@pc2 ~]# route add default gw 6.6.6.250
route1              

                        [root@route1 ~]# route add -net 3.3.3.0/24 gw 2.2.2.252
                        [root@route1 ~]# route add -net 4.4.4.0/24 gw 2.2.2.252
                        [root@route1 ~]# route add -net 5.5.5.0/24 gw 2.2.2.252
                        [root@route1 ~]# route add -net 6.6.6.0/24 gw 2.2.2.252
复制代码

route2,3 4,5都是按照上述方式选择里自己最近的出口去连别的网段,在此我就不做过多展示。

4、还是以route1为例进行防火墙以及其他设置

[root@route1 ~]# vim /etc/sysctl.conf 
net.ipv4.ip_forward = 1
[root@route1 ~]# sysctl -p
[root@route1 ~]# iptables –F

5、完成上述步骤网络就已经通了,可以进行ping了。

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!