![Windows 路由问题](https://linux22.com/image/1500872/Windows%20%E8%B7%AF%E7%94%B1%E9%97%AE%E9%A2%98.png)
我有两个 Windows 机器(Windows 10 和 Windows 7)。第一个名为 SERVER 的机器运行 OpenVPN 作为服务器,远程名为 REMOTE 的机器运行 OpenVPN 客户端并正常连接到 SERVER。两个机器都通过 HKLM\System\CurrentControlSet\services\Tcpip\Parameters\IPEnableRouter=1 启用了 IP 路由,并且都运行了路由和 RAS 服务。两个机器的 Windows 防火墙都已完全禁用。
以下是 IP 配置详细信息:
服务器:
local IP 10.150.1.1/24
default gateway is 10.150.1.254
VPN Transfer IP 10.150.2.1/24
偏僻的
local IP 192.168.1.251/24
default gateway is 192.168.1.254
VPN Transfer IP 10.150.2.6/24 (assigned by the OpenVPN Server when the connection is established)
问题是,从服务器上我无法 ping 远程的本地 IP 地址 192.168.1.251,但所有其他 ping 操作均可正常进行。
详细地:
从服务器:
ping 10.150.2.6 is ok
ping 192.168.1.251 fails!!!!!!!!!!!!
tracert -d 192.168.1.251 yields
1 <1 ms <1 ms <1 ms 10.150.1.254 (<<< the default gateway of SEVER)
and from there out to the public Internet...
从远程
ping 10.150.1.1 is ok
ping 10.150.2.1 is ok, too
我希望能够从服务器 ping 192.168.1.251(并且,下一步,让远程 PC 本地 LAN 上的 PC 能够通过 OpenVPN 链接 ping 服务器,但这是另一个问题)。我找不到服务器将针对远程本地 LAN 接口的数据包转发到公共互联网,而不是通过 OpenVPN 将它们转发到远程 PC 的原因。
以下是两个路由表:
服务器
===========================================================================
Schnittstellenliste
15...d0 17 c2 ac a2 1a ......Realtek PCIe GBE Family Controller #2
5...00 ff 1b 1f c1 7f ......TeamViewer VPN Adapter
4...00 ff 18 da d2 10 ......TAP-Windows Adapter V9
1...........................Software Loopback Interface 1
2...00 00 00 00 00 00 00 e0 Microsoft ISATAP Adapter
12...00 00 00 00 00 00 00 e0 Microsoft ISATAP Adapter #2
13...00 00 00 00 00 00 00 e0 Teredo Tunneling Pseudo-Interface
===========================================================================
IPv4-Routentabelle
===========================================================================
Aktive Routen:
Netzwerkziel Netzwerkmaske Gateway Schnittstelle Metrik
0.0.0.0 0.0.0.0 10.150.1.254 10.150.1.1 266
10.150.1.0 255.255.255.0 Auf Verbindung 10.150.1.1 266
10.150.1.1 255.255.255.255 Auf Verbindung 10.150.1.1 266
10.150.1.255 255.255.255.255 Auf Verbindung 10.150.1.1 266
10.150.2.0 255.255.255.0 10.150.2.2 10.150.2.1 20
10.150.2.0 255.255.255.252 Auf Verbindung 10.150.2.1 276
10.150.2.1 255.255.255.255 Auf Verbindung 10.150.2.1 276
10.150.2.3 255.255.255.255 Auf Verbindung 10.150.2.1 276
127.0.0.0 255.0.0.0 Auf Verbindung 127.0.0.1 306
127.0.0.1 255.255.255.255 Auf Verbindung 127.0.0.1 306
127.255.255.255 255.255.255.255 Auf Verbindung 127.0.0.1 306
192.168.1.0 255.255.255.0 10.150.2.6 10.150.2.1 21
224.0.0.0 240.0.0.0 Auf Verbindung 127.0.0.1 306
224.0.0.0 240.0.0.0 Auf Verbindung 10.150.1.1 266
224.0.0.0 240.0.0.0 Auf Verbindung 10.150.2.1 276
255.255.255.255 255.255.255.255 Auf Verbindung 127.0.0.1 306
255.255.255.255 255.255.255.255 Auf Verbindung 10.150.1.1 266
255.255.255.255 255.255.255.255 Auf Verbindung 10.150.2.1 276
===========================================================================
Ständige Routen:
Netzwerkadresse Netzmaske Gatewayadresse Metrik
0.0.0.0 0.0.0.0 10.150.1.254 Standard
192.168.1.0 255.255.255.0 10.150.2.6 1
===========================================================================
偏僻的
===========================================================================
Schnittstellenliste
20...00 ff ce e4 56 f0 ......TAP-Windows Adapter V9 #2
19...00 ff 0e 36 39 0b ......TAP-Windows Adapter V9
18...00 0c 29 74 75 c7 ......Intel(R) PRO/1000 MT-Netzwerkverbindung #2
1...........................Software Loopback Interface 1
12...00 00 00 00 00 00 00 e0 Microsoft-ISATAP-Adapter
17...00 00 00 00 00 00 00 e0 Microsoft-ISATAP-Adapter #2
21...00 00 00 00 00 00 00 e0 Microsoft-ISATAP-Adapter #3
===========================================================================
IPv4-Routentabelle
===========================================================================
Aktive Routen:
Netzwerkziel Netzwerkmaske Gateway Schnittstelle Metrik
0.0.0.0 0.0.0.0 192.168.1.254 192.168.1.251 266
10.150.1.0 255.255.255.0 10.150.2.5 10.150.2.6 21
10.150.2.1 255.255.255.255 10.150.2.5 10.150.2.6 21
10.150.2.4 255.255.255.252 Auf Verbindung 10.150.2.6 276
10.150.2.6 255.255.255.255 Auf Verbindung 10.150.2.6 276
10.150.2.7 255.255.255.255 Auf Verbindung 10.150.2.6 276
127.0.0.0 255.0.0.0 Auf Verbindung 127.0.0.1 306
127.0.0.1 255.255.255.255 Auf Verbindung 127.0.0.1 306
127.255.255.255 255.255.255.255 Auf Verbindung 127.0.0.1 306
192.168.1.0 255.255.255.0 Auf Verbindung 192.168.1.251 266
192.168.1.251 255.255.255.255 Auf Verbindung 192.168.1.251 266
192.168.1.255 255.255.255.255 Auf Verbindung 192.168.1.251 266
224.0.0.0 240.0.0.0 Auf Verbindung 127.0.0.1 306
224.0.0.0 240.0.0.0 Auf Verbindung 192.168.1.251 266
224.0.0.0 240.0.0.0 Auf Verbindung 10.150.2.6 276
255.255.255.255 255.255.255.255 Auf Verbindung 127.0.0.1 306
255.255.255.255 255.255.255.255 Auf Verbindung 192.168.1.251 266
255.255.255.255 255.255.255.255 Auf Verbindung 10.150.2.6 276
===========================================================================
Ständige Routen:
Netzwerkadresse Netzmaske Gatewayadresse Metrik
0.0.0.0 0.0.0.0 192.168.1.254 Standard
===========================================================================
答案1
您需要做的是设置站点到站点 VPN 隧道。目前,SERVER 只能访问两个网络:其本地网络和 VPN 网络。这样两个网络上的设备就可以互相看到。
要设置站点到站点 VPN 隧道,您需要执行以下操作:
生成证书。
配置路由器。为了使两个网络能够相互通信,每个路由器都需要为此站点到站点隧道进行配置。由于不知道您在两端使用的确切路由器,我只能做出一般性陈述,无法验证您的路由器是否真的能够做到这一点。
假设您的路由器有一个 GUI,并且该界面上有一个用于 VPN 的菜单,您需要为 VPN 设置网络详细信息:
- 用于 VPN 隧道的专用网络。
- 另一端路由器的全局/公共 IP 地址。如果任一端都有动态分配,则只要地址发生变化,您最终就会更改此设置。
- 允许每个路由器防火墙中的 VPN 流量。
- 将证书复制到路由器。
如果您的路由器没有 GUI,但使用 CLI,并且支持站点到站点 VPN,那么您将需要为 VPN 隧道配置服务器配置文件。您还需要通过 SSH/FTP/TFTP 上传证书和配置文件。您可能还必须安装 OpenVPN,假设路由器上尚未安装它(或等效物)。
以下是供您入门的示例配置文件:
float
dev tun
proto udp
remote [public address of other end here]
resolv-retry infinite
nobind
auth-user-pass /path/to/user/credentials/here/cred.conf
#user nobody
#group nobody
persist-key
persist-tun
ca /path/to/server/cert/here/ca.crt
cert /path/to/user/cert/here/user.crt
key /path/to/user/key/here/user.key
remote-cert-tls server
# If a tls-auth key is used on the server
# then every client must also have the key.
;tls-auth ta.key 1
cipher AES-128-CBC
# Enable compression on the VPN link.
# Don't enable this unless it is also
# enabled in the server config file.
comp-lzo
# Set log file verbosity.
verb 3
# Silence repeating messages
;mute 20
-----BEGIN CERTIFICATE-----
[Long certificate hash here. Will look like gibberish.]
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
[Long certificate hash here. Will look like gibberish.]
-----END CERTIFICATE-----
-----BEGIN PRIVATE KEY-----
[Long key hash here. Will look like gibberish.]
-----END PRIVATE KEY-----
此后,您应该有一个连接两个网络的 VPN 隧道,允许两端自由通信。
如果您发现您的一个或两个路由器都不允许 VPN 配置,则需要根据需要更换它们。我个人喜欢 Ubiquiti Edge Lite Router 3,但您可能会找到另一款更舒适的路由器。
希望对您有所帮助。如果您能提供更多有关路由器的信息,我可以更深入地介绍配置。
答案2
我现在已经解决了这个问题,但是我安装了一台装有 DD-WRT 的路由器作为服务器,而不是使用 Windows PC。这样我就消除了 Windows PC 上 RRAS 可能出现的问题。
基于路由器的设置也存在问题,但是这些都解决了。不过,作为参考,以下是我最终得到的配置:
OpenVPN 服务器配置文件的重要部分:
push "route 10.150.1.0 255.255.255.0"
server 10.150.2.0 255.255.255.0
route 192.168.1.0 255.255.255.0
client-config-dir ccd
client-to-client
ccd 文件(ccd/callcenter,因为“callcenter”是客户端密钥的名称):
iroute 192.168.1.0 255.255.255.0