Возможно ли, чтобы маршрутизатор Mikrotik получил публичный IPv6-адрес с помощью SLAAC?
Sob
Guest
0
12.12.2021 21:54:00
Я бы не сказал, что в 6.x это работает "хорошо", скорее "лучше, чем ничего". Но ты прав, в 7.1 это вообще не работает. Надеюсь, когда они это починят, это будет в более удобном виде. Чтобы хотя бы были видны адрес и шлюз. А если будет конфигурация на интерфейс, то это было бы здорово.
DarkNate
Guest
0
26.06.2020 14:29:00
Может быть, ты сможешь помочь мне с моей проблемой по IPv6:
whatever
Guest
0
26.06.2020 19:48:00
DHCPv6 — это не SLAAC.
hci
Guest
0
12.12.2021 13:29:00
Это работало нормально на MikroTik v6.x, но теперь на v7.x это, похоже, не дает IPv6 таким образом. Есть идеи?
wojo
Guest
0
02.01.2022 05:03:00
Запуск 7.1.1. Также замечаю, что он не находит адрес через SLAAC.
brasiliot
Guest
0
06.01.2022 18:22:00
Скрипт для получения адреса SLACC, вычисления PREFIX и генерации нового адреса из этого пула. ПОЧЕМУ: У меня дома есть RB 750GR3. Мой интернет-провайдер использует роутер, который не поддерживает DHCPv6, кроме “мостового” режима. Префиксы динамические (если перезагрузить роутер провайдера, префикс изменится, так что зафиксировать его в RB нельзя). Мне нужен способ получить адрес SLACC RB и использовать его при необходимости. # RouterOS не показывает адрес SLACC. # Обходной путь: создать правило межсетевого экрана для захвата и генерации списка адресов с этим адресом SLACC. # После создания этого правила заставить трафик (пинговать любой внешний IPv6 адрес, в данном случае корневой DNS-сервер) — этот трафик наполнит вышеупомянутый список адресов. # С адресом SLACC вычислить PREFIX ПУЛА и сгенерировать новый ipv6 адрес, используя его. #
# Настройки ipv6 для SLACC (без DHCPv6) /ipv6 nd set [find default=yes] disabled=yes interface=ether1 ra-lifetime=none /ipv6 nd prefix default set preferred-lifetime=4h valid-lifetime=4h /ipv6 settings set accept-redirects=no accept-router-advertisements=yes forward=no
# Удалить любой предыдущий адрес SLACC из списка /ipv6 firewall address-list remove [/ipv6 firewall address-list find list="ipv6slacc"]; #/ipv6 firewall address-list print;
# Удалить любой предыдущий пул SLACC /ipv6 pool remove [/ipv6 pool find name="ipv6-virtua"] #/ipv6 pool print;
# Удалить любой предыдущий рассчитанный адрес SLACC /ipv6 address remove [/ipv6 address find from-pool="ipv6-virtua"]; #/ipv6 address print;
# Если правило raw межсетевого экрана для получения SLACC не существует, создать :if ([/ipv6 firewall raw find address-list="ipv6slacc"] = "") do={ /ipv6 firewall raw add action=add-src-to-address-list address-list=ipv6slacc address-list-timeout=0s chain=output out-interface-list=WAN src-address=!fe80::/10 }
# Выполнить общий (в данном случае, корневой DNS) пинг, чтобы заставить ipv6 трафик и наполнить список адресов ipv6slacc (raw межсетевой экран) :execute script="{ ping address=2001:503:ba3e::2:30 count=1 ttl=1 }"; :local QT :do { # ждать .5с для наполнения списка адресов ipv6slacc :delay .5; #:put "...ping wait"; :set ($QT+1); # после 120 итераций (60с) без данных в списке адресов ipv6slacc, прервать :if ($QT > 120) do={ :error "Адрес SLACC не найден"; } # если список адресов ipv6slacc содержит данные, завершить цикл, иначе ждать еще .5с } while=([/ipv6 firewall address-list find list="ipv6slacc"] = "");
# Получить адрес ipv6 SLACC из списка адресов ipv6slacc :local CIDR ([/ipv6 firewall address-list get [/ipv6 firewall address-list find list="ipv6slacc"] address]);
# Если PREFIX не найден, прервать :if (([:len $PREFIX] = 0) || ($PREFIX = "::")) do={ :error "PREFIX не найден"; }
# Создать маршрут по умолчанию :local GATEWAY ([/ipv6 neighbor get [/ipv6 neighbor find interface="ether1"] address]); /ipv6 route add gateway="$GATEWAY%ether1" distance=1
# Создать новый пул с вычисленным PREFIX SLACC /ipv6 pool add name="ipv6-virtua" prefix="$PREFIX/64" prefix-length=64;
# Создать новый адрес, используя пул SLACC /ipv6 address add advertise=no eui-64=yes from-pool="ipv6-virtua" interface=ether1
michaelmurfy
Guest
0
30.01.2022 11:45:00
Я хотел бы прокомментировать то, что я обнаружил в RouterOS 7.x: SLAAC работает, но есть ошибка, которая мешает его полной работе. На моем Mikrotik RB4011, работающем на 7.x, он вставляет неправильные IPv6 маршруты, которые, если удалить, позволяют IPv6 работать — пока не обновится пул адресов, нарушая работу IPv6 снова из-за повторного добавления неправильных маршрутов. В RouterOS 6.48 IPv6 работает как ожидалось. Некоторые посты предполагают, что это может быть специфической проблемой RB4011, но будет интересно узнать, наблюдают ли другие такую же проблему, так как у меня нет другого Mikrotik под рукой для тестирования.