Hi,
Thanks for the info! I was under impression that if I do not explicitly state the zones, it will default to all zones like in other places... my bad, this is the only thing I did not tried. Using reflection_zone explicitly worked for LANs, but not if I also list the VPN zones, where I get messages like:
Section @redirect[0] (HTTP) internal rewrite IP cannot be determined, disabling reflection).
So far this is annoying but fine, if I need VPN, it means I am outside the network anyway, so WAN port maps should work for the purpose. No need to do more than that.
Regarding OpenVPN, here is the full config (I blanked my public IPs, but x and y are my 2 WAN IPs, ideally I would not hardcode the IP but the interface name pppoe-wan1). The only real difference between them is the subnet and gateway/DNS server IP as well as the routes to the other VPN subnet:
config openvpn 'OpenVPNServerWAN1'
option enabled '1'
option dev 'tun0'
option proto 'udp'
option port '1194'
list local 'x.x.x.x'
option topology 'subnet'
option client_to_client '1'
option server '192.168.4.0 255.255.255.0'
list push 'route 192.168.1.0 255.255.255.0'
list push 'route 192.168.2.0 255.255.255.0'
list push 'route 192.168.5.0 255.255.255.0'
list push 'route 192.168.11.0 255.255.255.0'
list push 'route 192.168.12.0 255.255.255.0'
list push 'route 192.168.21.0 255.255.255.0'
list push 'route 192.168.100.0 255.255.255.0'
list push 'route 192.168.254.0 255.255.255.0'
list push 'dhcp-option DNS 192.168.4.1'
option ca '/etc/openvpn/ca.crt'
option cert '/etc/openvpn/server.crt'
option key '/etc/openvpn/server.key'
option dh '/etc/openvpn/dh.pem'
option persist_key '1'
option persist_tun '1'
option keepalive '60 3600'
option explicit_exit_notify '1'
option mssfix '1420'
option verb '3'
config openvpn 'OpenVPNServerWAN2'
option enabled '1'
option dev 'tun1'
option proto 'udp'
option port '1194'
list local 'y.y.y.y'
option topology 'subnet'
option client_to_client '1'
option server '192.168.5.0 255.255.255.0'
list push 'route 192.168.1.0 255.255.255.0'
list push 'route 192.168.2.0 255.255.255.0'
list push 'route 192.168.4.0 255.255.255.0'
list push 'route 192.168.11.0 255.255.255.0'
list push 'route 192.168.12.0 255.255.255.0'
list push 'route 192.168.21.0 255.255.255.0'
list push 'route 192.168.100.0 255.255.255.0'
list push 'route 192.168.254.0 255.255.255.0'
list push 'dhcp-option DNS 192.168.5.1'
option ca '/etc/openvpn/ca.crt'
option cert '/etc/openvpn/server.crt'
option key '/etc/openvpn/server.key'
option dh '/etc/openvpn/dh.pem'
option persist_key '1'
option persist_tun '1'
option keepalive '60 3600'
option explicit_exit_notify '1'
option mssfix '1420'
option verb '3'
In network I have them defined as:
config interface 'VPN1'
option proto 'none'
option device 'tun0'
config interface 'VPN2'
option proto 'none'
option device 'tun1'
and in firewall they are assigned to their zones:
config zone
option name 'VPN_WAN1'
option input 'ACCEPT'
option output 'ACCEPT'
option forward 'REJECT'
list network 'VPN1'
config zone
option name 'VPN_WAN2'
option input 'ACCEPT'
option output 'ACCEPT'
option forward 'REJECT'
list network 'VPN2'
Everything else regarding those 2 firewall zones (routing, rules) is identical, e.g.:
config forwarding
option src 'VPN_WAN1'
option dest 'LAN_WIRED'
config forwarding
option src 'VPN_WAN2'
option dest 'LAN_WIRED'
Also in mwan3 I pined the UDP traffic to their single WAN policies as with for other services.
Please let me know if anything else is needed to troubleshoot. As a side note, this issue is kinda "critical" to me as if WAN1 is down for some reason, I have no way to remote in via WAN2...