背景:
隔离网络中有几台设备/计算机,我可以使用 SSH 访问它们,但它们无法访问互联网。为了暂时绕过此限制以安装更新和执行相关任务,我使用我的机器创建了一个 SSH 反向隧道,使这些机器能够连接到 OpenVPN 服务器,然后允许它们访问互联网。这在机器具有 VPN 的 tun 接口之前工作正常。
配置
远程计算机具有单个物理以太网接口和静态私有 IP 地址。示例:192.168.56.101/24。该接口已将隔离网络中的路由器设置为默认网关,例如 192.168.56.1。我自己的机器也有一个私有 IP 地址,但不在同一个子网中。示例:192.168.30.30。当我在远程计算机上打开 VPN 连接时,它会获得一个 tun0 接口,其 IP 类似于 10.88.0.10/16。可以通过 10.88.0.1 访问 VPN 服务器,它将流量路由到互联网。
挑战
当我建立 VPN 连接时,远程计算机必须“知道”它应该使用 VPN 接口来处理与互联网相关的所有流量。但是,它仍然必须使用原始以太网与我的计算机建立 SSH 连接,否则我就会被锁定。
我基本上想要的是拥有两个默认网关:
原始默认网关,允许连接到我的机器以及隔离网络中的所有其他设备。它应该用于所有私有目标地址,VPN 网络 (10.88.0.0/16) 除外。
VPN 接口,提供互联网访问。此接口应用于所有未定向到专用网络的流量。8.8.8.8(Google 名称服务器)等地址应通过此接口/网关路由。
问题
对于这种情况,我需要如何在远程计算机上配置路由?默认网关是否有类似“例外”的功能,以告诉计算机除某些私有地址/网络外,将网关用于所有其他用途?