Разное

2 ip адреса на одном сетевом интерфейсе mikrotik: MikroTik — несколько адресов и несколько разных MAC на одном интерфейсе / Хабр

MikroTik — несколько адресов и несколько разных MAC на одном интерфейсе / Хабр

Нечасто, но с завидной периодичностью на профильных форумах возникал один и тот же вопрос: «как на одном интерфейсе роутера MikroTik получить два IP-адреса с разными MAC?». Обычно этот вопрос остается без ответа, либо вопрошающему отвечают «никак». И действительно, задача нетривиальная. В стандартной конфигурации соблюдается правило «1 интерфейс = 1 MAC». В этой статье я расскажу как обойти это ограничение используя расширенный функционал MikroTik.


Сначала вспомним матчасть RouterBoard. Помимо маршрутизации, устройства MikroTik могут выполнять и коммутацию. Для этого некоторые из них имеют отдельный свитч-чип, а также возможность объединять интерфейсы с помощью программного коммутатора — bridge. Bridge (в русской терминологии «мост») производит коммутацию пакетов за счёт ресурсов процессора устройства. С помощью моста также объединяют между собой разнородные ethernet-образные инетрфейсы — ethernet, wlan, vlan, eoip, vpls.

Мост в иерархии интерфейсов микротик является более высокой, объединяющей сущностью. При объединении интерфейсов с помощью моста, на него устанавливается MAC-адрес, который будет транслироваться во все подчиненные (slave) интерфейсы. MAC-адреса подчиненных интерфейсов перестают использоваться и заменяются в исходящих фреймах MAC-адресом моста.

Соответственно, IP-адрес и все службы связанные с протоколом IP должны быть привязаны НЕ к зависимым интерфейсам, а к вышестоящему мосту.

За счёт того, что мост реализован ресурсами CPU, он имеет очень широкий функционал по управлению трафиком. Фильтрация входящих и транзитных пакетов, а также возможность трансляции MAC-адресов сразу привлекли моё внимание. Итак, инструментом решения задачи будет bridge, точнее bridge NAT.

Приступим. У нашего подопытного маршрутизатора есть внутренний мост «bridge-local», которому присвоен адрес 192.0.2.1/24 и который является шлюзом для компьютеров локальной сети. Для «bridge-local» администратором назначен MAC D4:CA:6D:C7:11:11 Физический интерфейс Ether2 является одним из подчиненных (slave) портов моста «bridge-local» и непосредственно соединяется с локальной сетью.

Задача: добавить на маршрутизатор адрес из той же IP-подсети, но с другим MAC-адресом. Для примера выбрано сочетание IP 192.0.2.111/24 и MAC: D4:CA:6D:C7:22:22

Поскольку в лоб правило «1 интерфейс = 1 MAC» преодолеть нельзя, мы пойдем в обход. Для начала создадим вспомогательный интерфейс «bridge111» куда навесим дополнительный IP-адрес и MAC:

RouterOS command

/interface bridge add admin-mac=D4:CA:6D:C7:22:22 auto-mac=no name=bridge111 protocol-mode=none

Теперь разбираемся, что, откуда и куда нужно будет подменять используя мост. Для этого заглянем в описание протокола ARP: ru.wikipedia.org/wiki/ARP#.D0.9F.D1.80.D0.B8.D0.BD.D1.86.D0.B8.D0.BF_.D1.80.D0.B0.D0.B1.D0.BE.D1.82.D1.8B
Очевидно, что нам нужно перехватывать ARP-запросы узлов запрашивающих MAC устройства имеющего IP 192.0.2.111. Для этого в NAT существует отдельный action «arp-reply»:RouterOS command

/interface bridge nat add action=arp-reply arp-dst-address=192.0.2.111/32 chain=dstnat dst-mac-address=FF:FF:FF:FF:FF:FF/FF:FF:FF:FF:FF:FF in-bridge=bridge-local mac-protocol=arp to-arp-reply-mac-address=D4:CA:6D:C7:22:22

Попытка выполнить с компьютера команду «ping 192.0.2.111» явного результата не дала, однако при просмотре на компьютере локальной arp-таблицы стало видно сопоставление нового IP-адреса с новым MAC. Получается протокол ARP мы победили.

Переходим к следующему шагу — нам нужно добиться связности по IP. Для этого захватываем пакеты идущие на дополнительную пару MAC+IP:

RouterOS command

/interface bridge nat add action=redirect chain=dstnat dst-address=192.0.2.111/32 in-bridge=bridge-local mac-protocol=ip

После этой команды появляется некое подобие связности. Локальная ARP-таблица компьютера содержит две записи — по одной для каждой пары MAC+IP. MAC-адреса в ней различаются, так как мы и хотели. Пинг до адреса 192.0.2.111 и ответы исправно прилетают.

Но давайте посмотрим на принятые пакеты через wireshark:

Мы видим, что echo-ответы идут с MAC-адреса D4:CA:6D:C7:11:11, связанного с первым IP-адресом 192.0.2.1. И хотя связность есть, решение является незаконченным. Нам необходимо также подменять MAC-адреса в исходящих от роутера пакетах, имеющих src-ip 192.0.2.111. Сделаем это:

RouterOS command

/interface bridge nat add action=src-nat chain=srcnat mac-protocol=ip src-address=192.0.2.111/32 src-mac-address=D4:CA:6D:C7:11:11/FF:FF:FF:FF:FF:FF to-src-mac-address=D4:CA:6D:C7:22:22

Вот, теперь пакеты в сети выглядят правильно — имеют правильное сочетание src-IP и src-MAC:

В окошке winbox настроенные правила преобразования выглядят так:

Аналогичным способом на интерфейс можно добавить сколько угодно дополнительных IP, каждый со своим MAC прописывая соответствующие правила трансляции адресов. Маскарад вам в помощь.

Update: добавил результаты теста с включенным и с выключенным Bridge L2-NAT.

