MikroTik

Ezen az oldalon a MikroTik eszközökről, ezen belül is leginkább a forgalomirányítókról (azaz útválasztókról, angolul: router) vannak leírások.

mikrotik_logo_white

Az oldal tartalma folyamatosan bővítve van.
A képek a WinBox 3.18-as verziójában készültek.


Konfigurációs beállítások parancssorosan és grafikusan

Terminal ablak tartalmának tisztítása

  • billentyűvel:
    F5
  • billentyűkombinációval:
    Ctrl + L

Az előzményesen bevitt parancsokat nem törli ez a művelet.


Terminal parancsok kiegészítése

  • billentyűvel:
    Tab

Az eszköz nevének megadása

  • paranccsal:
    /system identity set name=pelda
  • grafikusan:
    mikrotik_system_identity_name_01
    mikrotik_system_identity_name_02

Az eszközön beállított idő megtekintése

  • paranccsal:
    /system clock print
  • grafikusan:
    mikrotik_system_clock_print_01.png

Az eszköz újraindítása

  • paranccsal:
    /system reboot
  • A “Reboot, yes? [y/N]:” kérdésnél az Y billentyű lenyomása szükséges az újraindítás megerősítéséhez.

  • grafikusan:
    mikrotik_system_reboot_01.png
    mikrotik_system_reboot_02.png

Az eszköz leállítása

  • paranccsal:
    /system shutdown
  • A “Shutdown, yes? [y/N]:” kérdésnél az Y billentyű lenyomása szükséges a leállítás megerősítéséhez.

  • grafikusan:
    mikrotik_system_shutdown_01.png
    mikrotik_system_shutdown_02.png

DHCP-kliens beállítása adott interfészen

  • paranccsal:
    /ip dhcp-client add add-default-route=yes dhcp-options=hostname,clientid disabled=yes interface=interface_name use-peer-dns=yes use-peer-ntp=yes
  • grafikusan:
    mikrotik_ip_dhcp_client_01.png
    mikrotik_ip_dhcp_client_02.png
    mikrotik_ip_dhcp_client_03.png

DNS szerver(ek) beállítása az eszközön

  • paranccsal:
    /ip dns set servers=8.8.8.8,8.8.4.4
  • grafikusan:
    mikrotik_ip_dns_01.png
    mikrotik_ip_dns_02.png

NTP szerver(ek) beállítása az eszközön

    Ha az “ntp” csomag telepítve van, akkor ezen beállítás előtt tiltani vagy törölni kell azt!

  • paranccsal:
    /system ntp client set enabled=yes server-dns-names=time.kfki.hu,hu.pool.ntp.org
  • grafikusan:
    mikrotik_system_sntp_client_01.png
    mikrotik_system_sntp_client_02.png

Időzóna beállítása az eszközön

  • paranccsal:
    /system clock set time-zone-name=Europe/Budapest
  • grafikusan:
    mikrotik_system_clock_time_zone_01.png
    mikrotik_system_clock_time_zone_02.png

Új felhasználó hozzáadása

  • paranccsal:
    /user add name=felhasznalo password=jelszo group=full address=192.168.1.0/24
  • grafikusan:
    mikrotik_system_users_01.png
    mikrotik_system_users_02.png
    mikrotik_system_users_03.png

Csomag(ok) hozzáadása

    Csomag hozzáadásához le kell tölteni az eszközhöz a megfelelő csomagpakkot (Extra packages) a MikroTik weboldaláról, majd fel kell másolni a telepíteni kívánt csomagot az eszköz tárhelyére (Files). Ezután újra kell indítani az eszközt és ezzel a csomag telepítve is lesz az eszközre. Ha a csomag nem települ fel az újraindítás után, akkor érdemes megnézni az eszköz naplóját (Log) a hiba kiderítése érdekében.

  • grafikusan:
    mikrotik_files_add_packages_01.png
    Az “npk” kiterjesztésű fájlt be kell húzni a WinBox File List ablakába (drag and drop módszerrel) a feltöltéshez/felmásoláshoz.
    mikrotik_files_add_packages_02.png

Szolgáltatás(ok) kikapcsolása

  • paranccsal:
    /ip service disable api,api-ssl,ftp,telnet,www,www-ssl
  • grafikusan:
    mikrotik_ip_services_01.png
    mikrotik_ip_services_02.png

