Routing
靜態路由 - 未使用網關
我正在嘗試使用網關地址
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
)它也可以工作。我期望的是流量按照圖像上的綠色步驟定向:
- 我想到達
10.200.32.107
,所以使用路線10.200.32.0 255.255.255.0
- 網關是
10.10.121.10
,所以使用路由10.10.121.10 255.255.255.255
- 網關就是
192.168.24.1
這樣去那裡並將流量轉發到10.10.121.10
TAP-Windows 適配器 V9 (VPN)
好的,我最終要做的是安裝
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");
在 connect 方法中,然後在 disconnect 中添加:
echo("Disconnecting from piVPN..."); exec("rasdial \"piVPN\" /disconnect");
現在一切都是自動化的,並且執行良好……
您似乎想管理您所連接的路由器後面的路由方式。您可以設置在路由器上讀取以更改其行為的數據包中沒有可能的選項。
您的電腦唯一能決定的是下一跳是什麼。因此,您所有的路由表只是選擇 192.168.24.1 作為下一跳的一種方式,僅此而已。192.168.24.1 將決定下一步做什麼,您無法從您的電腦更改其行為。