Openvpn
OpenWRT + OpenVPN客戶端從區域網路轉發到vpn不起作用
我有帶 Backfire 10.03.1-rc3 的 OpenWRT 路由器(arch:brcm 2.6 核心)
我已經設置了一個 OpenVPN 客戶端,將我的路由器與工作場所的區域網路連接起來,它執行良好,我可以從路由器連接到工作場所的網路(幾個)。
我的 OpenVPN 客戶端 uci-config 看起來像:
config 'openvpn' 'stream_client' option 'nobind' '1' option 'float' '1' option 'client' '1' option 'reneg_sec' '0' option 'management' '127.0.0.1 31194' option 'explicit_exit_notify' '1' option 'verb' '3' option 'persist_tun' '1' option 'persist_key' '1' list 'remote' 'remote.address.cutted' option 'ca' '/lib/uci/upload/cbid.openvpn.stream_client.ca' option 'key' '/lib/uci/upload/cbid.openvpn.stream_client.key' option 'cert' '/lib/uci/upload/cbid.openvpn.stream_client.cert' option 'enable' '1' option 'dev' 'tun1'
我已將“STREAM_VPN”區域設置為允許進出流量,並添加了區域到區域 lan<->vpn 和 vpn<->lan 的規則
config 'zone' option 'name' 'stream_vpn' option 'network' 'stream_vpn' option 'input' 'ACCEPT' option 'output' 'ACCEPT' option 'forward' 'REJECT' config 'forwarding' option 'src' 'lan' option 'dest' 'stream_vpn' config 'forwarding' option 'src' 'stream_vpn' option 'dest' 'lan'
和介面配置:
config 'interface' 'stream_vpn' option 'proto' 'none' option 'ifname' 'tun1' option 'defaultroute' '0' option 'peerdns' '0'
現在,從我的路由器一切正常,問題是我無法從區域網路內的電腦連接到由 vpn 連接提供的網路中的主機:/
我錯過了什麼,或者我做錯了什麼?
連接到 vpn 時如何強制使用指定的 DNS?(我知道伺服器應該使用 PUSH DNS 選項,但只是 PUSHes 路由)
您很可能沒有設置 openvpn 客戶端路由。http://openvpn.net/index.php/open-source/documentation/howto.html#scope部分“使用路由 VPN(dev tun)時在客戶端包括多台機器”應該解決這個確切的場景。
添加
option masq '1'
在config 'zone'
option 'name' 'stream_vpn' option 'network' 'stream_vpn' option 'input' 'ACCEPT' option 'output' 'ACCEPT' option 'forward' 'REJECT' option masq '1' # IMPORTANT!!!