网络说明

主机1(分析主机):

  • 系统:centos7
  • 网卡1:网卡名:enp94s0f0 ip:22.64.163.194 掩码:225.255.255.192 网关:22.64.163.193
  • 网卡2:网卡名:enp94s0f2 ip:192.168.1.78 掩码:225.255.255.0 网关:192.168.1.254

主机2(巡视主机):

  • 系统:centos7
  • 网卡1:网卡名:enp23s0f0 ip:192.168.1.74 掩码:225.255.255.0 网关:192.168.1.254

主机3(云平台)

  • ip:10.144.244.129

操作目标

现在主机2想通过主机1访问主机3

主机1(分析主机)配置:

  1. 启用IP转发:

    • 使用以下命令修改内核参数以允许IP转发:
      sudo echo 1 > /proc/sys/net/ipv4/ip_forward
      
    • 为了确保开机时IP转发功能仍然启用,请编辑/etc/sysctl.conf文件:
      sudo vi /etc/sysctl.conf
      
      并添加或修改以下行:
      net.ipv4.ip_forward=1
      
    • 应用更改:
      sudo sysctl -p
      
  2. 防火墙配置 (可选):

    如果你在主机1上运行了防火墙(如firewalld或iptables),你可能需要调整规则以允许转发。

    以下是一个使用firewalld在主机1上允许转发的示例:

    sudo firewall-cmd --add-masquerade --permanent
    sudo firewall-cmd --reload
    
  3. 转发规则

好的,基于您提供的文档中的信息,我将为您制定 iptables 规则。

  1. 配置来自192.168.1.0/24网段(即主机2的网段)的流量,通过主机1的`enp94s0f0网卡访问10.144.244.0/24网段:

    iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -d 10.144.244.0/24 -o enp94s0f0 -j MASQUERADE;
    
  2. 如果需要从主机3回应到主机2的流量,则还需要配置反向的规则:

    iptables -t nat -A POSTROUTING -s 10.144.244.0/24 -d 192.168.1.0/24 -o enp94s0f2 -j MASQUERADE;
    

请将上述 iptables 规则添加到主机1,并检查是否可以从主机2 ping 通主机3。

3.为了重启后仍然生效,在/etc/rc.local文件中添加

iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -d 10.144.244.0/24 -o enp94s0f0 -j MASQUERADE;
iptables -t nat -A POSTROUTING -s 10.144.244.0/24 -d 192.168.1.0/24 -o enp94s0f2 -j MASQUERADE;

主机2(巡视主机)配置:

  1. 设置静态路由:

    主机2需要知道如何通过主机1到达10.144.244.129。为此,你需要在主机2上添加一个静态路由:

    sudo ip route add 10.144.244.129/32 via 192.168.1.78 dev enp23s0f0
    

    为了使此更改在重启后依然生效,在/etc/rc.local文件中添加

    sudo ip route add 10.144.244.129/32 via 192.168.1.78 dev enp23s0f0