Есть два провайдера. 1 - проводной, с получением адреса по ДХЦП, подсеть 172.16.128.0/17, на интерфейсе ether1 2 - биллайновский роутер, тоже раздает адрес микротику по ДХЦП из сети 192.168.0.0/24, на интерфейсе lte1 DHCP клиент: /ip dhcp-client add add-default-route=no comment="[INET1]" dhcp-options=hostname,clientid disabled=no interface=ether1 use-peer-dns=no use-peer-ntp=no add add-default-route=no comment="[LTE]" dhcp-options=hostname,clientid disabled=no interface=lte1 use-peer-dns=no use-peer-ntp=no Маршруты прописаны руками (провайдеры переключаются через distance): /ip route add check-gateway=arp distance=10 gateway=172.16.178.1 add check-gateway=arp distance=21 gateway=192.168.0.1 Настроен мангл, чтобы пакеты пришедшие на провайдера 1, уходили обратно через провайдера 1. /ip firewall mangle add action=mark-connection chain=input comment="[INET1_MANGLE]" in-interface=ether1 new-connection-mark="ISP1 -> Input" passthrough=no add action=mark-routing chain=output connection-mark="ISP1 -> Input" new-routing-mark=isp1 passthrough=no add action=mark-connection chain=input comment="[INET2_MANGLE]" in-interface=lte1 new-connection-mark="ISP 2 -> Input" passthrough=no add action=mark-routing chain=output connection-mark="ISP 2 -> Input" new-routing-mark=isp2 passthrough=no Проблема в том, что если активен провайдер 1, команда ping ya.ru interface=lte1 (на роутере) не отрабатывает, т.е. пакеты через провайдера 2 просто не могут идти. И наоборот если активен провайдер 2, команда ping ya.ru interface=ether1 не отрабатывает, пакеты через провайдера 1 идти не могут. Прошивки пробовал 6.31, 6.26. НУЖНО чтобы в независимости от distance на внешний запрос через ether1, ответ уходил через ether1. Вообще чтобы я мог отправлять пакеты через любого провайдера, в не зависимости от того какой активен. Я мог-бы добавить оба шлюза в один маршрут, но тогда не смогу их переключать... Пните в нужном направлении. Какой-нибуть мануал может почитать?
Попробуйте конструкцию вида gateway=1.1.1.1%interface_name Кто на Output будет новые пакеты маркировать ? add action=mark-routing chain=output src-address=172.16.0.0/12 new-routing-mark=isp2 passthrough=no И где маршруты с марками ? Вам надо оставить маршруты как без маркировок, так и с ними.
Чем плох: add action=mark-routing chain=output connection-mark="ISP 2 -> Input" new-routing-mark=isp2 passthrough=no Ок. Тогда обновить на более старую версию и добавить маршруты по умолчанию без маркировок. По результату отпишусь.
Вы пингуете с роутера внешний хост. Откуда у вас возьмется connection mark ? Пакета ведь на вход не пришло. Смотрим где у нас prerouting, где input и где output И откуда у вас на Local Process Out возьмется маркировка:
Илья, здравствуйте, напомните пожалуйста, что значит эта конструкция? На курсах Вы тоже её упоминали, но из головы вылетело совершенно... В wiki копал, тоже не нашел.
Идти на шлюз 1.1.1.1 через интефейс interface_name. Нужна когда 1. У вас шлюз доступен через несколько интересов 2. Когда вам "повезло" и два разных провайдера дали один и тот же шлюз.