Различия

Здесь показаны различия между выбранной ревизией и текущей версией данной страницы.

isp:domru:mikrotik-howto [2023-05-07 16:54 UTC]
jamakasi актуализация на 2023
isp:domru:mikrotik-howto [2024-03-29 21:47 UTC] (текущий)
rm
Строка 1: Строка 1:
====== IPv6 от Дом.ru (ЭР-Телеком) на Mikrotik ====== ====== IPv6 от Дом.ru (ЭР-Телеком) на Mikrotik ======
-//Спасибо за помощь в подготовке инструкции [[https://t.me/jamakasi667|@Jamakasi]]// +//Автор инструкции [[https://t.me/OxFFFE|@koozz]]//
 +**Для пользователей РосТелекома сразу переходите к шагу 2. У вас подключение выполнено по IPoE и первый шаг не нужен!.\\**
===== Перед началом ===== ===== Перед началом =====
Нужно убедиться, что: Нужно убедиться, что:
Строка 18: Строка 18:
Через CLI: Через CLI:
-''/ppp profile\\  +<code>/ppp profile 
-add change-tcp-mss=no name=ppp-domru only-one=yes use-compression=no use-encryption=no use-mpls=no use-upnp=no''+add change-tcp-mss=no name=ppp-domru only-one=yes use-compression=no use-encryption=no use-mpls=no use-upnp=no</code>
Теперь сам профиль подключения. Тут вручную приподнимаем MTU(заголовок PPP всего 8 байт) и указываем использование профиля Теперь сам профиль подключения. Тут вручную приподнимаем MTU(заголовок PPP всего 8 байт) и указываем использование профиля
Строка 26: Строка 26:
Через CLI: Через CLI:
-''/interface pppoe-client\\  +<code>/interface pppoe-client 
-add add-default-route=yes disabled=no interface=ether1-domru keepalive-timeout=disabled max-mtu=1492 name=dom.ru-PPPoE profile=ppp-domru user=DOMRULOGIN password=DOMRUPASSWORD''+add add-default-route=yes disabled=no interface=ether1-domru keepalive-timeout=disabled max-mtu=1492 name=dom.ru-PPPoE profile=ppp-domru user=DOMRULOGIN password=DOMRUPASSWORD</code>
Как итог соединение будет подниматься чуть быстрее, и MTU чуть больше. В статусе обязательно должны появиться link-local адреса ipv6 Как итог соединение будет подниматься чуть быстрее, и MTU чуть больше. В статусе обязательно должны появиться link-local адреса ipv6
Строка 41: Строка 41:
Через CLI: Через CLI:
-''/ip firewall mangle\\  +<code>/ip firewall mangle 
-add action=change-mss chain=forward comment=mss new-mss=clamp-to-pmtu out-interface=dom.ru-PPPoE passthrough=yes protocol=tcp tcp-flags=syn\\  +add action=change-mss chain=forward comment=mss new-mss=clamp-to-pmtu out-interface=dom.ru-PPPoE passthrough=yes protocol=tcp tcp-flags=syn 
-add action=change-mss chain=output comment=mss new-mss=clamp-to-pmtu out-interface=dom.ru-PPPoE passthrough=yes protocol=tcp tcp-flags=syn''+add action=change-mss chain=output comment=mss new-mss=clamp-to-pmtu out-interface=dom.ru-PPPoE passthrough=yes protocol=tcp tcp-flags=syn</code>
===== 2. Firewall ===== ===== 2. Firewall =====
-Да, именно фаирволл так как в предыдущей инструкции были допущены ошибки, в том числе фатальные. Кроме того это позволит дебажить подключение, в том числе абонентам РоссТелекома.\\ +Да, именно фаирволл так как в предыдущей инструкции были допущены ошибки, в том числе фатальные. Кроме того это позволит дебажить подключение, в том числе абонентам РосТелекома.\\
Список правил с нумерацией, далее буду ссылаться на номера: Список правил с нумерацией, далее буду ссылаться на номера:
-''ipv6/firewall/filter/print\\  +{{:isp:domru:firewall.png|}}
-Flags: X - disabled, I - invalid; D - dynamic\\  +
- 0    ;;; accept dhcpv6 answer from domru\\  +
-      chain=output action=passthrough protocol=udp out-interface-list=WAN src-port=546 dst-port=547 log=no log-prefix=""\\  +
- 1    ;;; Drop (invalid)\\  +
-      chain=input action=drop connection-state=invalid\\  +
- 2    ;;; Accept (established, related)\\  +
-      chain=input action=accept connection-state=established,related in-interface-list=WAN log=no log-prefix=""\\  +
- 3    ;;; Accept external ICMP (10/sec)\\  +
-      chain=input action=accept protocol=icmpv6 in-interface-list=WAN limit=10,20:packet log=no log-prefix=""\\  +
- 4    ;;; Drop external ICMP (>10/sec)\\  +
-      chain=input action=drop protocol=icmpv6 in-interface-list=WAN log=no log-prefix=""\\  +
- 5    ;;; accept dhcpv6 answer from domru\\  +
-      chain=input action=accept protocol=udp src-address=fe80::/10 in-interface-list=WAN src-port=547 dst-port=546 log=no log-prefix=""\\  +
- 6    ;;; Accept internal\\  +
-      chain=input action=accept in-interface-list=!WAN log=no log-prefix=""\\  +
- 7    ;;; Reject everything else\\  +
-      chain=input action=reject reject-with=icmp-port-unreachable log=no log-prefix=""\\  +
- 8    ;;; Accept external ICMP (20/sec)\\  +
-      chain=forward action=accept protocol=icmpv6 in-interface-list=WAN limit=20,50:packet log=no log-prefix=""\\  +
- 9    ;;; Drop external ICMP (>20/sec)\\  +
-      chain=forward action=drop protocol=icmpv6 in-interface-list=WAN log=no log-prefix=""\\  +
-10    ;;; Accept (established, related) to lan\\  +
-      chain=forward action=accept connection-state=established,related in-interface-list=WAN log=no log-prefix=""\\  +
-11    ;;; Accept to wan\\  +
-      chain=forward action=accept out-interface-list=WAN log=no log-prefix=""\\  +
-12    ;;; Reject everything else\\  +
-      chain=forward action=reject reject-with=icmp-port-unreachable log=no log-prefix="" ''\\ +
В лист WAN интерфейса входит "dom.ru-PPPoE"\\ В лист WAN интерфейса входит "dom.ru-PPPoE"\\
0 - правило для !просмотра! что dhcp-client шлет запросы в сторону провайдера\\ 0 - правило для !просмотра! что dhcp-client шлет запросы в сторону провайдера\\
5 - правило разрешающее отвечать dhcp-server'у провайдера нашему dhcp-clien'у\\ 5 - правило разрешающее отвечать dhcp-server'у провайдера нашему dhcp-clien'у\\
-Из важного, icmp надо обязательно разрешать, !"это очень важная часть протокола IPv6"!. Также очень важно, не избегайте "drop" правил и применяйте "reject", это также важно в IPv6.+Из важного, icmp надо обязательно разрешать, !"это очень важная часть протокола IPv6"!. Также очень важно, избегайте "drop" правил и применяйте "reject", это также важно в IPv6.
Остальные правила дежурные.\\ Остальные правила дежурные.\\
Добавить правила через CLI:\\ Добавить правила через CLI:\\
-''/ipv6 firewall filter\\  +<code>/ipv6 firewall filter 
-add action=passthrough chain=output comment="accept dhcpv6 answer from domru" dst-port=547 out-interface-list=WAN protocol=udp src-port=546\\  +add action=passthrough chain=output comment="accept dhcpv6 request from domru" dst-port=547 out-interface-list=WAN protocol=udp src-port=546 
-add action=drop chain=input comment="Drop (invalid)" connection-state=invalid\\  +add action=drop chain=input comment="Drop (invalid)" connection-state=invalid 
-add action=accept chain=input comment="Accept (established, related)" connection-state=established,related in-interface-list=WAN\\  +add action=accept chain=input comment="Accept (established, related)" connection-state=established,related in-interface-list=WAN 
-add action=accept chain=input comment="Accept external ICMP (10/sec)" in-interface-list=WAN limit=10,20:packet protocol=icmpv6\\  +add action=accept chain=input comment="Accept external ICMP (10/sec)" in-interface-list=WAN limit=10,20:packet protocol=icmpv6 
-add action=drop chain=input comment="Drop external ICMP (>10/sec)" in-interface-list=WAN protocol=icmpv6\\  +add action=drop chain=input comment="Drop external ICMP (>10/sec)" in-interface-list=WAN protocol=icmpv6 
-add action=accept chain=input comment="accept dhcpv6 answer from domru" dst-port=546 in-interface-list=WAN protocol=udp src-address=fe80::/10 src-port=547\\  +add action=accept chain=input comment="accept dhcpv6 answer from domru" dst-port=546 in-interface-list=WAN protocol=udp src-address=fe80::/10 src-port=547 
-add action=accept chain=input comment="Accept internal" in-interface-list=!WAN\\  +add action=accept chain=input comment="Accept internal" in-interface-list=!WAN 
-add action=reject chain=input comment="Reject everything else" reject-with=icmp-port-unreachable\\  +add action=reject chain=input comment="Reject everything else" reject-with=icmp-port-unreachable 
-add action=accept chain=forward comment="Accept external ICMP (20/sec)" in-interface-list=WAN limit=20,50:packet protocol=icmpv6\\  +add action=accept chain=forward comment="Accept external ICMP (20/sec)" in-interface-list=WAN limit=20,50:packet protocol=icmpv6 
-add action=drop chain=forward comment="Drop external ICMP (>20/sec)" in-interface-list=WAN protocol=icmpv6\\  +add action=drop chain=forward comment="Drop external ICMP (>20/sec)" in-interface-list=WAN protocol=icmpv6 
-add action=accept chain=forward comment="Accept (established, related) to lan" connection-state=established,related in-interface-list=WAN\\  +add action=accept chain=forward comment="Accept (established, related) to lan" connection-state=established,related in-interface-list=WAN 
-add action=accept chain=forward comment="Accept to wan" out-interface-list=WAN\\  +add action=accept chain=forward comment="Accept to wan" out-interface-list=WAN 
-add action=accept chain=forward comment="www server" disabled=yes dst-address=2a03:1ac0:6dc3:1516:dea6:32ff:fe6c:6fe6/128 dst-port=80,443 protocol=tcp\\  +add action=reject chain=forward comment="Reject everything else" reject-with=icmp-port-unreachable</code>
-add action=accept chain=forward comment="transmission peering" disabled=yes dst-address=2a06:a003:501b:10::103/128 dst-port=51413 protocol=udp\\  +
-add action=accept chain=forward comment="transmission peering" disabled=yes dst-address=2a06:a003:501b:10:42:c0ff:fea8:5867/128 dst-port=51413 protocol=udp\\  +
-add action=reject chain=forward comment="Reject everything else" reject-with=icmp-port-unreachable''\\ +
Как в случае с фаирволом IPv4 создаем тут правила для MSS:\\ Как в случае с фаирволом IPv4 создаем тут правила для MSS:\\
-''/ipv6 firewall mangle\\  +<code>/ipv6 firewall mangle 
-add action=change-mss chain=forward dst-prefix=::/0 in-interface-list=!WAN new-mss=clamp-to-pmtu passthrough=yes protocol=tcp src-prefix=::/0 tcp-flags=syn\\  +add action=change-mss chain=forward dst-prefix=::/0 in-interface-list=!WAN new-mss=clamp-to-pmtu passthrough=yes protocol=tcp src-prefix=::/0 tcp-flags=syn 
-add action=change-mss chain=output new-mss=clamp-to-pmtu out-interface=dom.ru-PPPoE protocol=tcp tcp-flags=syn''+add action=change-mss chain=output new-mss=clamp-to-pmtu out-interface=dom.ru-PPPoE protocol=tcp tcp-flags=syn</code>
===== 3. DHCPv6 Client ===== ===== 3. DHCPv6 Client =====
 +**Для РосТелекома длинна префикса будет 56, кроме того нужно поставить галочку запроса address и "Add default route".**\\  
