转自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了。