Bridge létrehozása és port(ok) hozzáadása

  • paranccsal:
    Bridge létrehozása
    /interface bridge add name=bridge1

    Interfész hozzárendelés a létrehozott bridge-hez
    /interface bridge port add bridge=bridge1 interface=ether2

  • grafikusan:
    mikrotik_bridge_01.png
    mikrotik_bridge_02.png
    mikrotik_bridge_03.png
    mikrotik_bridge_04.png
    mikrotik_bridge_05.png

IP-cím adása interfésznek

  • paranccsal:
    /ip address add address=172.16.10.1/24 interface=bridge1 network=172.16.10.0
  • grafikusan:
    mikrotik_ip_addresses_01.png
    mikrotik_ip_addresses_02.png
    mikrotik_ip_addresses_03.png

DHCP-szerver létrehozása és hozzáadása interfészhez

  • paranccsal:
    Pool létrehozása
    /ip pool add name=dhcp_pool0 ranges=172.16.10.10-172.16.10.200
    (Azon IP-cím tartomány, amelyből a szerver címeket ad a klienseknek.)

    DHCP-szerver tényleges létrehozása
    /ip dhcp-server add address-pool=dhcp_pool0 disabled=no interface=bridge1 lease-time=1w name=dhcp1 relay=172.16.10.1

    Az IP-címen kívüli konfigurácios beállítások, amelyeket megkapnak a kliensek
    /ip dhcp-server network add address=172.16.10.0/24 dns-server=8.8.8.8,8.8.4.4 gateway=172.16.10.1

  • grafikusan:
    mikrotik_ip_dhcp_server_01.png
    mikrotik_ip_dhcp_server_02.png
    mikrotik_ip_dhcp_server_03.png
    mikrotik_ip_dhcp_server_04.png
    mikrotik_ip_dhcp_server_05.png
    mikrotik_ip_dhcp_server_06.png
    mikrotik_ip_dhcp_server_07.png
    mikrotik_ip_dhcp_server_08.png

MAC-szerver (Telnet, WinBox, Ping) kikapcsolása

  • paranccsal:
    Telnet kikapcsolása mindegyik interfészen
    /tool mac-server set allowed-interface-list=none

    WinBox kikapcsolása mindegyik interfészen
    /tool mac-server mac-winbox set allowed-interface-list=none

    Ping szerver kikapcsolása
    /tool mac-server ping set enabled=no

  • grafikusan:
    mikrotik_tools_mac_server_01.png
    mikrotik_tools_mac_server_02.png
    mikrotik_tools_mac_server_03.png
    mikrotik_tools_mac_server_04.png
    mikrotik_tools_mac_server_05.png
    mikrotik_tools_mac_server_06.png
    mikrotik_tools_mac_server_07.png

Tűzfal címlista létrehozása

  • paranccsal:
    Lista létrehozása, amely a helyi hálózat összes címét tartalmazza
    /ip firewall address-list add address=172.16.10.0/24 list=LAN

    Lista létrehozása, amely az összes címet tartalmazza (internet)
    /ip firewall address-list add address=0.0.0.0/0 list=WAN

  • grafikusan:
    mikrotik_ip_firewall_address_lists_01.png
    mikrotik_ip_firewall_address_lists_02.png
    mikrotik_ip_firewall_address_lists_03.png
    mikrotik_ip_firewall_address_lists_04.png

NAT beállítása

  • paranccsal:
    1. féle megoldás
    /ip firewall nat add action=masquerade chain=srcnat dst-address=0.0.0.0/0
    (A képeken ez a megoldás van végigvezetve.)

    2. féle megoldás
    /ip firewall nat add chain=srcnat action=masquerade out-interface=interface_name

  • grafikusan:
    mikrotik_ip_firewall_nat_01.png
    mikrotik_ip_firewall_nat_02.png
    mikrotik_ip_firewall_nat_03.png
    mikrotik_ip_firewall_nat_04.png

NAT – Porttovábbítás (Port forwarding) beállítása

  • paranccsal:
    /ip firewall nat add action=dst-nat chain=dstnat dst-port=80 protocol=tcp to-addresses=172.16.10.5 to-ports=80
  • grafikusan:
    mikrotik_ip_firewall_nat_port_forwarding_01.png
    mikrotik_ip_firewall_nat_port_forwarding_02.png
    mikrotik_ip_firewall_nat_port_forwarding_03.png
    mikrotik_ip_firewall_nat_port_forwarding_04.png

