我有一个有点棘手的问题需要解决。
我们在两栋楼之间建立了无线连接。其中一栋楼有一个 mikrotik,下面有一些 VLAN。一个 VLAN 中的一些机器需要使用 openvpn 连接到远程私有局域网。我放了一个 TP-Link WR1043ND(这些机器连接到它)和带有 ebtables 的 openwrt,以防万一我需要它。
我已经将 openwrt 配置为所有端口都属于同一个 vlan。我的想法是让事情尽可能透明。
它有一座桥如下:
usr/sbin/brctl-full show br-lan
bridge name bridge id STP enabled interfaces
br-lan 8000.f8d111565716 no eth0.1
eth0.2
我还添加了一个 ebtables 规则:
ebtables -t broute -A BROUTING -p ipv4 -j DROP
因此“桥接”只有一个 IP 地址。我已经安装了 openvpn,并尝试启动隧道,但仍然无法正常工作。
当然,有人会说为什么不在 mikrotik 上使用 vpn,原因有几个,第一个原因是我对 mikrotik 经验不多,而且我希望手边有 vpn :)
问题是 openvpn 无法正常工作,因为它抱怨我在服务器端只有一个 IP 地址。因此,我设置了另一个 IP 地址的别名接口,但也无法正常工作:
: Rejected connection attempt from IP-Client-Side:37801 due to --remote setting
有没有什么办法可以让它工作?
答案1
最后我找到了一种方法来解决这个问题
启动 openvpn 后,我不得不手动添加一些规则。我不知道为什么,但现在它可以正常工作了 :)
供参考:
/sbin/ip 链接设置 dev tun0 up mtu 1500
/sbin/ip addr 添加 dev tun0 本地 192.168.200.1 对等体 192.168.142.1
/sbin/ip route 通过 192.168.142.1 添加 192.168.142.0/24