Pokud mám RouterOS 7, mohu si zjednodušit následující kroky pomocí tohoto skriptu.
- upravím si proměnné dle https://ripe.hkfree.org/
- skript si zkopíruju a v termínálu vložím
- zkontorluji, zda vše proběhlo bez chyby
- zkopíruji si v ospf interfaces-template dle IPv4 a upravím (popis ve skriptu)
Zapnout IPv6 a forwarding
RouterOS 7 | RouterOS 6 |
---|---|
/ipv6/settings/set disable-ipv6=no | /system package enable ipv6 /system reboot /ipv6 settings set forward=yes |
Nastavit vlastní adresu pro router
Pro přístup na router přes ipv6. Je jedno, na kterém interface adresa bude. Protože RouterOS nemá lo
, vybereme interface na kterém jsou připojenci.
Ideální je IPv6 adresu pro management routeru posadit na interface lo tedy loopback, který je neustále dostupný.
Tip: V RouterOS meší než 7.14 se loopback lo nastavuje tak, že se vytvoří samotný bridge bez portů. Pozná se tak, že L2 MTU je 65535. Bridge s porty má L2 MTU 1514. Mikrotik od verze 7.14 lo již zviditelnil a lze s ním pracovat jako s jakýmkoliv jiným rozhraním přes menu Interfaces ... stejně tak ho můžete adresovat.
/interface bridge
add name=loopback-ipv6 protocol-mode=none
Na tento loopback si pak můžeme pověsit "pěknou globální IPv6 adresu", která nám bude sloužit primárně pro správu routeru například a bude snadno zapamatovatelná.
Na interface routeru doporučuji vždy nasazovat IPv6 adresu s prefixem /64 (pokud tam chcete adresovat více zařízení) nebo /128 (pokud vám stačí jen jedna adresa pro management). Vyvarujte se adresovat velké prefixy /40, /44 a /48 pokud vyloženě nevíte co děláte - přináší to problémy a nestandardní chování. Například nefunguje redistribute static apod.
/ipv6 address
add address=2a01:168:xxxx::1/64 advertise=no interface=loopback-ipv6
RouterOS 7.14+ (tady si již nemusíme / nepotřebujeme vypomáhat přes bridge):
/ipv6 address
add address=2a01:168:xxxx::1/64 advertise=no interface=lo
RouterOS 6 i 7 |
---|
/ipv6 address add address=2a01:168:5830::/64 interface=bridge1 no-dad=yes advertise=no |
Firewall: úplně základní zabezpečení
RouterOS 6 i 7 |
---|
/ipv6 firewall filter add action=accept chain=input comment="link-local traffic OK" src-address=fe80::/10 add action=reject chain=input comment="No new ex-hkfree incoming connections on IPv6 (this router)" connection-state=new protocol=!icmpv6 reject-with=icmp-admin-prohibited src-address=!2a01:168::/29 Tip: Alternativa pokud na routeru zbytečně nechci stavový firewall (connection-state) viz. výše, ale čistý bezstavový: |
Routování - OSPFv3
Nahodit OSPFv3 (IPv6) instance. Vše nastavit stejně jako v OSPFv2 (IPv4) instanci, kromě redistribute static = as type 1.
...
Kontrola: vidíme 1x neighbor
RouterOS 7 | RouterOS 6 |
---|---|
Routování - co budeme šířit ven?
Zadat 1x agregovanou routu pro tento router. Velikost bude mezi /40 - /48, záleží na správci. Doporučuju /4844.
Blok kódu |
---|
/ipv6 route add comment="Souhrnna agregovana routa" distance=1 dst-address=2a01:168:5800::/4844 type=unreachable # RouterOS 7.xx /ipv6 route add blackhole comment="Souhrnna agregovana routa" disabled=no distance=1 dst-address=2a01:168:5800::/44 |
Zadat filtr na odchozí routy šířené přes OSPF ven. Žádný subnet menší než /48 nesmí ven.
Blok kódu |
---|
/routing filter
add action=discard chain=ospf-out prefix-length=49-128
# RouterOS 7.xx
/routing filter rule
add chain=OSPFv3-out disabled=no rule="if (dst-len<=48) { accept }" |
Důležitý je zadat type = discard a distance = 1. Tím vznikne tzv. "blackhole" routa.
Kontrola
Máme default routu (2000::/3
) v routovací tabulce a vede do interface, kde máme uplink (ether1
) .
...
Blok kódu |
---|
[Praskacka3 router] > ping 2a01:168:0:10::f:2
SEQ HOST SIZE TTL TIME STATUS
0 2a01:168:0:10::f:2 56 62 1ms echo reply
1 2a01:168:0:10::f:2 56 62 0ms echo reply
2 2a01:168:0:10::f:2 56 62 0ms echo reply
3 2a01:168:0:10::f:2 56 62 0ms echo reply
4 2a01:168:0:10::f:2 56 62 1ms echo reply
sent=5 received=5 packet-loss=0% min-rtt=0ms avg-rtt=0ms max-rtt=1ms
|
Nastavit DHCP v6
Budeme nastavovat co připojenec to statický /56 příděl. Dynamický pool (poslední 4 z 256 přídělů) je pro snazší práci se zjišťováním DUID.
Blok kódu |
---|
/ipv6 pool add name=pool-5830-last4 prefix=2a01:168:5830:fc00::/54 prefix-length=56 comment="Odsud se prideluji /56 subnety pripojencum" /ipv6 dhcp-server add name=server1 interface=bridge1 address-pool=pool-5830-last4 lease-time=24:00:00 |