Interfész engedélyezése és letiltása

  • paranccsal:
    Interfészlista kiíratása
    /interface print

    Interfész engedélyezése
    /interface enable 0

    Interfész letiltása
    /interface disable 0

  • grafikusan:
    mikrotik_interface_enable_disable_01.png
    mikrotik_interface_enable_disable_02.png

Teljes konfiguráció mentése szkriptfájlként

  • Terminal ablak megnyitása a WinBox-ban:
    mikrotik_export_file_01.png
  • Szkriptfájl létrehozása paranccsal:
    export file=cfg_backup
    mikrotik_export_file_02.png
  • A létrehozott szkriptfájl a “Files” menüpontban fog megjelenni, innét lehet drag and drop módszerrel letölteni/átmásolni a WinBox-ot futtató számítógépre.
    mikrotik_export_file_03.png

Szkriptfájl megtekintése Notepad++-ban

Kiegészítés a “Teljes konfiguráció mentése szkriptfájlként” részhez.

A szkriptfájl átlátható megjelenítése érdekében érdemes hozzáadni a Notepad++-hoz a szintaxisokat kiemelő témát és nyelvet. A MikroTik forumán található posztban egy ilyen megoldás tölthető le, amelyet ingyenesen használhat bárki. Hivatkozás: https://forum.mikrotik.com/viewtopic.php?t=141603


Sávszélesség tesztelése a MikroTik Bandwidth Test alkalmazás segítségével

Ez az alkalmazás már nem elérhető a MikroTik hivatalos weboldalán, de a hivatkozás birtokában még bárki letöltheti.
Direkt link a letöltéshez: https://mikrotik.com/download/btest.exe

Kép az alkalmazásról:
mikrotik_bandwidth_test_01.png


Sávszélesség teszt szerver kikapcsolása

  • paranccsal:
    /tool bandwidth-server set enabled=no
  • grafikusan:
    mikrotik_tools_btest_server_disable_01.png
    mikrotik_tools_btest_server_disable_02.png

Failover megvalósítása egyetlen távoli kiszolgáló ellenőrzéssel a Netwatch eszköz segítségével

Load Balancing nélkül

  • paranccsokkal:
    Netwatch szkriptek létrehozása, amelyek ki- vagy bekapcsolják az alapértelmezett útvonalakat attól függően, hogy elérhetőek e a távoli kiszolgálók. (Jelen esetben ezek a Google publikus DNS-szerverei.) A szkriptek a kommentek alapján működnek, így fontos ezekre odafigyelni itt és a következő lépéseknél is.
    /tool netwatch
    add down-script="/ip route disable [find comment=ISP1]" host=8.8.8.8 interval=10s timeout=1000ms up-script="/ip route enable [find comment=ISP1]"
    add down-script="/ip route disable [find comment=ISP2]" host=8.8.4.4 interval=10s timeout=1000ms up-script="/ip route enable [find comment=ISP2]"

    Alapértelmezett útvonalak létrehozása mindkét internetszolgáltató felé. Az internetszolgáltatók alapértelmezett átjáróit kell megadni.
    /ip route add
    check-gateway=ping comment=ISP1 distance=1 gateway=10.10.10.1
    check-gateway=ping comment=ISP2 distance=2 gateway=20.20.20.2

    Útvonalak létrehozása annak érdekében, hogy a Netwatch minden távoli kiszolgálót egy másik útvonalon (vagy átjárón) keresztül pingeljen.
    /ip route add
    add check-gateway=ping comment="Netwatch ISP1" distance=1 dst-address=8.8.8.8/32 gateway=10.10.10.1
    add check-gateway=ping comment="Netwatch ISP2" distance=1 dst-address=8.8.4.4/32 gateway=20.20.20.2

    Ha legalább az egyik internetszolgáltató szélessávú kábeles (cable broadband), akkor a DHCP kliens szkript segítségével a fenti útvonalak automatikusan létrehozhatóak.
    Terminalba bemásolható szkript:
    (Feltételezve, hogy a DHCP kliens már létre lett hozva korábban és ez csak módosítás rajta.)

    /ip dhcp-client set 0 script="/ip route\r\
    \nremove [find comment=\"ISP1\"]\r\
    \nremove [find comment=\"Netwatch ISP1\"]\r\
    \nadd check-gateway=ping comment=ISP1 distance=1 gateway=[/ip dhcp-client \
    get 0 gateway]\r\
    \nadd check-gateway=ping comment=\"Netwatch ISP1\" distance=1 dst-address=\
    8.8.8.8/32 gateway=[/ip dhcp-client get 0 gateway]"

    Grafikusan bemásolható szkript:
    /ip route
    remove [find comment="ISP1"]
    remove [find comment="Netwatch ISP1"]
    add check-gateway=ping comment=ISP1 distance=1 gateway=[/ip dhcp-client get 0 gateway]
    add check-gateway=ping comment="Netwatch ISP1" distance=1 dst-address=8.8.8.8/32 gateway=[/ip dhcp-client get 0 gateway]

    Ha mindkét internetszolgáltató szélessávú kábeles (cable broadband), akkor a másik DHCP kliens szkript az alább látható lesz.
    Terminalba bemásolható szkript:
    (Feltételezve, hogy a DHCP kliens már létre lett hozva korábban és ez csak módosítás rajta.)

    /ip dhcp-client set 1 script="/ip route\r\
    \nremove [find comment=\"ISP2\"]\r\
    \nremove [find comment=\"Netwatch ISP2\"]\r\
    \nadd check-gateway=ping comment=ISP2 distance=2 gateway=[/ip dhcp-client \
    get 1 gateway]\r\
    \nadd check-gateway=ping comment=\"Netwatch ISP2\" distance=1 dst-address=\
    8.8.4.4/32 gateway=[/ip dhcp-client get 1 gateway]"

    Grafikusan bemásolható szkript:
    /ip route
    remove [find comment="ISP2"]
    remove [find comment="Netwatch ISP2"]
    add check-gateway=ping comment=ISP2 distance=2 gateway=[/ip dhcp-client get 1 gateway]
    add check-gateway=ping comment="Netwatch ISP2" distance=1 dst-address=8.8.4.4/32 gateway=[/ip dhcp-client get 1 gateway]

  • grafikusan:
    Hamarosan…

