Задача. Настройка двоих независимых провайдеров интернета на две независимых сети.
После всех нижеперечисленных действий нет интернета в обеих сетях, подозреваю что проблема в DNSтак-как Chrome пишет именно об этом.
Ping 8.8.8.8 в обеих сетей проходит (в командной строке через ПК)
https://prnt.sc/mj4je7
Моя последовательность действий
1. Сделал сброс настроек роутера (без стандартной конфигурации и создании резервной копии)
2. Создал два бриджа и объединил в них порты
3. Сделал настройку статического IP для обеих бриджей
https://prnt.sc/mj4xy7
4. Произвел настройку интернета в IP -> DHCP Client
https://prnt.sc/mj4xiv
5. Создал две новых таблицы маршрутизации с дефолтными маршрутами через каждый из каналов:
Код: Выделить всё
/ip route
add routing-mark=WAN-V gateway=192.168.77.1
add routing-mark=WAN-E gateway=192.168.88.1
Код: Выделить всё
/ip firewall mangle
add chain=prerouting in-interface=bridge1-NET-V dst-address-type=!local action=mark-routing new-routing-mark=WAN-V
add chain=prerouting in-interface=bridge2-NET-E dst-address-type=!local action=mark-routing new-routing-mark=WAN-E
Код: Выделить всё
:local rmark "WAN-V"
:local count [ /ip route print count-only where dst-address=0.0.0.0/0 routing-mark=$rmark ]
:if ($bound=1) do={
:local iface $interface
:local gw [ /ip dhcp-client get [ find interface=$"iface" ] gateway ]
:set gw "$gw%$iface"
:if ($count=0) do={
/ip route add gateway=$gw routing-mark=$rmark
} else={
if ($rmark="main") do={
/ip route set [ find dst-address=0.0.0.0/0 !routing-mark gateway!=$gw ] gateway=$gw
} else={
/ip route set [ find dst-address=0.0.0.0/0 routing-mark=$rmark gateway!=$gw ] gateway=$gw
}
}
} else={
:if ($rmark="main") do={
/ip route remove [ find dst-address=0.0.0.0/0 !routing-mark gateway~"%$interface\$" ]
} else={
/ip route remove [ find dst-address=0.0.0.0/0 routing-mark=$rmark type=unicast ]
}
}
Код: Выделить всё
:local rmark "WAN-E"
:local count [ /ip route print count-only where dst-address=0.0.0.0/0 routing-mark=$rmark ]
:if ($bound=1) do={
:local iface $interface
:local gw [ /ip dhcp-client get [ find interface=$"iface" ] gateway ]
:set gw "$gw%$iface"
:if ($count=0) do={
/ip route add gateway=$gw routing-mark=$rmark
} else={
if ($rmark="main") do={
/ip route set [ find dst-address=0.0.0.0/0 !routing-mark gateway!=$gw ] gateway=$gw
} else={
/ip route set [ find dst-address=0.0.0.0/0 routing-mark=$rmark gateway!=$gw ] gateway=$gw
}
}
} else={
:if ($rmark="main") do={
/ip route remove [ find dst-address=0.0.0.0/0 !routing-mark gateway~"%$interface\$" ]
} else={
/ip route remove [ find dst-address=0.0.0.0/0 routing-mark=$rmark type=unicast ]
}
}
8. Добавил правило
Код: Выделить всё
/ip route
add type=unreachable routing-mark=WAN-V distance=250
add type=unreachable routing-mark=WAN-E distance=250
https://prnt.sc/mj4ynz
10. Настроил dhcp сервера для обоих провайдеров
https://prnt.sc/mj4yt3
11. Настроил firewall nat
Код: Выделить всё
/ip firewall nat
add action=masquerade chain=srcnat comment=WAN-V out-interface=ether1-WAN-V
add action=masquerade chain=srcnat comment=WAN-E out-interface=ether9-WAN-E
Код: Выделить всё
/ip firewall filter
add action=accept chain=forward connection-state=established,related
add action=drop chain=input comment="Drop access to DNS from WAN" dst-port=53 \
in-interface=ether1-WAN-V protocol=tcp
add action=drop chain=input comment="Drop access to DNS from WAN" dst-port=53 \
in-interface=ether9-WAN-E protocol=tcp
add action=drop chain=input dst-port=53 in-interface=ether1-WAN-V protocol=\
udp
add action=drop chain=input dst-port=53 in-interface=ether9-WAN-E protocol=\
udp
add action=accept chain=input comment="Allow PING (ICMP)" protocol=icmp
add action=accept chain=input comment="defconf: accept established,related" \
connection-state=established,related
add action=drop chain=input comment="defconf: drop all from WAN" \
in-interface=ether1-WAN-V
add action=drop chain=input comment="defconf: drop all from WAN" \
in-interface=ether9-WAN-E
add action=fasttrack-connection chain=forward comment="defconf: fasttrack" \
connection-state=established,related routing-mark=main
add action=accept chain=forward comment="defconf: accept established,related" \
connection-state=established,related
add action=drop chain=forward comment="defconf: drop invalid" \
connection-state=invalid
add action=drop chain=forward comment=\
"defconf: drop all from WAN not DSTNATed" connection-nat-state=!dstnat \
connection-state=new in-interface=ether1-WAN-V
add action=drop chain=forward comment=\
"defconf: drop all from WAN not DSTNATed" connection-nat-state=!dstnat \
connection-state=new in-interface=ether9-WAN-E
Что я сделал не так, что нет доступа к интернет.