Коммутация в Mikrotik — Bridge и Master-port
В RouterOS есть два способа коммутации портов.
Коммутация портов MikroTik через Switch (Master Port)
В этом случае коммутация производится через чип свитча, в обход центрального процессора маршрутизатора. Обычно в SOHO маршрутизаторах Mikrotik используется одна свитч-группа на 5 портов, если портов больше — две свитч-группы. В устройствах Cloud Router Switch чипы коммутации на больше портов и имеют больше возможностей, подробней на них мы останавливаться в этой статье не будем.
Настроить коммутацию можно в разделе General каждого порта, просто выбрав в пункте Master Port. Это главный порт, через который будет происходить коммутация. Коммутация позволяет достичь проводной скорости обмена данными между портами одной группы, как между портами в обычном Ethernet-коммутаторе. Основной (master) порт будет являться портом, через который RouterOS будет сообщаться со всеми остальными портами данной группы. Интерфейсы, для которых задан master-порт, становятся неактивны – не учитывается поступивший и отправленный трафик. Фактически, как будто мы объединили порты физическим, «тупым» коммутатором (свитчем). В роутерах Mikrotik применяются следующие чипы коммутации:
- Atheros 8316 представлен в платах RB493G (ether1+ether6-ether9, ether2-ether5), RB1200 (ether1-ether5), RB450G (все порты (ether1 опционально)),RB435G (все порты (ether1 опционально)), RB750G, и в RB1100 (ether1-ether5, ether6-ether10).
- Atheros 8327 представлен в платах серии RB2011 (ether1-ether5+sfp1), RB750GL, RB751G-2HnD, а также в RB1100AH и RB1100AHx2 (ether1-ether5, ether6-ether10).
- Atheros8227 представлен в платах серии RB2011 (ether6-ether10).
- Atheros 7240 представлен в RB750 (ether2-ether5), RB750UP (ether2-ether5), RB751U-2HnD (ether2-ether5) и RB951-2n.
- ICPlus 175D представлен в более новых ревизиях RB450 (ether2-ether5) и в платах серии RB433 (ether2-ether3).
- ICPlus 175C представлен в некоторых RB450 (ether2-ether5) и в некоторых платах серии RB433 (ether2-ether3).
- ICPlus 178C представлен в платах серии RB493 (ether2-ether9) и в RB816.
Возможности чипов коммутации:
Возможности | Atheros 8316 | Atheros 8327 | Atheros 7240 | ICPlus 175D | Другие |
---|---|---|---|---|---|
Коммутация портов | да | да | да | да | да |
Зеркалирование портов | да | да | да | да | нет |
Таблица MAC-адресов | 2000 записей | 2000 записей | 2000 записей | нет | нет |
Vlan-таблица | 4096 записей | 4096 записей | 16 записей | нет | нет |
Таблица правил | 32 правила | 92 правила | нет | нет | нет |
* Порт ether1 на RB450G имеет особенность, которая позволяет ему быть исключённым/добавленным из/в коммутируемой(ую) группы(у) по умолчанию. По умолчанию порт ether1 будет включён в группу коммутации. Данная конфигурация может быть изменена с помощью команды
«/interface ethernet switch set switch1 switch-all-ports=no».
switch-all-ports=yes/no:
«yes» означает, что порт ether1 является портом коммутатора и поддерживает создание групп коммутации и все остальные расширенные возможности чипа Atheros8316, включая расширенную статистику (/interface ethernet print stats).
«no» означает, что порт ether1 не является частью коммутатора, что, фактически, делает его самостоятельным Ethernet-портом – это способ увеличения пропускной способности между ним и другими портами в режимах сетевого моста и маршрутизации, но в то же время исключает возможность коммутации на этом порту. Коммутация через Switch является самой быстрой и производительной в маршрутизаторе, в тоже время имеет наименьшее количество возможностей. При этом:
- master Port можно назначить ТОЛЬКО внутри каждой группы;
- master Port может быть только ОДИН внутри switch-чипа;
- «Master» и «Slave» для чипа коммутации считаются равными;
- одно различие между «master» и «slave» — ТОЛЬКО главный порт обращается к CPU напрямую, ему назначается IP, он объединяется в Bridge и т.д.
- Две switch-group объединяются уже через bridge. В таком bridge будет только два master-port, ну может еще wifi, если такой есть (В этом случае трафик между двумя switch-group будет проходить через процессор.)
Итого, можно выделить несколько особенностей такого метода:
- каждый новый RouterBOARD с несколько Ethernet интерфейсам оснащен чипом Switch;
- при коммутации не используются ресурсы процессора;
- с ROS v.6 поддерживается VLAN Trunking (разруливать VLAN-ны можно без потери производительности основного ЦП).
Коммутация в MikroTik через Bridge-interface
Порты объединяются не напрямую, а программно, используя ресурсы центрального процессора маршрутизатора. К портам могут быть применены фильтры брандмауэра. Такое объединение так-же влияет на прохождение пакетов по упрощенной схеме (Fastpath). Если взять в пример 2011-серию маршрутизаторов, то ether1-ether5 объеденены в switch1 (Atheros 8327) а ether6-ether10 в switch2 (Atheros 8227), вы можете использовать только Bridge для объединения их в одно целое. Особенность данного метода:
- можно маршрутизировать и фильтровать пакеты между портами;
- возрастает нагрузка на процессор;
- можно объединять любые порты маршрутизатора;
- Wi-Fi интерфейс коммутируется ТОЛЬКО через Bridge;
- после объединения портов в Bridge IP-адрес назначается на «интерфейс Bridge», в классическом firewall правила применяем ко всем виртуальному интерфейсу. Правила применимые к портам прописываем в Bridge — NAT, Bridge — Filters;
- VLAN проходит через ЦП устройства Mikrotik.
Коммутация позволяет достичь проводной скорости (wire speed) обмена данными между портами одной группы, как между портами в обычном Ethernet-коммутаторе.
Пока пакет не достиг cpu-порта, его обработка полностью осуществляется логикой коммутатора, не требуя какого-либо участия центрального процессора, и эта обработка происходит с проводной скоростью при любом размере кадра.
Пропала опция Master-port и поле Switch
Не пугайтесь, это нормально, если прошивка вашего роутера 6.41 и выше. Теперь вся информация, которая передается на втором уровне модели OSI, будет передаваться через Bridge. Использование swich-чипа (hw-offload) будет автоматически активировано автоматически в случае такой возможности. По умолчанию при добавлении любого интерфейса в Bridge у него будет активирована опция «Hardware Offload», которая будет передавать всю информацию 2-го уровня через switch-чип. Если эту опцию убрать, то обработка будет осуществляться силами операционной системы.
При обновлении на RouterOS 6.41 и выше с RouterOS версий 6.40.5 и ниже все настройки master-port будут автоматически перенесены в Bridge-интерфейс. Если произвести downgrade до версии, которая поддерживает master-port, то настройки не будут возвращены на место. Настоятельно рекомендуется сделать резервную копию до обновления.
До обновления до RouterOS 6.41:
/interface ethernet set [ find default-name=ether1 ] name=ether1-WAN1 set [ find default-name=ether5 ] name=ether5-LAN1-master set [ find default-name=ether2 ] master-port=ether5-LAN1-master name=ether2-LAN1 set [ find default-name=ether3 ] master-port=ether5-LAN1-master name=ether3-LAN1 set [ find default-name=ether4 ] master-port=ether5-LAN1-master name=ether4-LAN1 /ip address add address=10.10.10.1/24 interface=ether1-WAN1 network=10.10.10.0 add address=192.168.0.1/24 interface=ether5-LAN1-master network=192.168.0.0 /ip firewall nat add action=masquerade chain=srcnat out-interface=ether1-WAN1
После обновления на RouterOS 6.41 и старше:
/interface bridge add admin-mac=6C:3B:6B:4A:80:3D auto-mac=no comment=»created from master port» name=bridge1 protocol-mode=none /interface ethernet set [ find default-name=ether1 ] name=ether1-WAN1 set [ find default-name=ether2 ] name=ether2-LAN1 set [ find default-name=ether3 ] name=ether3-LAN1 set [ find default-name=ether4 ] name=ether4-LAN1 set [ find default-name=ether5 ] name=ether5-LAN1-master /interface bridge port add bridge=bridge1 interface=ether2-LAN1 add bridge=bridge1 interface=ether3-LAN1 add bridge=bridge1 interface=ether4-LAN1 add bridge=bridge1 interface=ether5-LAN1-master /ip neighbor discovery-settings set discover-interface-list=!dynamic /ip address add address=10.10.10.1/24 interface=ether1-WAN1 network=10.10.10.0 add address=192.168.0.1/24 interface=bridge1 network=192.168.0.0 /ip firewall nat add action=masquerade chain=srcnat out-interface=ether1-WAN1
Источник
Mikrotik как настроить маршрутизацию между бриджами
Бесплатный чек-лист
по настройке RouterOS
на 28 пунктов
2 сети в одном бридже маршрутизация
Добрый день.
История такая:
Микротик RB1100x4 RouterOS 6.43.7.
Есть 2 сети в одном бридже. (бридж LAN физически это один интерфейс, НЕ РАЗНЫЕ)
192.168.20.0 — статические адреса
192.168.2.0 — поднят DHCP
Есть 2 провайдера Акадо и МГТС
Маркировкой сделана маршрутизация трафика из сети 20.0 в МГТС.
Сеть 2.0 ходит через акадо.
Все работает. Понадобилось сделать маршрутизацию между сетями 20.0 и 2.0, чтобы компы видели друг друга.
На данный момент:
Из 20 сети пингуется свой шлюз 20.1.
Из 2 сети пингуется свой шлюз 2.1 и . чужой!! шлюз 20.1, но не пингуются клиенты, далее этого шлюза.
Микротик пингует всех во 2 сети и в 20 без проблем.
При трассировке пути из 20 сети до клиента во 2 сети, видим что все пакеты идут через НАТ.
Добавление внутренней сети в исключения НАТ ничего не дает (точнее перестают ходить клиенты в МГТС)
Вопрос — Как сделать так, чтобы сети видели друг друга (в моем понимании они и так в бридже и должны видеть друг друга, но нет).
/interface bridge port
add bridge=akado hw=no interface=ether1
add bridge=akado hw=no interface=ether2
add bridge=akado hw=no interface=ether3
add bridge=akado hw=no interface=ether4
add bridge=akado hw=no interface=ether5
add bridge=lan hw=no interface=ether6
add bridge=lan hw=no interface=ether7
add bridge=lan hw=no interface=ether8
add bridge=lan hw=no interface=ether9
add bridge=lan hw=no interface=ether10
add bridge=mgts interface=ether11
/interface list member
add interface=akado list=WAN
add interface=mgts list=WAN
add interface=lan list=LAN
/ip address
add address=IPADRAKADO interface=akado network=IPADRAKADO
add address=192.168.2.1/24 comment=»lan akado» interface=lan network=\
192.168.2.0
add address=192.168.20.1/24 comment=»lan mgts» interface=lan network=\
192.168.20.0
add address=IPADRRMGTS interface=mgts network=IPADRRMGTS
/ip dhcp-server network
add address=192.168.2.0/24 dns-server=192.168.2.1 gateway=192.168.2.1
/ip firewall address-list
add address=192.168.20.0/24 list=to_mgts
add address=192.168.2.0/24 list=to_akado
/ip firewall filter
Ничего запрещающего тут нет, но если надо я приведу этот блок
/ip firewall mangle
add action=mark-routing chain=prerouting dst-address-list=!to_mgts \
new-routing-mark=to_mgts passthrough=no src-address=192.168.20.0/24
add action=mark-connection chain=input dst-address=95.165.197.42 \
in-interface=mgts new-connection-mark=mgts_in passthrough=no
add action=mark-routing chain=output connection-mark=mgts_in \
new-routing-mark=to_mgts passthrough=no
ip firewall nat
add action=masquerade chain=srcnat out-interface=akado
add action=masquerade chain=srcnat out-interface=mgts
ip route
add check-gateway=arp distance=1 gateway=IPADRRMGTS routing-mark=to_mgts
add distance=1 gateway=IPADRAKADO
Тут есть еще динамические маршруты
в том числе :
192.168.2.0/24 192.168.2.1
192.168.20.0/24 192.168.20.1
Сильно не вникал, но на уровне рефлексов даже, и с учётом того, что я выше выделил
из Ваших слов — могу всё таки сделать заключение, что сети Вы между собой
НАТите, а исключение не всегда работает так как Вы хотите.
В любом случаи вот два правила, они должны быть выше правил основных НАТА.
Попробуйте, хуже не будет.
Вот примерно как-то так
1) файрволы на компах ?
1.1) файрвол на микротике ?
2) антивирусники ?
3) ping / tracert ? (покажите)
4) . Надеюсь на компах 20 сети шлюз стоит 20.1, а в сети 2.0, на компах стоит шлюз 2.1
(шлюзом должен быть микротик)
P.S.
По-умолчанию, микротик сети все пропускает через себя,
если иное не сделано файрволом.
Да и винда не любит чужие сети и сразу блокирует.
Проверяйте всё.
1) файрволы на компах ?
1.1) файрвол на микротике ?
2) антивирусники ?
3) ping / tracert ? (покажите)
4) . Надеюсь на компах 20 сети шлюз стоит 20.1, а в сети 2.0, на компах стоит шлюз 2.1
(шлюзом должен быть микротик)
1)На компе файрволы проверены. Да и с микротика пинг этих хостов есть.
На микротике самом в правилах файрвола блокировок касающихся локальных сетей нет, да и я пробовал отключать правила.
Вывод прилагаю:
/ip firewall filter
add action=drop chain=input comment=invalid connection-state=invalid \
in-interface-list=WAN
add action=accept chain=input comment=PING in-interface-list=WAN protocol=\
icmp
add action=accept chain=input comment=WinBox dst-port=8291 in-interface-list=\
WAN protocol=tcp
add action=accept chain=input comment=GRE in-interface-list=WAN protocol=gre
add action=accept chain=input comment=ipsec-es in-interface-list=WAN \
protocol=ipsec-esp
add action=accept chain=input dst-port=500 in-interface-list=WAN protocol=udp
add action=accept chain=input dst-port=4500 in-interface-list=WAN protocol=\
udp
add action=accept chain=input comment=»allow related connections» \
connection-state=related
add action=accept chain=input comment=»allow established connections» \
connection-state=established
add action=accept chain=input comment=»allow untracked connections» \
connection-state=untracked
add action=drop chain=input comment=»drop all» in-interface-list=WAN
add action=drop chain=forward comment=Invalid connection-state=invalid \
in-interface-list=WAN
add action=add-src-to-address-list address-list=Torrent-Conn \
address-list-timeout=5m chain=forward layer7-protocol=block-torrents \
src-address=192.168.2.0/24 src-address-list=!allow-bit
add action=add-src-to-address-list address-list=Torrent-Conn \
address-list-timeout=5m chain=forward layer7-protocol=»\B5TP-1″ \
src-address=192.168.2.0/24 src-address-list=!allow-bit
add action=add-src-to-address-list address-list=Torrent-Conn \
address-list-timeout=5m chain=forward layer7-protocol=»\B5TP-2″ \
src-address=192.168.2.0/24 src-address-list=!allow-bit
add action=add-src-to-address-list address-list=Torrent-Conn \
address-list-timeout=5m chain=forward layer7-protocol=DHT src-address=\
192.168.2.0/24 src-address-list=!allow-bit
add action=add-src-to-address-list address-list=Torrent-Conn \
address-list-timeout=5m chain=forward layer7-protocol=bittorrent \
src-address=192.168.2.0/24 src-address-list=!allow-bit
add action=add-src-to-address-list address-list=Torrent-Conn \
address-list-timeout=5m chain=forward layer7-protocol=block-torrents \
src-address=192.168.20.0/24 src-address-list=!allow-bit
add action=add-src-to-address-list address-list=Torrent-Conn \
address-list-timeout=5m chain=forward layer7-protocol=»\B5TP-1″ \
src-address=192.168.20.0/24 src-address-list=!allow-bit
add action=add-src-to-address-list address-list=Torrent-Conn \
address-list-timeout=5m chain=forward layer7-protocol=»\B5TP-2″ \
src-address=192.168.20.0/24 src-address-list=!allow-bit
add action=add-src-to-address-list address-list=Torrent-Conn \
address-list-timeout=5m chain=forward layer7-protocol=DHT src-address=\
192.168.20.0/24 src-address-list=!allow-bit
add action=add-src-to-address-list address-list=Torrent-Conn \
address-list-timeout=5m chain=forward layer7-protocol=bittorrent \
src-address=192.168.20.0/24 src-address-list=!allow-bit
add action=drop chain=forward dst-port=!0-1024 protocol=tcp src-address-list=\
Torrent-Conn
add action=drop chain=forward dst-port=!0-1024 protocol=udp src-address-list=\
Torrent-Conn
add action=accept chain=forward comment=»allow related connections» \
connection-state=related
add action=accept chain=forward comment=»allow established connections» \
connection-state=related
add action=accept chain=forward comment=»allow untracked connections» \
connection-state=untracked
add action=accept chain=forward comment=»allow new dstnat» \
connection-nat-state=dstnat connection-state=new in-interface-list=WAN
add action=drop chain=forward comment=»drop all» connection-nat-state=!dstnat \
connection-state=new in-interface-list=WAN
2)Есть каспер на одной из машин, но опять же повторюсь, с самого микротика есть пинг до хостов.
3) Ping c микротика есть до обоих хостов — 192.168.2.115, 192.168.20.19
Ping c 20.19 есть до 20.1.
Ping c 2.115 есть до 2.1 и что странно до 20.1.
Трасерт до 192.168.2.115 показывает 1мс до 192.168.2.1 далее нет ответа 29 раз.
Трасерт до 192.168.20.19 показывает 1мс до 192.168.20.1 далее нет ответа 29 раз.
(можно и показать, но будет там ровно то, что я только что описал)
4) Да шлюзом стоит микротик в обоих сетях.
Вот поэтому то мне вся эта сутуация и не понятна. Это не первый мой микротик, но правда ранее в основном если маршрутизация и была, то она была на разные физические интерфейсы или на разные бриджи, тут же бридж один, да еще и на одном интерфейсе. К тому же еще и маркировка трафика для внешки. Мне кажется что где то тут собака порылась. 4 дня голову ломаю не могу сообразить.
Источник