Для теста использовался RB951Ui-2HnD с процессором AR9344. Загрузка процессора изменяется незначительно, в пределах погрешности измерительных инструментов. В среднем рост составил 2% на 100M интерфейсе.

L2-NAT выключен:

L2-NAT включён:

1 провайдер выдаёт 2 IP, которые нужно разделить на две сети/интерфейса — Хабр Q&A

Здравствуйте, подскажите пожалуйста, как на роутере mikrotik 2011UiAS-2HnD настроить интернет таким образом:

по оптике (sfp1) даётся статически 2 ip, один ip надо на один интерфейс раздать (или бридж/мастер-слейв), второй ip на другой интерфейс.

Трудность заключается в том, что настроить работу первой сети получается, то есть первый выделенный ip настраиваю на нужную группу интерфейсов, прописываю правила в фаерволе и в муршрутах, всё работает, проблем нет.

Но, теперь надо подключить второй адрес, делаю так же как и первый, и… Вторая сеть выходит с первого ip, то есть не правильно и правило в маршруте горит синим. Нашёл в интернете как это сделать:
asp24.com.ua/blog/perenapravlenie-ip-adresov-na-vt…
то есть надо маркировать маршруты первой сети одним маркером, а вторую сеть другим. А в маршруте указать, что первой сети с маркером 1 идти через маршрут, в который фильтрует по маркеру 1. Вроде бы нормально и проблем быть не должно, делаю так и для первой, и для второй сети, на первый взгляд всё работает, но вот с внешки не пускает на микротик, хотя разрешено (нигде не запрещал).

Могу с внешки подключиться к серверу за микротиком (через пере направление портов), а уже оттуда на микротик по ssh (сервер на ubuntu server, без оболочки/GUI)

Так вот как решить последнюю проблему или как правильнее настроить.

UPD

Настройка сети:

провайдер выдаёт
1) x3.xx.xx.x6/24 с шлюзом x3.xx.xx.1 — это для сети 192.168.1.0/24
2) x9.xx.xxx.xx8/24 с шлюзом x9.xx.xxx.1 — это для сети 192.168.4.0/24

Конфиги:

/ip firewall nat print

Flags: X - disabled, I - invalid, D - dynamic 
 0   chain=srcnat action=masquerade src-address=192.168.1.0/24 out-interface=sfp1 

 1   chain=dstnat action=netmap to-addresses=192.168.1.230 to-ports=80 protocol=tcp dst-address=x3.xx.xx.x6 in-interface=sfp1 dst-port=81 

 2   chain=dstnat action=netmap to-addresses=192.168.1.230 to-ports=3000 protocol=tcp dst-address=x3.xx.xx.x6 in-interface=sfp1 dst-port=3000 

 3   chain=dstnat action=netmap to-addresses=192.168.1.230 to-ports=22 protocol=tcp dst-address=x3.xx.xx.x6 in-interface=sfp1 dst-port=2222 

 4   chain=dstnat action=netmap to-addresses=192.168.1.230 to-ports=2233 protocol=tcp dst-address=x3.xx.xx.x6 in-interface=sfp1 dst-port=2233 

 5   chain=srcnat action=masquerade src-address=192.168.4.0/24 out-interface=sfp1

/ip firewall mangle print

Flags: X - disabled, I - invalid, D - dynamic 
 0   chain=prerouting action=mark-routing new-routing-mark=233 passthrough=no src-address=192.168.4.0/24 

 1   chain=prerouting action=mark-routing new-routing-mark=231 passthrough=no src-address=192.168.1.0/24

/ip route print detail

Flags: X - disabled, A - active, D - dynamic, 
C - connect, S - static, r - rip, b - bgp, o - ospf, m - mme, 
B - blackhole, U - unreachable, P - prohibit 
 0 A S  dst-address=0.0.0.0/0 gateway=x9.xx.xxx.1 gateway-status=x9.xx.xxx.1 reachable via  sfp1 check-gateway=ping distance=1 scope=30 target-scope=10 routing-mark=233 

 1 A S  dst-address=0.0.0.0/0 gateway=x3.xx.xx.1 gateway-status=x3.xx.xx.1 reachable via  sfp1 check-gateway=ping distance=1 scope=30 target-scope=10 

 2 X S  dst-address=0.0.0.0/0 gateway=WAN gateway-status=WAN inactive distance=1 scope=30 target-scope=10 

 3 ADC  dst-address=x3.xx.xx.0/24 pref-src=x3.xx.xx.x6 gateway=sfp1 gateway-status=sfp1 reachable distance=0 scope=10 

 4 ADC  dst-address=x9.xx.xxx.0/24 pref-src=x9.xx.xxx.xx8 gateway=sfp1 gateway-status=sfp1 reachable distance=0 scope=10 

 5 ADC  dst-address=192.168.1.0/24 pref-src=192.168.1.1 gateway=bridge1,bridge1 gateway-status=bridge1 reachable,bridge1 reachable distance=0 scope=10 

 6 X S  dst-address=192.168.1.0/24 gateway=sfp1 gateway-status=sfp1 inactive check-gateway=ping distance=1 scope=30 target-scope=10 

 7 ADC  dst-address=192.168.4.0/24 pref-src=192.168.4.1 gateway=ether6 gateway-status=ether6 reachable distance=0 scope=10

Для 192.168.1.0/24 я убрал маркировку, так как у кого прописан шлюз 192.168.1.1, то dns-сервер (роутер не пускает) не отвечает.

Без маркировки 192.168.1.0/24 работает доступ через web-интерфейс (winbox не пробовал)

Два канала интернета от одного Ethernet провайдера на MikroTik

