静态路由 - 未使用网关

静态路由 - 未使用网关

我正在尝试使用网关地址10.10.121.10来通过这台机器转发 TCP 流量。我想让来自我机器的流量通过,10.10.121.10并且该机器10.200.32.107认为它来自10.10.121.10而不是我的机器。似乎无论我在 Windows 中设置什么 - 它都不关心设置的网关地址。

以下是未设置静态路由的状态:

在此处输入图片描述

这正是我所期望的 - 没有设置路由10.200.32.107,因此我无法到达该 IP。

但是当我在这里添加这个静态路由时

在此处输入图片描述

目的地可到达,但无法通过10.10.121.10。看来这个Gateway地址在这里并不重要 - 即使我在这里输入随机 IP(例如我尝试使用1.1.1.1),它也能正常工作。

我期望的是流量按照图像上的绿色步骤进行引导:

  1. 我想到达10.200.32.107,所以使用路线10.200.32.0 255.255.255.0
  2. 网关是10.10.121.10,因此使用路由10.10.121.10 255.255.255.255
  3. 网关就是192.168.24.1这样去那里并将流量转发到10.10.121.10TAP-Windows 适配器 V9 (VPN)

答案1

看来您想管理所连接的路由器后面的路由方式。数据包中没有可以设置为在路由器上读取的选项来更改其行为。

您的计算机唯一能决定的是下一跳。因此,您的所有路由表都只是选择 192.168.24.1 作为下一跳的一种方式,仅此而已。192.168.24.1 将决定下一步要做什么,您无法从计算机更改其行为。

答案2

好的,我最终要做的是pptpd在树莓派上安装并进行如下配置:

sudo apt-get install pptpd
sudo nano /etc/pptpd.conf

并在底部添加

localip 199.168.0.1
remoteip 199.168.0.234-238,199.168.0.245

然后我只是添加了规则iptables

# Generated by xtables-save v1.8.2 on Sun Nov  1 21:00:46 2020
*nat
:PREROUTING ACCEPT [3303:295008]
:INPUT ACCEPT [434:44479]
:POSTROUTING ACCEPT [0:0]
:OUTPUT ACCEPT [51:3332]
-A POSTROUTING -o eth0 -j MASQUERADE
COMMIT
# Completed on Sun Nov  1 21:00:46 2020
# Generated by xtables-save v1.8.2 on Sun Nov  1 21:00:46 2020
*filter
:INPUT ACCEPT [6349:640268]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [3318:257937]
-A FORWARD -i ppp0 -o eth0 -j ACCEPT
-A FORWARD -i eth0 -o ppp0 -m state --state RELATED,ESTABLISHED -j ACCEPT
COMMIT
# Completed on Sun Nov  1 21:00:46 2020

我在 Windows 上安装了新网络:

在此处输入图片描述

然后,因为我正在使用 OpenConnect,所以我编辑了文件vpnc-script.js以便自动连接到piVNP- 我刚刚添加了

echo("Connecting to piVPN...");
exec("rasdial \"piVPN\" \"default\" \"default\"");
echo("Adding my static route...");
exec("route add 10.200.0.0 mask 255.255.0.0 199.168.0.1 metric 36");

在连接方法中,然后在断开连接时添加:

echo("Disconnecting from piVPN...");
exec("rasdial \"piVPN\" /disconnect");

现在一切都自动化了并且运转完美......

相关内容