Vázlatos rész, formázás nélkül

Failover megvalósítása egyetlen távoli kiszolgáló ellenőrzése esetén:
(Szkript nélküli megoldás.)
/ip route
add check-gateway=ping distance=1 gateway=8.8.8.8
add check-gateway=ping distance=2 gateway=8.8.4.4
add distance=1 dst-address=8.8.4.4/32 gateway=10.10.23.2 scope=10
add distance=1 dst-address=8.8.8.8/32 gateway=10.10.13.1 scope=10

Failover megvalósítása több távoli kiszolgáló ellenőrzése esetén:
/ip route
add comment=ISP1 distance=1 gateway=10.1.1.1
add comment=ISP2 distance=2 gateway=10.2.2.2
add comment="Route to 1.0.0.1 via Gateway 10.10.23.2" distance=1 dst-address=\
1.0.0.1/32 gateway=10.10.23.2 scope=10
add comment="Route to 1.1.1.1 via Gateway 10.10.13.1" distance=1 dst-address=\
1.1.1.1/32 gateway=10.10.13.1 scope=10
add comment="Route to 8.8.4.4 via Gateway 10.10.23.2" distance=1 dst-address=\
8.8.4.4/32 gateway=10.10.23.2 scope=10
add comment="Route to 8.8.8.8 via Gateway 10.10.13.1" distance=1 dst-address=\
8.8.8.8/32 gateway=10.10.13.1 scope=10
add check-gateway=ping comment="Virtual Hop 10.10.13.1 via Gateway 8.8.8.8" \
distance=1 dst-address=10.1.1.1/32 gateway=8.8.8.8 scope=10
add check-gateway=ping comment="Virtual Hop 10.10.13.1 via Gateway 1.1.1.1" \
distance=1 dst-address=10.1.1.1/32 gateway=1.1.1.1 scope=10
add check-gateway=ping comment="Virtual Hop 10.10.23.2 via Gateway 8.8.4.4" \
distance=1 dst-address=10.2.2.2/32 gateway=8.8.4.4 scope=10
add check-gateway=ping comment="Virtual Hop 10.10.23.2 via Gateway 1.0.0.1" \
distance=1 dst-address=10.2.2.2/32 gateway=1.0.0.1 scope=10

