Назад | Перейти на главную страницу

Как я могу перенаправить сетевые пакеты на интерфейс в Mikrotik?

Я хочу перенаправить все пакеты TCP на один интерфейс (выделенное подключение к Интернету только для загрузки) и все пакеты UDP на другой (выделенное подключение к Интернету только для потоковой передачи и видеоигр). Как я могу это сделать? Мой роутер - Mikrotik RB750.

Если вы хотите разделить входящий сетевой трафик между двумя локальными подключениями, предполагая, что каждый из ваших интерфейсов имеет другой адрес, вы можете сделать это с помощью dst-nat:

/ip firewall nat
add in-interface=[incoming interface] action=dst-nat protocol=tcp dst-address=[TCP address]
add in-interface=[incoming interface] action=dst-nat protocol=udp dst-address=[UDP address]

В случае, если вы имели в виду разделить исходящий трафик между двумя внешними соединениями, и каждое из соединений имеет другой адрес, вы можете сделать это следующим образом:

/ip firewall nat
add chain=srcnat protocol=tcp action=src-nat to-address=[TCP connection address] out-interface=[TCP interface]
add chain=srcnat protocol=udp action=src-nat to-address=[UDP connection address] out-interface=[UDP interface]

Хотя оба других ответа верны, я должен указать, что это почти наверняка не сработает. Игры и потоковая передача используют TCP, а также UDP, и, вероятно, не будут работать, если он получает пакеты TCP с одного адреса и UDP с другого. Я бы посоветовал определить, какие хосты являются игровыми и потоковыми, и определить отдельные правила src-nat для каждого.

Лучший вопрос: почему? Какая польза от этой модели?

Ты можешь использовать /ip route rule и routing-mark в /ip firewall mangle для принудительной маршрутизации пути. Он работает примерно так же, как ip rule под Linux.

  1. Пометьте одну группу пакетов, например. марка маршрута: R1
  2. Отметьте другую группу пакетов, например. марка маршрута: R2
  3. Добавьте шлюз по умолчанию для любого из них без установленной метки маршрутизации.
  4. Добавьте второй шлюз для второй группы с установленным параметром routing-mark.
  5. Добавить правило под /ip route rule это заставит использовать таблицу маршрутизации R2 или R1 для выбранной группы пакетов.

Вот мой пример конфигурации, используемой для маршрутизации пакетов, адресованных от маршрутизатора через один шлюз, и пересылаемых через другой:

[lapsio@CCR1009SWAG] > /ip firewall mangle export 
/ip firewall mangle
add action=jump chain=prerouting jump-target=check-standard
add action=accept chain=check-standard in-interface=ether1-gateway #<- all incoming packets need to use "main" table in order to "see" local links
add action=accept chain=check-standard src-address-list=networkSERVICE #<-this is just example match
...
#some matching criteria of packets to NOT mark here with action=accept
...
add action=jump chain=check-standard jump-target=mark-standard
add action=mark-routing chain=mark-standard new-routing-mark=standard passthrough=no

[lapsio@CCR1009SWAG] > /ip route export 
/ip route
add distance=1 gateway=192.168.0.6 routing-mark=standard
add distance=1 gateway=192.168.10.1

/ip route rule
add routing-mark=standard src-address=0.0.0.0/0 table=standard

Здесь я использовал только эквивалент «R2», который является «стандартным» - пакеты пересылаются через .0.6. Пакеты без пометки будут пересылаться через .10.1.