所以我在設定中設定了一台在 192.168.7.0/24 子網路上執行的 openvpn 伺服器。 openvpn 伺服器正在提供半複雜的伺服器設置,因此更改子網路僅被視為最後的手段(但我希望我不會到達那裡)
問題是,一些用戶抱怨在家庭辦公室中,儘管他們打開了 VPN,但他們無法使用某些網路資源,更深入的研究表明他們的家庭網路使用與 openvpn 伺服器相同的子網路!因此,請求是在內部路由的,而不是透過 VPN 發送的。
更改為 IPv6 是不可能的,使用 NAT 來做這樣的事情是極其骯髒的。
我嘗試強制 vpn 用戶端使用 vpn 伺服器作為預設 GW,並在伺服器設定端推送“redirect-gateway def1”或/和推送“redirect-gateway local def1”,但沒有成功
有任何想法嗎?
非常感謝
答案1
網關重定向的問題是,在路由表中,更具體的條目會覆蓋不太特定的條目。因此,推送網關通常沒有太大幫助,因為每台電腦都包含/24
本地網路的鏈路範圍路由條目,這當然比通告的預設路由更具體,因此將使用它。
如果您確實不想更改 VPN 子網,那麼最好的方法就是推送 VPN 網路上資源的特定路由,因為簡單主機的路由將覆蓋鏈路範圍條目。
您可能想要“欺騙”,並發送兩個/25
網路(即192.168.7.0/25
和192.168.7.128/25
),它們比本地/24
網路更具體,並且這兩個網路幾乎覆蓋了整個 VPN 子網路(減去“邊界”上的主機 - 即、主機127
和128
)。在這種情況下,您還需要推送redirect-local
或redirect-local def1
指令,以確保不會遺失預設閘道以及用戶端與 VPN 伺服器的連線。
然而,在我看來,最好的解決方案是將 VPN 子網路更改為「醜陋」的東西,不太可能與家庭網路發生衝突(例如,相當多的人將其家庭網路設定為類似的東西10.287.29.0/24
) 。這可能是一項艱鉅的任務,但這是「乾淨」的方式。此外,這是真正確保您不會因網網重疊而遇到意外的最佳方法。