Возможно глупый вопрос, но просидев весь вечер не нашел ответа, в целом материалов по этой теме не так много
И так задача - сделать последовательное подключение WG1 к WG2, грубо говоря multihop
своими силами удалось сделать определенную настройку, при которой траффик ВРОДЕ идет последовательно, но стоит WG2 не запустится - сразу идет fallback на первый. Очень ненадежно в общем
vpn1 условно называется FI, vpn2 - NO
firewallconfig defaults
option input 'REJECT'
option output 'ACCEPT'
option forward 'REJECT'
option synflood_protect '1'
config zone
option name 'lan'
option input 'ACCEPT'
option output 'ACCEPT'
option forward 'ACCEPT'
list network 'lan'
option masq '1'
config zone
option name 'wan'
option input 'REJECT'
option output 'ACCEPT'
option forward 'REJECT'
option masq '1'
option mtu_fix '1'
list network 'wan'
config forwarding
option src 'lan'
option dest 'wan'
config rule
option name 'Allow-DHCP-Renew'
option src 'wan'
option proto 'udp'
option dest_port '68'
option target 'ACCEPT'
option family 'ipv4'
config rule
option name 'Allow-Ping'
option src 'wan'
option proto 'icmp'
option icmp_type 'echo-request'
option family 'ipv4'
option target 'ACCEPT'
config rule
option name 'Allow-IGMP'
option src 'wan'
option proto 'igmp'
option family 'ipv4'
option target 'ACCEPT'
config rule
option name 'Allow-DHCPv6'
option src 'wan'
option proto 'udp'
option dest_port '546'
option family 'ipv6'
option target 'ACCEPT'
config rule
option name 'Allow-MLD'
option src 'wan'
option proto 'icmp'
option src_ip 'fe80::/10'
list icmp_type '130/0'
list icmp_type '131/0'
list icmp_type '132/0'
list icmp_type '143/0'
option family 'ipv6'
option target 'ACCEPT'
config rule
option name 'Allow-ICMPv6-Input'
option src 'wan'
option proto 'icmp'
list icmp_type 'echo-request'
list icmp_type 'echo-reply'
list icmp_type 'destination-unreachable'
list icmp_type 'packet-too-big'
list icmp_type 'time-exceeded'
list icmp_type 'bad-header'
list icmp_type 'unknown-header-type'
list icmp_type 'router-solicitation'
list icmp_type 'neighbour-solicitation'
list icmp_type 'router-advertisement'
list icmp_type 'neighbour-advertisement'
option limit '1000/sec'
option family 'ipv6'
option target 'ACCEPT'
config rule
option name 'Allow-ICMPv6-Forward'
option src 'wan'
option dest '*'
option proto 'icmp'
list icmp_type 'echo-request'
list icmp_type 'echo-reply'
list icmp_type 'destination-unreachable'
list icmp_type 'packet-too-big'
list icmp_type 'time-exceeded'
list icmp_type 'bad-header'
list icmp_type 'unknown-header-type'
option limit '1000/sec'
option family 'ipv6'
option target 'ACCEPT'
config rule
option name 'Allow-IPSec-ESP'
option src 'wan'
option dest 'lan'
option proto 'esp'
option target 'ACCEPT'
config rule
option name 'Allow-ISAKMP'
option src 'wan'
option dest 'lan'
option dest_port '500'
option proto 'udp'
option target 'ACCEPT'
config zone
option name 'wgzone'
option input 'REJECT'
option output 'ACCEPT'
option forward 'REJECT'
option masq '1'
option mtu_fix '1'
option network 'NO'
config forwarding
option src 'lan'
option dest 'wgzone'
config forwarding
option src 'lan'
option dest 'FI'
config zone
option name 'FI'
option network 'FI'
option input 'ACCEPT'
option output 'ACCEPT'
option forward 'ACCEPT'
option masq '1'
option mtu_fix '1'
config include 'pbr'
option fw4_compatible '1'
option type 'script'
option path '/usr/share/pbr/firewall.include'
часть network
config route
option interface 'FI'
option target '0.0.0.0/0'
option metric '10'
config route
option interface 'NO'
option target '0.0.0.0/0'
option metric '20'
ip route show
default dev NO proto static scope link
default dev FI proto static scope link metric 10
default dev NO proto static scope link metric 20
(VPN2IP) dev FI proto static scope link
(VPN1IP) via 192.168.0.1 dev eth1 proto static
192.168.0.0/24 dev eth1 proto kernel scope link src 192.168.0.10
192.168.1.0/24 dev br-lan proto kernel scope link src 192.168.1.1
Как это все сделать правильно, чтобы выход строго был через NO? Туда же killswitch
Возможно, прямо в конфиге wireguard сделать такое подключение? Через 2 [Peer]
Искал какие либо скрипты для упрощения данной задумки на openwrt - не нашел