Бывают случаи когда провайдер приводит два кабеля по 100mbps безлимитного интернета в дом или офис. При этом не используются тунелирующие протоколы типа PPPoE, PPtP, L2TP и тд. Люди на форумах обсуждают массу правильных на первый взгляд идей с изменением в одной или двух каналах адресации с помощью SOHO роутеров. Существует масса инструкций на эту тему, только всё можно решить гораздо проще с помощью MikroTik. Как настраиваются одинаковые подсети и одинаковые шлюзы на двух интерфейсах MikroTik описано в этой статье.

Для тех кто не хочет тратить своё дорогое время на изучение данного мануала предлагаем нашу платную помощь.

Возьмём пример когда два канала по 100mbps приходят в ether1 и ether2 интерфейс MikroTik по двум кабелям с одинаковыми подсетями и шлюзами. Нужно запустить часть пользователей по одному каналу часть по другому. Делаем так:

Переименуем исходящие интерфейсы:

/interface ethernet
set 0 name=ether1
set 1 name=ether2

Отмаркируем маршруты для пользователей из списка адресов user-1 и user-2 в mangle метками wan-1, wan-2:
/ip firewall mangle
add action=mark-routing chain=prerouting new-routing-mark=wan-1 \
src-address-list=user-1
add action=mark-routing chain=prerouting new-routing-mark=wan-2 \
src-address-list=user-2

Сделаем NAT для каждого из исходящих каналов интернета:

/ip firewall nat
add action=src-nat chain=srcnat comment=»nat-1″ \
out-interface=ether1 to-addresses=10.0.0.100
add action=src-nat chain=srcnat comment=»nat-2″ \
out-interface=ether2 to-addresses=10.0.0.101

Вручную пропишем маршруты на шлюзы 10.0.0.1%ether1 и 10.0.0.1%ether2 через ip адреса 10.0.0.100/24 и 10.0.0.101/24 предварительно прописанные на интерфейсах по которыи приходит интернет.

/ip route
add check-gateway=ping distance=1 gateway=10.0.0.1%ether1 pref-src=10.0.0.100 \
routing-mark=wan-1
add check-gateway=ping distance=1 gateway=10.0.0.1%ether2 pref-src=10.0.0.101 \
routing-mark=wan-2

Ну и наконец добавим пользователей в списки user-1 и user-2

/ip firewall address-list
add address=192.168.88.254 list=user-1
add address=192.168.88.253 list=user-2

Всё настройка закончена! Если необходимо склейть два канала от одного ethernet провайдера необходимо воспользоваться инструкцией по использованию PCC

