Pokud mam RouterOS 7, mohu si zjednodusit nasledujici kroky pomoci tohoto skriptu.


Zapnout IPv6 a forwarding

RouterOS 7RouterOS 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 nebo

Tip
: V RouterOS 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.

/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ě jen pro správu routeru například a bude snadno zapamatovatelná. 

/ipv6 address
add address=2a01:168:xxxx::1/128 advertise=no interface=loopback-ipv6

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ý: 

/ipv6 firewall address-list
add address=2a01:168::/29 comment=hkfree list=allowed
add address=fe80::/16 comment=link-local list=allowed
add address=ff02::/16 comment=multicast list=allowed

/ipv6 firewall filter
add action=accept chain=input comment="allow ospfv3" protocol=ospf
add action=accept chain=input comment="accept ICMPv6" protocol=icmpv6
add action=accept chain=input comment="accept UDP traceroute" port=33434-33534 protocol=udp
add action=accept chain=input comment="allow allowed addresses" src-address-list=allowed
add action=drop chain=input comment="drop all"



Routování - OSPFv3

Nahodit OSPFv3 (IPv6) instance. Vše nastavit stejně jako v OSPFv2 (IPv4) instanci, kromě redistribute static = as type 1.

RouterOS 7RouterOS 6


Nastavit uplink interface

RouterOS 7RouterOS 6


Kontrola: vidíme 1x neighbor

RouterOS 7RouterOS 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 /44.

/ipv6 route
add comment="Souhrnna agregovana routa" distance=1 dst-address=2a01:168:5800::/44 type=unreachable


Zadat filtr na odchozí routy šířené přes OSPF ven. Žádný subnet menší než /48 nesmí ven. 

/routing filter
add action=discard chain=ospf-out prefix-length=49-128

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) .

Máme tam "hodně" 90+ rout z celé hkfree sítě.


Dopingáme se na DNS

[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.

/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