Networking
如何拒絕 OpenVPN 伺服器推送的路由?
當我通過 Internet 與我們公司的 OpenVPN 伺服器建立 OpenVPN 客戶端連接時,它會推送幾條靜態路由。不幸的是,這些路由在我的本地網路環境中中斷了一些連接,因為它們與我自己的路由發生衝突。我怎樣才能拒絕這些路線?
經過對
openvpn
手冊的廣泛研究,我找到了我的問題的答案:如果您不希望路由自動執行,而是由您自己的工具處理,請使用以下選項:
--route-noexec Don't add or remove routes automatically. Instead pass routes to --route-up script using environmental variables.
如果您接受除路由之外的伺服器推送的所有內容,請使用以下選項:
--route-nopull When used with --client or --pull, accept options pushed by server EXCEPT for routes. When used on the client, this option effectively bars the server from adding routes to the client's routing table, however note that this option still allows the server to set the TCP/IP properties of the client's TUN/TAP interface.
時代在前進,從 2017 年(OpenVPN 2.4)開始,這可以通過
pull-filter accept "route 192.168." pull-filter ignore "route 172." pull-filter accept "route 1" pull-filter ignore "route "
這個(人為的例子)將允許學習以 192.168 開頭的路由,忽略所有 172. 路由,允許其他路由到 1.anything,然後忽略所有其他路由。
要忽略
redirect-gateway
,您可以:pull-filter ignore redirect-gateway
這些命令將添加到您的客戶端配置文件中。
同樣,您可以使用
reject
告訴 VPN 伺服器它不被接受的關鍵字。不確定這個的用途。最後,您也可以過濾其他配置選項。我用它來忽略提供的 DNS 伺服器,因為 DNS 是由本地伺服器為我處理的。