Устанавливаем Microtik в роли шлюза c 2-мя подсетями

  • Главная
  • Услуги по веб-сайту
    • Работы по сайту
      • Cоздание | запускНаписание технического задания, разработка и тестирование
      • Поддержка | редактированиеВедение и сопровождение, исправление ошибок и сбоев
      • Анализ | продвижениеАнализ, улучшение и оптимизация, реклама и раскрутка
    • Заказать работу
      • Заказать создание сайтаФорма заказа на разработку сайта
      • Заказать обслуживаниеФорма заказа на ведение, исправление, поддержку сайта сайта
      • Заказать продвижениеФорма заказа по анализу и продвижению сайта
    • Тарифы и цены на работы
      • Тарифы, цены и срокиГотовые тарифы на разработку, сопровождение и продвижение сайта. Сроки и перечень работ
      • Рассчитать стоимостьУдобная форма-калькулятор для расчёта стоимости создания сайта под ключ
    • Komp-Msk
      • Наше портфолиоКлиенты, которым мы создали/продвинули сайт
      • Гарантия на работыПо веб-сайту. Создание. Поддержка. Продвижение
  • Компьютерная помощь
    • Проблемы и их решения
      • Компьютеры и ноутбукиДиагностика, ремонт, настройка, сборка, чистка
      • Вирусы | ПрограммыУдаление вирусов. Установка, настройка Windows и программ. Настройка интернета и сети
    • Абонентское обслуживание | Удаленная помощь через интернет
      • Поддержка и обслуживание пользователейДистанционные и профилактические работы. Удаленное решение проблем
    • Цены | Оставить заявку
      • Вызвать мастераОтправить нам заявку
      • Цены и тарифыЦены на компьютерную помощь на дому, удаленно, тарифы на обслуживание
    • Komp-Msk
      • Как мы работаем. О Komp-MskВсе услуги. Коротко о нас. Чем мы Вам поможем.
      • Гарантия на работыПо ремонту и настройке компьютера
  • Услуги дизайнера
    • Разработка дизайна, стиля
      • Дизайн полиграфииРазработка макетов логотипа, визитки, баннера, этикетки, буклета, листовки
    • Услуги фотографа, обработка фото и видео
      • Работа фотографа. Монтаж видеоСъемка и обработка фотографий. Создание и редактирование видеороликов
    • Цены | Оставить заявку
      • Цены на все услугиПрайс на работы дизайнера полиграфии, фотографа, видеомонтаж
      • ПортфолиоНекоторые наши работы
  • Статьи и работы
    • Все содержимоеЛента статей. Главная страница с рубриками
      • Веб-сайтыВеб-сервер и хостинг. Системы управления сайтами. Домены. Верстка. Модули.
      • Ремонт и настройка компьютеровОшибки, неисправности, варианты решений. Настройка программ
      • Дизайн и внешний видГрафические редакторы. Сервисы. Цвета, фоны, картинки, иконки
    • Разное
      • Трудовые будни IT-мастераНекоторые примеры повседневных работ.
      • Играть в 2048Побъете наш рекорд?
      • Смешные заявки по ремонту компьютеровНекоторые слова и фразы, которые я услышал настраивая и ремонтируя компьютеры, добавляйте свои
  • Контакты
    • О насОсобенности работы и отличия от других компаний. Преимущества
    • Контакты и обратная связьРежим работы. Как с нами связаться. Отправить сообщение
  • 7-(977)-896-96-26
  • Прием звонков ежедневно с 10:00 до 20:00
  • [email protected]
  • Прием онлайн заказов ежедневно с 9:00 до 21:00

    Menu

    • Главная
    • Услуги по веб-сайту
        • Работы по сайту
          • Cоздание | запуск – Написание технического задания, разработка и тестирование
          • Поддержка | редактирование – Ведение и сопровождение, исправление ошибок и сбоев
          • Анализ | продвижение – Анализ, улучшение и оптимизация, реклама и раскрутка
        • Заказать работу
          • Заказать создание сайта – Форма заказа на разработку сайта
          • Заказать обслуживание – Форма заказа на ведение, исправление, поддержку сайта сайта
          • Заказать продвижение – Форма заказа по анализу и продвижению сайта
        • Тарифы и цены на работы
          • Тарифы, цены и сроки – Готовые тарифы на разработку, сопровождение и продвижение сайта. Сроки и перечень работ
          • Рассчитать стоимость – Удобная форма-калькулятор для расчёта стоимости создания сайта под ключ
        • Komp-Msk
          • Наше портфолио – Клиенты, которым мы создали/продвинули сайт
          • Гарантия на работы – По веб-сайту. Создание. Поддержка. Продвижение
      • Close
    • Компьютерная помощь
        • Проблемы и их решения
          • Компьютеры и ноутбуки – Диагностика, ремонт, настройка, сборка, чистка
          • Вирусы | Программы – Удаление вирусов. Установка, настройка Windows и программ. Настройка интернета и сети
        • Абоне

    Как настроить две подсети на одном физическом порте в mikrotik? — Хабр Q&A

    # DHCP server can not run on slave interface!
    Видимо из-за этого не работает. Только не пойму почему…? Воторой dhcp выделен красным(

    вот мой конфиг:
    /interface bridge
    add admin-mac=E4:8D:8C:A1:88:ED auto-mac=no comment=defconf name=bridge
    /interface ethernet
    set [ find default-name=ether2 ] name=ether2-master
    set [ find default-name=ether3 ] master-port=ether2-master
    set [ find default-name=ether4 ] master-port=ether2-master
    set [ find default-name=ether5 ] master-port=ether2-master
    /interface wireless
    set [ find default-name=wlan1 ] band=2ghz-onlyn channel-width=20/40mhz-Ce \
    country=russia2 disabled=no distance=indoors frequency=2427 mode=ap-bridge \
    ssid=Alex1 wireless-protocol=802.11
    /ip neighbor discovery
    set ether1 discover=no
    set bridge comment=defconf
    /interface wireless security-profiles
    set [ find default=yes ] authentication-types=wpa-psk,wpa2-psk group-ciphers=\
    tkip,aes-ccm mode=dynamic-keys unicast-ciphers=tkip,aes-ccm \
    wpa-pre-shared-key=CorteC2010 wpa2-pre-shared-key=CorteC2010
    /ip pool
    add name=dhcp ranges=192.168.1.10-192.168.1.254
    add name=pool2 ranges=192.168.2.10-192.168.2.100
    /ip dhcp-server
    add address-pool=dhcp disabled=no interface=bridge name=defconf
    # DHCP server can not run on slave interface!
    add address-pool=pool2 disabled=no interface=ether2-master name=server1
    /interface bridge port
    add bridge=bridge comment=defconf interface=ether2-master
    add bridge=bridge comment=defconf interface=wlan1
    /ip address
    add address=192.168.1.1/24 comment=defconf interface=ether2-master network=\
    192.168.1.0
    add address=192.168.2.1/24 interface=ether2-master network=192.168.2.0
    /ip dhcp-client
    add comment=defconf dhcp-options=hostname,clientid disabled=no interface=ether1
    /ip dhcp-server network
    add address=192.168.1.0/24 comment=defconf gateway=192.168.1.1 netmask=24
    add address=192.168.2.0/24 gateway=192.168.2.1 netmask=24
    /ip dns
    set allow-remote-requests=yes
    /ip dns static
    add address=192.168.1.1 name=router
    /ip firewall filter
    add action=accept chain=input comment=»defconf: accept 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
    add action=fasttrack-connection chain=forward comment=»defconf: fasttrack» \
    connection-state=established,related
    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
    /ip firewall nat
    add action=masquerade chain=srcnat comment=»defconf: masquerade» out-interface=\
    ether1
    /system clock
    set time-zone-name=Asia/Krasnoyarsk
    /tool mac-server
    set [ find default=yes ] disabled=yes
    add interface=bridge
    /tool mac-server mac-winbox
    set [ find default=yes ] disabled=yes
    add interface=bridge

    как назначить внешние IP серверам в локальной сети? — Хабр Q&A

    Есть сервер на freebsd, используется в том числе как роутер. От провайдера в него приходит один шнурок, провайдер выдает один IP + подсеть /30. Все эти адреса используются самим сервером. Второй шнурок идёт в локалку на раздачу интернета.

    Настройки такие:

    defaultrouter="1.1.252.1"
    gateway_enable="YES"
    ifconfig_rl0="inet 1.1.252.244 netmask 255.255.255.0"
    ifconfig_rl0_alias0="inet 2.2.138.172 netmask 255.255.255.252"
    ifconfig_rl0_alias1="inet 2.2.138.173 netmask 255.255.255.252"
    ifconfig_rl0_alias2="inet 2.2.138.174 netmask 255.255.255.252"
    ifconfig_fxp0="inet 192.168.2.100  netmask 255.255.255.0"

    ifconfig соответственно такой:

    rl0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
            options=8<VLAN_MTU>
            inet 1.1.252.244 netmask 0xffffff00 broadcast 1.1.252.255
            inet 2.2.138.172 netmask 0xfffffffc broadcast 2.2.138.175
            inet 2.2.138.173 netmask 0xfffffffc broadcast 2.2.138.175
            inet 2.2.138.174 netmask 0xfffffffc broadcast 2.2.138.175
    fxp0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
            inet 192.168.2.100 netmask 0xffffff00 broadcast 192.168.2.255

    В общем всё просто и стандартно.

    Внезапно на меня сваливается Mikrotik RB951G-2HnD вместе с необходимостью изготовить шлюз на нём.
    Основной IP переходит на mikrotik. А вот с подсетью хотелось бы поступить следующим образом: 1 ip из подсети назначить mikrotik’у, а второй — серверу в локалке. Оставшаяся ёмкость подсети не интересует.

    Собственно, вопросы:

    1. Как назначить один IP из подсети на mikrotik на тот же интерфейс, что и основной IP?
    2. Как назначить ещё один IP из подсети на сервер внутри локалки?
    3. Потребуется ли для этого подключать сервер двумя шнурками, один для 192.168.2.x, другой для внешки (и соответственно занимать этим вторым шнурком лишний порт в mikrotik), или есть возможность на сервере получить оба IP (и локальный и внешний) на один интерфейс по одному шнурку с LAN-порта mikrotik?

    Есть подозрение, что все эти вещи — базовые для сетевого инженера, но к сожалению я таковым не являюсь. Методом тыка и вдумчивых чтений, думаю, смогу настроить всё что нужно рано или поздно, но пикантность ситуации в том, что переключаться нужно как можно быстрее, а простой сервера нужно минимизировать.

    В дополнение к вопросам — если кто-то готов помочь с сетевыми делами касаемо mikrotik в частной переписке, напишите пожалуйста в личку, буду очень благодарен.

    MikroTik — несколько адресов и несколько MAC в одном интерфейсе / Хабр

    Нечасто, но с завидной периодичностью на профильных форумах награждает один и тот же вопрос: «как на одном интерфейсе роутера MikroTik получить два IP-адреса с разными MAC?». Обычно этот вопрос остается без ответа, либо не отвечает «никак». И действительно, задача нетривиальная. В стандартной конфигурации соблюдается правило «1 интерфейс = 1 MAC». В этой статье я расскажу, как обойти это ограничение, используя расширенный функционал MikroTik.

    Сначала вспомним матчасть RouterBoard. Помимо маршрутизации, устройства MikroTik могут выполнять и коммутацию. Для этого некоторые из них имеют отдельный свитч-чип, а также возможность объединять интерфейсы с помощью программного коммутатора — bridge. Bridge (в русской терминологии «мост») производит коммутацию пакетов за счёт ресурсов процессора устройства. С помощью моста также объединяют между собой разнородные ethernet-образные инетрфейсы — ethernet, wlan, vlan, eoip, vpls.

    Мост в иерархии интерфейса микротик является более высокой, объединяющей сущностью. При объединении интерфейсов с помощью моста, на него устанавливается MAC-адрес, который будет транслироваться во все подчиненные (подчиненные) интерфейсы. MAC-адресом подчиненных интерфейсов перестают исполнять роль и заменяют их на исходящих фреймах MAC-адресом моста.

    Соответственно, IP-адрес и все службы связанные с протоколом должны быть привязаны НЕ к зависимым интерфейсам, а кестоящему мосту .

    За счет того, что мост использует ЦП, он имеет очень широкий функционал по управлению трафиком. Фильтрация входящих и транзитных пакетов, а также возможность трансляции MAC-адресов сразу привлекли моё внимание. Итак, инструментом решения задачи будет мост, точнее мост NAT.

    Приступим. У нашего подопытного маршрутизатора есть внутренний мост «локальный-мост», используемый адрес 192.0.2.1/24 и используемый шлюз для компьютеров локальной сети.Для «bridge-local» администратором назначен MAC D4: CA: 6D: C7: 11: 11 Физический интерфейс Ether2 является одним из подчиненных (подчиненных) портов моста «bridge-local» непосредственно и соединяется с локальной сетью.

    Задача: добавить маршрутизатор адрес из той же IP-подсети, но с другими MAC-адресом. Для примера выбрано сочетание IP 192.0.2.111/24 и MAC: D4: CA: 6D: C7: 22: 22

    «1 интерфейс = 1 MAC» преодолеть нельзя, мы пойдем в обход.Для начала создадим вспомогательный интерфейс «bridge111» куда навесим дополнительный IP-адрес и MAC:

    Команда RouterOS

    / interface bridge add admin-mac = D4: CA: 6D: C7: 22: 22 auto-mac = no name = bridge111 протокол-режим = нет

    Теперь разбираемся, что, откуда и куда нужно будет подменять используя мост. Для этого заглянем в описание протокола ARP: ru.wikipedia.org/wiki/ARP#.D0.9F.D1.80.D0.B8.D0.BD.D1.86.D0.B8.D0.BF_.D1.80 .D0.B0.D0.B1.D0.BE.D1.82.D1.8B
    , Что нам нужно перехватывать запросы ARP, запрашивающих MAC устройства имеющего IP 192.0.2.111. Для этого в NAT существует отдельное действие «arp-reply»: RouterOS command

    / interface bridge nat add action = arp-reply arp-dst-address = 192.0.2.111 / 32 chain = dstnat dst-mac-address = FF : FF: FF: FF: FF: FF / FF: FF: FF: FF: FF: FF in-bridge = мост-локальный mac-protocol = arp to-arp-reply-mac-address = D4: CA: 6D: C7: 22: 22

    Попытка выполнить с компьютера команду «ping 192.0.2.111 »явного результата не дала, однако при просмотре на компьютере локальной arp-таблицы стало видно сопоставление нового IP-адреса с новым MAC. Получается протокол ARP мы победили.

    Переходим к следующему шагу — нам нужно добиться связности по IP. Для этого захватываем пакеты идущие на дополнительные пару MAC + IP:

    Команда RouterOS

    / interface bridge nat add action = redirect chain = dstnat dst-address = 192.0.2.111 / 32 in-bridge = bridge-local mac-protocol = ip

    После этой команды появляется некое подобие связности.Локальная ARP-таблица компьютера содержит две записи — по одной для каждой пары MAC + IP. MAC-адреса в ней различаются, как мы и хотели. Пинг до адреса 192.0.2.111 и ответы исправно прилетают.

    Но давайте посмотрим на принятые пакеты через wirehark:

    Мы видим, что echo-ответы идут с MAC-адресом D4: CA: 6D: C7: 11: 11 , связанного с первым IP-адресом 192.0.2.1. И связность есть, решение является незаконченным. Нам необходимо также подменять MAC-адреса в исходящих от роутера пакетах, имеющих src-ip 192.0.2.111. Сделаем это:

    Команда RouterOS

    / interface bridge nat add action = src-nat chain = srcnat mac-protocol = ip src-address = 192.0.2.111 / 32 src-mac-address = D4: CA: 6D: C7 : 11: 11 / FF: FF: FF: FF: FF: FF to-src-mac-address = D4: CA: 6D: C7: 22: 22

    Вот, теперь пакеты в сети выглядят правильно — имеют правильное сочетание src-IP и src-MAC:

    В окошке winbox настроенные правила преобразования выглядят так:

    Аналогичным способом интерфейса можно добавить сколько угодно IP, каждый со своим дополнительным MAC прописывая соответствующие правила трансляции адресов.Маскарад вам в помощь.

    Обновление: добавил результаты теста с включенным и с выключенным мостом L2-NAT.
    Для теста использовался RB951Ui-2HnD с процессором AR9344. Загрузка незначительно незначительно, в пределах погрешности измерительных инструментов. В среднем рост составил 2% на 100M интерфейсе.

    L2-NAT выключен :

    L2-NAT включён :

    .

    отдельных сетей на микротик вланс

    Функция VLAN (виртуальная локальная сеть) позволяет создавать несколько виртуальных интерфейсов в одном физическом сетевом интерфейсе. С помощью VLAN можно разделить или объединить сегменты сети независимо от ее физических топологий.

    1. Настройка MikroTik VLAN

    1.1 Сброс настроек роутера

    Настройку роутера MikroTik будем выполнять с чистой конфигурацией. Поэтому полностью сбросить конфигурацию роутера через программу Winbox:

    1. Откройте меню New Terminal ;
    2. Введите команду system reset ;
    3. Нажмите кнопку y на клавиатуре, чтобы подтвердить сброс настроек.

    После перезагрузки роутера откройте Winbox, и в появившемся окне нажмите кнопку Remove Configuration для конфигурации.

    1.2 Настройка WAN порта

    Настроим WAN порт роутера, к установленный кабель провайдера. Как выполнить статические настройки или PPPoE посмотреть в статье настройка роутера MikroTik. В нашем случае маршрутизатор настройки от провайдера получает настройки автоматически по DHCP, поэтому делаем динамическую:

    1. Откройте меню IP DHCP-клиент ;
    2. В появившемся окне нажмите красный плюсик;
    3. В новом окне в списке Интерфейс : выбираем интерфейс WAN ether1 ;
    4. Нажимаем кнопку OK для сохранения настроек.

    После этого в столбце IP-адрес появится IP-адрес WAN порта, полученный от провайдера.

    Проверяем наличие соединения с интернетом:

    1. Откройте Новый терминал ;
    2. Введите команду ping ya.ru , чтобы пропинговать сайт ya.ru.

    Пошли пинги по 20ms, значит есть соединение с интернетом. Завершаем выполнение ping нажатием клавиш Ctrl + C .

    Внимание! На компьютерах, подключенных к роутеру MikroTik, интернет не будет работать, пока не будет выполнена настройка NAT.

    1.3 Объединение LAN портов в Bridge

    Чтобы компьютеры офисной сети, подключенные по кабелю к разным LAN портам роутера, могли связываться друг с другом, объединенные порты роутера в мост Мост.

    Добавляем интерфейс Bridge :

    1. Откройте меню Bridge ;
    2. Нажмите «красный плюсик»;
    3. В поле Имя укажите название интерфейса bridge_main ;
    4. Нажмите кнопку ОК .

    Добавляем LAN порты в Bridge:

    1. Перейдите на вкладку Порты ;
    2. Нажмите «красный плюсик»;
    3. В списке Интерфейс выберите второй порт роутера ether2 ;
    4. В списке Bridge через интерфейс bridge_main ;
    5. Нажмите кнопку ОК .

    Добавьте аналогичным образом в bridge_main порты ether3, ether4 и ether5.. В итоге у вас должен появиться список портов, как на рисунке ниже.

    1.4 Добавление интерфейса VLAN

    Создадим интерфейс bridge_main виртуальный интерфейс с названием vlan2 , который изолировать точку доступа Wi-Fi HotSpot от сети предприятия.

    1. Откройте меню Интерфейсы ;
    2. Перейдите на вкладку VLAN ;
    3. Нажмите «красный плюсик»;
    4. В появившемся окне в поле Имя указываем название интерфейса vlan2 ;
    5. В поле VLAN ID указываем идентификатор сети, равный 2 .Сетевое оборудование с поддержкой VLAN не оперирует именами виртуальных сетей, а использует цифры от 1 до 4094. VLAN ID — это, по сути, имя виртуального интерфейса, которое будет оборудованием между собой. Единицу в качестве идентификатора использовать не рекомендуется, поскольку некоторые производители используют идентификатор VLAN 1 в качестве значения по умолчанию;
    6. В списке Интерфейс выбираем интерфейс bridge_main ;
    7. Нажимаем кнопку OK для создания VLAN интерфейса.

    Назначение IP адресов локальным сетям

    Компьютеры сети предприятия и гостевой будут находиться в разных подсетях. Сеть предприятия будет использовать подсеть 192.168.88.1/24 , а гостевая сеть 192.168.10.1/24 . Настроим IP-адреса локальных сетей.

    Настройка IP-адреса сети предприятия:

    1. Откройте меню IP — Адреса ;
    2. Нажмите «красный плюсик»;
    3. В поле Адрес введите 192.168.88.1 / 24 ;
    4. В списке Интерфейс через интерфейс bridge_main ;
    5. Нажимаем кнопку OK .

    Настройка IP-адреса гостевой сети:

    1. Откройте меню IP — Адреса ;
    2. Нажмите «красный плюсик»;
    3. В поле Адрес введите 192.168.10.1/24 ;
    4. В списке Interface — это виртуальный интерфейс vlan2 ;
    5. Нажимаем кнопку OK .

    1.5 Настройка пула адресов

    Компьютерам сети предприятия и гостевой сети будем по DHCP присваивать IP-адреса из разных подсетей. Сеть предприятия будет использовать диапазон 192.168.88.2–192.168.88.254 , а гостевая сеть 192.168.10.2–192.168.10.254 . Зададим с помощью пула диапазоны IP-адресов.

    Добавляем диапазон IP адресов предприятия:

    1. Откройте меню IP — Pool ;
    2. Нажмите «красный плюсик»;
    3. В появившемся окне в поле Имя укажите название dhcp_pool_main ;
    4. В поле Адреса пропишите диапазон 192.168.88.2–192.168.88.254 ;
    5. Нажмите кнопку OK для сохранения пула адресов.

    Добавляем диапазон IP-адресов гостевой сети аналогичным образом:

    1. Нажмите «красный плюсик»;
    2. В появившемся окне в поле Имя указываем название dhcp_pool_vlan2 ;
    3. В поле Адреса прописываем диапазон 192.168.10.2–192.168.10.254 ;
    4. Нажимаем кнопку OK для сохранения адресов.

    1.6 Настройка DHCP серверов

    Чтобы использовать сетевые настройки автоматически, необходимо настроить DHCP сервера. Нам будут две сети, чтобы настроить два DHCP сервера.

    Настраиваем DHCP-сервер внутренней сети предприятия:

    1. Откройте меню IP — DHCP-сервер ;
    2. Нажмите «красный плюсик»;
    3. В появившемся окне в поле Имя укажите название dhcp_server_main ;
    4. В списке Интерфейс интерфейс офисной сети bridge_main ;
    5. В списке Пул адресов выберите пул IP-адресов dhcp_pool_main , которые будут присваиваться компьютерам предприятия;
    6. Нажмите кнопку OK .

    Настраиваем DHCP сервер гостевой сети аналогичным образом:

    1. Нажмите «красный плюсик»;
    2. В появившемся окне в поле Имя укажите название dhcp_server_vlan2 ;
    3. В списке Интерфейс — виртуальный интерфейс гостевой сети vlan2 ;
    4. В списке Пул адресов выберите пул IP-адресов dhcp_pool_vlan2 , которые будут присваиваться гостевым ноутбукам;
    5. Нажмите кнопку OK .

    Теперь переходим на вкладку Сети и добавляем наши сети:

    Добавляем сеть предприятия:

    1. Нажмите «красный плюсик»;
    2. В поле Адрес укажите сеть предприятия 192.168.88.0/24 ;
    3. В поле Шлюз укажите адрес шлюза 192.168.88.1 ;
    4. В поле Маска сети укажите маску 24 ;
    5. В поле DNS Servers укажите адрес DNS сервера 192.168.88.1 ;
    6. Нажмите кнопку OK .

    Добавляем гостевую сеть:

    1. Нажмите «красный плюсик»;
    2. В поле Адрес укажите сеть предприятия 192.168.10.0/24 ;
    3. В поле Шлюз укажите адрес шлюза 192.168.10.1 ;
    4. В поле Маска сети укажите маску 24 ;
    5. В поле DNS Servers укажите адрес DNS сервера 192.168.10.1 ;
    6. Нажмите кнопку OK .

    1.7 Настройка DNS сервера

    1. Откройте меню IP — DNS и нажмите кнопку Настройки ;
    2. Поставьте галочку Разрешить удаленный запрос ;
    3. Нажмите кнопку OK .

    1.8 Включение NAT

    Чтобы иметь возможность иметь выход в интернет, нужно настроить NAT для двух сетей.

    Настройка NAT для внутренней сети предприятия:

      1. Откройте меню IP — Firewall ;
      2. Перейдите на вкладку NAT ;
      3. Нажмите «красный плюсик»;
      1. В списке Цепь выберите srcnat ;
      2. В поле Src. Адрес укажите диапазон IP адресов сети предприятия 192.168.88.0/24 ;
      3. В списке Out Interface выберите WAN порт ether1 , на который приходит интернет от провайдера;
    1. Перейдите на вкладку Action ;
    2. В списке Action выберите masquerade;
    3. Нажмите кнопку OK .

    Настройка NAT для гостевой сети выполняется другим образом, используется другой адрес IP и порт vlan2:

    .

    1. Нажмите «красный плюсик»;
    2. В списке Сеть по srcnat ;
    3. В поле Src. Адрес укажите диапазон адресов IP гостевой сети 192.168.10.0/24 ;
    4. В списке Out Interface выберите WAN порт ether1 , на который приходит интернет от провайдера;
    5. Перейдите на вкладку Action ;
    6. В списке Action выберите masquerade;
    7. Нажмите кнопку OK .

    1.9 Изоляция подсетей

    Чтобы компьютеры из офисной сети и сети хотспота не видели друг друга, нужно изолировать подсети. Это можно сделать двумя способами: через Межсетевой экран или правила Правила маршрута . Мы опишем, как изолировать подсети в MikroTik с помощью Route Rules .

    1. Откройте меню IP — Routes ;
    2. Перейдите на вкладку Rules ;
    3. Нажмите «красный плюсик»;
    4. В поле Src.Адрес укажите офисную подсеть 192.168.88.0/24 ;
    5. В поле Dst. Адрес укажите гостевую подсеть 192.168.10.0/24 ;
    6. В списке Action по запросу unreachable ;
    7. Нажмите кнопку OK .

    Добавляем второе правило аналогичным образом.

    1. Нажмите «красный плюсик»;
    2. В поле Src.Адрес укажите офисную подсеть 192.168.10.0/24 ;
    3. В поле Dst. Адрес укажите гостевую подсеть 192.168.88.0/24 ;
    4. В списке Action по запросу unreachable ;
    5. Нажмите кнопку OK .

    Настройка роутера MikroTik для использования VLAN выполнена. Теперь приступим к настройке точки доступа EnGenius EAP150 с поддержкой VLAN.

    Вконтакте

    Facebook

    Twitter

    Google+

    LiveJournal

    LinkedIn

    Одноклассники

    E-mail

    Pinterest

    Мой мир

    .

    MikroTik RouterOS — Списки интерфейсов «Список интерфейсов» |

    Автор Григорий На чтение 4 мин. Просмотров 29.3k. Опубликовано
    Обновлено

    Здравствуйте,

    Данная статья будет и небольшая она будет посвящена Спискам интерфейсов в MikroTik RouterOS
    Эта статья связана с другой статьей про Межсетевой экран: Создание домашней сети на базе устройств MikroTik: Часть 6 — Межсетевой экран защита доступа

    В ней я постараюсь рассказать, что такое «Списки интерфейсов» и для чего они нужны.

    Все действия производились на прошивке 6.42.9 (Long-Term)
    Описание MikroTik WIki: Руководство: Интерфейс / Список [ENG]

    Сами списки интерфейсов в RouterOS V6 (на 10.10.2018) присутствуют довольно давно, тогда они еще были очень простыми.
    А сейчас позволяет сильно упростить работу с такими элементами роутера, как Обнаружение соседей , Mac Telnet Server , Mac WinBox Server , Firewall , Bridge и Internet Detect
    Т.е. вместо того, чтобы указывать конкретный интерфейс, мы можем указать список, который может постоянно входить в несколько интерфейсов и правила будут указывать одному интерфейсу, а сразу к нескольким.
    Более того, компания MikroTik перевела такие вещи, как Neighbor discovery , Mac Telnet Server и Mac WinBox Server на работу исключительно со Списками интерфейсов.
    Поэтому у нас не остается другого выхода, кроме как пойти тем же путем.

    Давайте взглянем где они и с чем их кушать!

    1. Настройка Списков интерфейсов / Список интерфейсов
    Список интерфейсов предоставляется в меню Интерфейсов
    Консольно:
    / interface list print
    / interface list member print

    Для использования выделяем, кликаем два раза мышью, меняем, нажимаем «ОК»
    Для добавления своего списка необходимо нажать на плюс, вписать имя своего списка и нажать «ОК»
    Консольно:
    / interface list add name = "Internet"

    Мне было достаточно добавить три типа интерфейса:
    Internet — Для интерфейса смотрящих к провайдеру
    Local — Внутренние домашние интерфейсы
    VPN — VPN соединения

    Меняем список для каждого интерфейса по отдельной
    Консольно:
    / interface list member
    set [find interface = WAN] list = Internet
    set [find interface = LAN-Bridge] list = Local
    set [find interface = LAN1-Ethernet] list = Local
    set [find interface = LAN2-Ethernet] list = Local
    set [find interface = LAN3-Ethernet] list = Local
    set [find interface = LAN4-Ethernet] list = Local
    set [find interface = LAN5-wifi24ghz] list = Local
    set [ find interface = LAN6-wifi5ghz] list = Local
    set [find interface = LAN7-Sfp] list = Local

    Один интерфейс может входить одновременно в разные списки!

    2.Настройка Neighbor Discovery
    Соответственно нам нужно изменить список для службы, которая транслирует широковещательные данные для поиска нашего роутера с других устройств в сети.
    Переходим в меню в IP -> Соседи
    Консольно:
    / ip Neighbor discovery-settings print

    Меняем Список для службы
    Консольно:
    / ip neighbour discovery-settings set discover-interface-list = "Local"

    3. Настройка Mac Telnet Server, Mac WinBox Server
    Еще один стандартный пункт, который использует Списки интерфейсов предоставляет в инструментах RouterOS
    Консольно:
    / tool mac-server print
    / tool mac-server mac-winbox print

    Меняем Списки для служб MAC Telnet и MAC Winbox
    Консольно:
    / tool mac-server set allowed-interface-list = Local
    / tool mac-server mac-winbox set allowed-interface-list = Local

    И остается самым важным элементом, в котором в основном используется список интерфейсов — это Межсетевой экран
    Пример настройки межсетевого экрана рассмотрен в отдельной статье обозначенной выше.В ней используются эти Списки для создания правил соединений.
    Та самая статья еще раз: Создание домашней сети на базе устройств MikroTik: Часть 6 — Межсетевой экран защита доступа

    3. Динамические интерфейсы и Списки

    Как добавить в интерфейс (например, VPN) порты, которые представляют динамически при подключении pptp или l2tp клиента?

    Для добавления динамических клиентов OpenVPN, PPTP, L2TP и т.д. необходимо указать имя списка в профиле, который используется для серверов PPP.
    PPP -> Профили
    Консольно:
    / ppp profile
    set default interface-list = Vpn

    Большое спасибо, что изучили эту статью, надеюсь она Вам помогла узнать больше!

    Всего хорошего на просторах интернета 😉

    UPD: 12.03.2019 — Добавлена ​​информация по динамическому интерфейсу VPN
    Спасибо одному из читателей за данный вопрос. Добавляю ответ на него в статю 😉

    Список всех статей в хронологическом порядке: История статей

    Поддержка блога

    Если Вам не безразлична судьба блога или Вы просто хотите отблагодарить Автора за его труд, смело переходите на страницу Поддержки, там описана вся информация, по тому, как это сделать проще простого =)

    Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl + Enter .

    .

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *