Hi,
I am trying to force a machine (192.168.20.9) traffic through a ProtonVPN wireguard interface configured on my RB5009.
I created a Wireguard interface on the router, added the router as peer, gave it an address.
Also added the WG interface to the WAN list (to use the masquerade NAT rule), created a routing table “proton” and a route for everything to go through the WG interface.
I added a routing rule to have the machine lookup-only-in-table proton.
The machine is configured to use Proton DNS (10.2.0.1) but DNS resolution fails.
I added some logs on a dummy rule in the firewall and even allowed all forward traffic for this ip but here is what I see when I try to curl google.com.
Log everything forward: in:vlan20-core out:wg-protonvpn, connection-state:new src-mac xx:xx:xx:xx:xx:xx, proto UDP, 192.168.20.9:37505->10.2.0.1:53, len 56
Accept everything forward forwa: in:vlan20-core out:wg-protonvpn, connection-state:new src-mac xx:xx:xx:xx:xx:xx8, proto UDP, 192.168.20.9:37505->10.2.0.1:53, len 56
Log everything forward: in:vlan20-core out:wg-protonvpn, connection-state:new,snat src-mac xx:xx:xx:xx:xx:xx, proto UDP, 192.168.20.9:37505->10.2.0.1:53, NAT (192.168.20.9:37505->10.2.0.2:37505)->10.2.0.1:53, len 56
Accept everything forward forwa: in:vlan20-core out:wg-protonvpn, connection-state:new,snat src-mac xx:xx:xx:xx:xx:xx, proto UDP, 192.168.20.9:37505->10.2.0.1:53, NAT (192.168.20.9:37505->10.2.0.2:37505)->10.2.0.1:53, len 56
Not sure if that matters but the machine is on a Proxmox host which has a single NIC (ether6) configured as a vlan aware bridge, then I can give guests a virtual NIC with different VLAN ids and it seems to be working fine so far.
The proxmox host network config :
iface eno1 inet manual
post-up /usr/sbin/ethtool -s eno1 wol g
#NUC physical interface
auto vmbr0
iface vmbr0 inet manual
bridge-ports eno1
bridge-stp off
bridge-fd 0
bridge-vlan-aware yes
bridge-vids 2-4094
#VLAN aware bridge
auto vmbr0.10
iface vmbr0.10 inet static
address 192.168.10.10/24
gateway 192.168.10.1
#Management VLAN
And the machine network config:
root@machine:~# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host noprefixroute
valid_lft forever preferred_lft forever
2: eth0@if335: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
link/ether xx:xx:xx:xx:xx:xx brd ff:ff:ff:ff:ff:ff link-netnsid 0
inet 192.168.20.9/24 brd 192.168.20.255 scope global dynamic eth0
valid_lft 38619sec preferred_lft 38619sec
inet6 fe80::xxxx:xxxx:xxxx:xxxx/64 scope link
valid_lft forever preferred_lft forever
root@machine:~# ip route
default via 192.168.20.1 dev eth0
192.168.20.0/24 dev eth0 proto kernel scope link src 192.168.20.9
root@machine:~# cat /etc/resolv.conf
nameserver 10.2.0.1
You can find my router config attached to this post.
Thanks for your help
conf-2024-06-22.rsc (23.2 KB)