Routing
PPPD 訪問路由器後面的網路
我有一個配置了 OPenVPN 和 PPPD 伺服器的 OperWRT 路由器。
我在配置 PPPD 以將路由 B、C 推送到 A 時遇到問題。當客戶端 A 通過 PPPD 連接到路由器時,可以訪問 D,但不能訪問 B/C 在 D 網路上的另一側機器可以訪問 B 和 C 而沒有任何額外的配置。
現在我用
route add ...
命令在客戶端上添加靜態路由,但這很不方便。
pptp(Client) 中存在的唯一選項是通過 ppp 伺服器強制執行預設路由:
在伺服器上,無法像使用 OpenVPN 伺服器一樣“推送”路由。微軟知識庫
查看Microsft的How VPN Works頁面,它明確表示您將需要依賴其他協議(如 RIP)來創建動態路由環境:
動態路由
通過實施動態路由協議,例如 RIP 或開放最短路徑優先 (OSPF),管理員可以配置路由器以根據需要相互交換路由資訊。
如果 Linux 是客戶端,這是一個解決方案:它取決於發行版,但在 CentOS(取決於正在使用的版本)上,您可以創建文件
/etc/ppp/ip-up.local
或/etc/ppp/ip-up
使用以下內容:#!/bin/bash /sbin/ip route add 192.168.10.0/24 via 192.168.1.1 /sbin/ip route add 192.168.20.0/24 via 192.168.1.1
我假設
192.168.1.1
作為流量的 ip 手動路由到這裡的這些網路。不是192.168.100.0/24
嗎?要在斷開 pptp 隧道時自動刪除這些路由,只需創建一個
/etc/ppp/ip-down.local
包含以下內容的文件:#!/bin/bash /sbin/ip route del 192.168.10.0/24 /sbin/ip route del 192.168.20.0/24