Eszköz helyreállítása:
Virtuális környezetben (VMware Workstation 15 Player)
Az eszközt le kell állítani. Leállítása után el kell indítani a Netinstall szoftvert egy olyan gépen, ami egy hálózatban van az eszközzel. X86 főcsomagot (.npk) le kell tölteni a MikroTik weboldaláról. Az eszközt el kell indítani és gyorsan meg kell nyomni az F2 billentyűt a BIOS-ba való belépés miatt. Itt a bootsorrendet úgy kell beállítani, hogy a hálózati adapter(ek) legyen(ek) elöl. Az újraindítás után az eszköz látható lesz a Netinstall szoftverben, ahol a Packages résznél ki kell tallózni a korábban letöltött csomagfájlt (.npk). Ezután ki kell jelölni alatta a routeros-x86 nevü csomagot, majd az Install gombra szükséges kattintani.
Ha Waiting állapotba ragad, akkor a hálózati adaptert ki kell kapcsolni, majd újra be.
Fizikai eszköz esetén
Soros kábel szükséges a művelethez.
PuTTY beállításai:
Speed (baud): 115200
Data bits: 8
Stop bits: 1
Parity: None
Flow control: None
Az eszköz elindítása után 2 másodperc van a bootolásig, amit meg kell szakítani. Az “o – boot device” menüpontot szükséges kiválasztani és itt kell átállítani, hogy hálózatról (Netinstall) bootoljon.

További NAT műveletek
Action fül Action: redirect (például webproxy esetén)
Action fül Action: netmap (például publikus IP-cím hozzákapcsolása egy belső hálózatban lévőhöz)

Szolgáltatások kiíratása:
/ip service print

További szolgáltatások és eszközök kikapcsolása:
/tool bandwidth-server set enabled=no
/tool romon set enabled=no
/ip socks set enabled=no

SNMP kikapcsolása:
/snmp set enabled=no

Szomszédok -> Felderítés kikapcsolása

Tűzfalazás (Firewall):
IP > Firewall > Filter Rules > Add (Hozzáadás)
Elv: Minden tiltva van alapesetben, kivéve, amit engedélyezünk.
Példa: Winbox elérése csak a belső hálózatból
Szabály 0
General fül
Chain: input, Protocol: 6 (tcp), Dst. Port: 61000
Advanced fül
Src. Address List: (Egy létrehozott lista, amely a belső hálózat címét/címeit tartalmazza.)
Action fül
Action: accept
Szabály 1
General fül
Chain: input
Action fül
Action: drop
Szabály 2
General fül
Chain: output, Protocol: 6 (tcp), Src. Port: 61000
Dst. Address List: (Egy létrehozott lista, amely a belső hálózat címét/címeit tartalmazza.)
Action fül
Action: accept
Szabály 3
General fül
Chain: output
Action fül
Action: drop
Továbbfűzés (ugrás) a könnyebb átláthatóság érdekében:
IP > Firewall > Filter Rules > Add (Hozzáadás)
General fül
Chain: (Szükséges Chain kiválasztása.)
Action fül
Action: jump
Jump Target: (Meg kell adni egy nevet vagy kiválasztani egy Chain-t.)
Filter Rules > Add (Hozzáadás)
Chain: (Jump Target nevének kiválasztása.)

Alkalmazások (Layer 7) blokkolása:
Átmenő forgalom
IP > Firewall > Layer 7 Protocols > Add (Hozzáadás)
Name: (tetszőleges név)
Regexp: https://github.com/l7-filter/l7-protocols/tree/master/protocols
IP > Firewall > Filter Rules > Add (Hozzáadás)
General fül
Chain: forward
Dst. Address: 0.0.0.0/0
Advanced fül
Layer 7 Protocol: (fent megadott tetszőleges név kiválasztása)
Action fül
Action: drop

DHCP kliens hálózati címének felvétele tűzfal listába:
IP > DHCP Client > Létrehozott kliensen dupla kattintás > Advanced fül > Script
/ip firewall address-list remove [find list="ISP1 Network"]
/ip firewall address-list add address=[/ip address get [find interface="ether1"] address] list="ISP1 Network"

Failover/Load balancing:
Csomagmegjelöléssel
Kapcsolatok közötti megosztás (arányosan)
Segítség a beállításhoz (12. oldal): https://mum.mikrotik.com/presentations/TH18/presentation_5725_1534743837.pdf