OpenVPN在两个远程站点上具有相同的子网

在使用TUN设备时,我遇到了OpenVPN集中器的问题。 情况是这样的:

OpenVPN Server VPN Subnet: 10.10.10.1/24 PC1 OpenVPN Client VPN IP: 10.10.10.50 PC Local subnet/IP: 192.168.20.100 PC2 OpenVPN Client VPN IP: 10.10.10.60 PC Local subnet/IP: 192.168.30.100 RemoteSite1 VPN IP: 10.10.10.70 Local Subnet: 192.168.80.0/24 RemoteSite2 VPN IP: 10.10.10.80 Local Subnet: 192.168.80.0/24 

PC1连接到RemoteSite1,PC2连接到RemoteSite2,但在使用popup式连接时,其中一台PC到达错误的远程站点。 使用TAP设备时,此设置可以很好地工作。 为了避免OpenVPN服务器发生networking冲突,远程站点没有路由规则,每台PC都有一个特定的查找路由表:

 root@openvpn~ # ip rule sh 0: from all lookup local 1: from 10.10.10.50 lookup 1024 1: from 10.10.10.60 lookup 1034 10: from all to 10.10.10.0/24 lookup main 

并在每个表下:root @ openvpn〜#ip route show table 1024 192.168.80.0/24 via 10.10.10.70 dev tap0

 root@openvpn~ # ip route show table 1034 192.168.80.0/24 via 10.10.10.80 dev tap0 

怎样才能达到相同的设置,但与TUN和iroute?

我不认为你可以这样做。

TUN路由(OSI第3层),这样就不可能为单个子网有两条相同的路由(至less需要某种度量差异)。 TAP在OSI第二层运行,在这里可以进行MAC查找,这就是设置工作的方式。

对于TUN在这种情况下工作,你最好的select可能是把你的/ 24分成两个/ 25个networking,并把一边分配到每个地点。