Добавляем клиента, запрашиваем префикс, снимаем галочку "Add default route", длина префикса 64. Добавляем клиента, запрашиваем префикс, снимаем галочку "Add default route", длина префикса 64.
Строка 116: Строка 87:
Дефолтный роут на самом деле уже был установлен еще на этапе PPPoE подключения, там есть такая же галочка и она добавляет дефолт для IPv4 и IPv6.\\ Дефолтный роут на самом деле уже был установлен еще на этапе PPPoE подключения, там есть такая же галочка и она добавляет дефолт для IPv4 и IPv6.\\
-Для РоссТелекома (по словам свидетелй в чате) все тоже самое но длинна префикса будет 56, кроме того нужно поставить галочку запроса address помимо префикса.\\  
Проверить уходят ли запросы и приходят ли ответы можно в фаирволе счетчиком пакетов у правил 0 и 5. Проверить уходят ли запросы и приходят ли ответы можно в фаирволе счетчиком пакетов у правил 0 и 5.
Строка 131: Строка 101:
{{:isp:domru:ipv6_slaac_address.png|}} {{:isp:domru:ipv6_slaac_address.png|}}
-Для РосТелекома надо взять 64 префикс из 56.\\  +В случае Дом.ru, из-за всего одного префикса /64, сеть получится раздать только одну. 
-Для справки 56 префикс это 256 префиксов длинной 64.\\ + 
 +Для Ростелекома с префиксом /56, можно раздать сети и адреса в другие сегменты, к примеру в гостевой WiFi и прочее, делается это с указанием того же pool'a. Mikrotik сам возьмёт другую свободную подсеть. Для справки, префикс /56 -- это 256 префиксов длиной /64.

isp/domru/mikrotik-howto.1683478473.txt.gz · Последние изменения: 2023-05-07 16:54 UTC От jamakasi
Personal Tools