1、命令配置

虚拟服务器 网卡配置信息 虚拟网卡名称 虚拟网卡模式
服务器01 eth1 10.0.0.10/24 nat模式
服务器02 eth2 10.0.0.11/24 nat模式
eth3 10.0.1.11/24 主机模式
服务器03 eth2 10.0.1.10/24 主机模式

1.1 查看三台主机的路由表

1.1.1 服务器01

  1. [root@route-01 ~]# route -n
  2. Kernel IP routing table
  3. Destination Gateway Genmask Flags Metric Ref Use Iface
  4. 10.0.0.0 0.0.0.0 255.255.255.0 U 0 0 0 eth1
  5. 169.254.0.0 0.0.0.0 255.255.0.0 U 1002 0 0 eth1
  6. 0.0.0.0 10.0.0.254 0.0.0.0 UG 0 0 0 eth1

1.1.2 服务器02

  1. [root@route-02 ~]# route -n
  2. Kernel IP routing table
  3. Destination Gateway Genmask Flags Metric Ref Use Iface
  4. 10.0.0.0 0.0.0.0 255.255.255.0 U 0 0 0 eth2
  5. 10.0.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eth3
  6. 169.254.0.0 0.0.0.0 255.255.0.0 U 1002 0 0 eth2
  7. 169.254.0.0 0.0.0.0 255.255.0.0 U 1003 0 0 eth3
  8. 0.0.0.0 10.0.1.254 0.0.0.0 UG 0 0 0 eth3

1.1.3 服务器03

  1. [root@route-03 ~]# route -n
  2. Kernel IP routing table
  3. Destination Gateway Genmask Flags Metric Ref Use Iface
  4. 10.0.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eth2
  5. 169.254.0.0 0.0.0.0 255.255.0.0 U 1002 0 0 eth2
  6. 0.0.0.0 10.0.1.254 0.0.0.0 UG 0 0 0 eth2

1.2 服务器主机配置

1.2.1 服务器01配置路由信息

  1. [root@route-01 ~]# route add -net 10.0.1.0/24 gw 10.0.0.11
  2. [root@route-01 ~]# route -n
  3. Kernel IP routing table
  4. Destination Gateway Genmask Flags Metric Ref Use Iface
  5. 10.0.0.0 0.0.0.0 255.255.255.0 U 0 0 0 eth1
  6. 10.0.1.0 10.0.0.11 255.255.255.0 UG 0 0 0 eth1
  7. 169.254.0.0 0.0.0.0 255.255.0.0 U 1002 0 0 eth1
  8. 0.0.0.0 10.0.0.254 0.0.0.0 UG 0 0 0 eth1
  9. # 说明:利用添加网络路由条目命令,在服务器01上正确添加上一条去往10.0.1.0 网段的路由条目

1.2.2 服务器03上配置网络路由条目

  1. [root@route-03 ~]# route add -net 10.0.0.0/24 gw 10.0.1.11
  2. [root@route-03 ~]# route -n
  3. Kernel IP routing table
  4. Destination Gateway Genmask Flags Metric Ref Use Iface
  5. 10.0.0.0 10.0.1.11 255.255.255.0 UG 0 0 0 eth2
  6. 10.0.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eth2
  7. 169.254.0.0 0.0.0.0 255.255.0.0 U 1002 0 0 eth2
  8. 0.0.0.0 10.0.1.254 0.0.0.0 UG 0 0 0 eth2
  9. 说明:利用添加网络路由条目命令,在服务器03上正确添加上一条去往10.0.0.0网段条目

1.2.3 在服务器02 上开启路由转发

服务器02主机在拓扑中负责进行路由转发,需要开启相关参数。

  1. [root@route-02 ~]# vim /etc/sysctl.conf
  2. # Kernel sysctl configuration file for Red Hat Linux
  3. #
  4. # For binary values, 0 is disabled, 1 is enabled. See sysctl(8) and
  5. # sysctl.conf(5) for more details.
  6. #
  7. # Use '/sbin/sysctl -a' to list all possible parameters.
  8. # Controls IP packet forwarding
  9. net.ipv4.ip_forward = 1

1.2.3.1 显示转发信息

  1. [root@route-02 ~]# sysctl -p
  2. net.ipv4.ip_forward = 1
  3. net.ipv4.conf.default.rp_filter = 1
  4. net.ipv4.conf.default.accept_source_route = 0
  5. kernel.sysrq = 0
  6. kernel.core_uses_pid = 1
  7. net.ipv4.tcp_syncookies = 1
  8. kernel.msgmnb = 65536
  9. kernel.msgmax = 65536
  10. kernel.shmmax = 68719476736
  11. kernel.shmall = 4294967296

1.3 虚拟主机路由访问验证

1.3.1 在服务器01 上验证

  1. [root@route-01 ~]# traceroute 10.0.1.10
  2. traceroute to 10.0.1.10 (10.0.1.10), 30 hops max, 60 byte packets
  3. 1 10.0.0.11 (10.0.0.11) 0.252 ms 0.231 ms 0.199 ms
  4. 2 10.0.1.10 (10.0.1.10) 0.999 ms !X 0.970 ms !X 0.940 ms !X
  5. # 说明:通过 traceroute 路由路径追踪命令,已确认路由走向符合配置需求,即路由配置正确无误。
  6. # !X 表示已经完成路由追踪过程。

1.3.2 服务器03上进行验证

  1. [root@route-03 ~]# traceroute 10.0.0.10
  2. traceroute to 10.0.0.10 (10.0.0.10), 30 hops max, 60 byte packets
  3. 1 10.0.1.11 (10.0.1.11) 0.287 ms 0.209 ms 0.176 ms
  4. 2 10.0.0.10 (10.0.0.10) 0.469 ms !X 0.526 ms !X 0.498 ms !X
  5. #说明:通过 traceroute 路由路径追踪命令,已确认路由走向符合配置需求,即路由配置正确无误。
  6. # !X 表示已经完成路由追踪过程。

2、Linux 路由部署项目结论

整体配置部署步骤已符合原有项目需求,生产环境中,已经可以满足 3 台服务器主机在正常访问外网的同时,可以利用服务器路由转发功能与服务器网路路由配置,实现内网环境跨网段进行通讯需求。

2.1 linux 路由部署异常分析

2.1.1 防火墙异常问题

服务器主机 02 起到路由转发功能,类似于路由器的角色,因此服务器上防火墙功能需要关闭,否则防火墙相应条目会阻止掉路由转发流量。

2.1.2 虚拟网卡异常问题

服务器主机网卡信息配置中,尽量选择 nat 模式或者仅主机模式网卡进行配置,不要选择LAN 区段网卡配置方式,否则根据虚拟软件网络工作原理,LAN 区段网卡配置模式无法进行路由的转发,会影响最终配置效果。