Przejdź do treści

Bez Internetu było by ciężko

Tak, tak… Dostęp do Internetu jest mi potrzebny by w ogóle ten projekt zaistniał. Na szczęście mam już Internet w domu, co więcej mam go nawet po WiFi. Nie mam niestety stałego publicznego adresu IP tylko dynamiczny (zmienny), ale to nie jest problemem.
Wszystko ładnie, pięknie jednak coś tu chcę zmienić.

Sprzęt od dostawcy Internetu

Urządzenia końcowe jaki dostajemy od dostawców Internetu są najróżniejsze. Niestety często one dla nas od strony konfiguracyjnej albo zablokowane albo znacznie ograniczone.

W moim przypadku właśnie tak jest. Funkcje routera do Internetu pełni u mnie dekoder Horizon. Popularne rozwiązanie gdzie jedno urządzenie dostarcza nam wiele usług. Na szczęście prawie zawsze takie urządzenia końcowe posiadają porty Ethernet. Daje mi możliwość podłączenia własnego routera, który będzie udostępniał mi Internet po całym mieszkaniu i którym będę mógł w pełni sam zarządzać.

Tak wiem, kolejne urządzenie do schowania, kolejny pożeracz prądu. Zakładam jednak, że po wyłączeniu funkcji WiFi na dekoderze i podpięciu własnego routera zużycie prądu nie zmieni się aż tak dużo. W sumie wiem to, bo sprawdziłem już wcześniej takie rozwiązanie.

Niestety idealnie być nie może. Dekoder Horizon nie ma możliwości ustawienia go w tryb Bridge by móc skonfigurować publiczny adres IP na własnym routerze. Ale i na to jest rozwiązanie.

Zanim jednak zajmę się dekoderem muszę wybrać jakiś własny router i go skonfigurować.

Nowy router

Wybrałem router firmy Mikrotik, głównie dlatego, że od ponad 10 lat mam z nimi do czynienia, lubię je i znam ich możliwości.
Model jaki wybrałem
do mojego mieszkania, to mały router Mikrotik hAP ac².

Dwuzakresowe WiFi 2,4 i 5 GHz, pięć portów Ethernet 10/100/1000, USB które może służyć do zewnętrznej pamięci masowej lub modemu 4G/LTE, a także urządzenie to obsługuje akcelerację sprzętową IPsec (przyda się później do VPN). W moim przypadku w zupełności wystarczy.
Cena urządzenia to około 180 zł (02/2021).

Router Mikrotik połączam do dekoderem. Port nr 1 routera (Internet) z portem Ethernet 1 dekodera.

Podłączenie dekodera z routerem

Podstawowa konfiguracja routera Mikrotik

W zasadzie opis konfiguracji powinien pasować do każdego modelu routera firmy Mikrotik, gdyż wszystkie one bazują na tym samym oprogramowaniu RouterOS. Różnice mogą wynikać jedynie z różnych wersji wgranego systemu no i z samego wyposażenia routera.

Przypomnę że mój model to Mikrotik hAP ac² a oprogramowanie RouterOS w wersji 6.48.

Na początek potrzebne mi będzie uruchomić na routerze dostęp do Internetu, przydzielanie adresów urządzeniom oraz wprowadzić podstawowe ustawienia zabezpieczeń.
Do konfiguracji routera potrzebuje jakiś komputer z systemem Windows oraz program Winbox, który ściągam wcześniej ze strony producenta – https://mt.lv/winbox64.

Podłączam komputer do routera pod port nr 2 (przez kartę sieciową) i uruchamiam program Winbox na komputerze.

W zakładce Neighbords program wykrywa mój router. Wybieram go i łączę się z nim jako admin (bez hasła).

Uruchomił się panel konfiguracyjny routera z okienkiem RouterOS Default Configuration.

Nie chcę by router ustawiał domyślną konfigurację wybieram więc przycisk Remove Configuration.

Ręczne ustawienie wszystkiego od podstaw pozwoli poznać trochę system RouterOS.

Mam możliwość konfiguracji routera w otwieranych okienkach (z menu widocznego z lewej strony) poprzez wpisywanie w poszczególne pola wartości i zaznaczania odpowiednich pól oraz druga możliwość poprzez wpisywanie poleceń w terminalu (New Terminal z menu po lewej stronie).
Pokazywać będę obie możliwości jednak w niektórych przypadkach tylko tą przez terminal gdyż będzie tak szybciej i
wygodniej.

Bridge

Łączę wszystkie interfejsy routera (poza portem eth1) w most jako sieć LAN.

Konfiguracja w okienkach:

Z menu wybieram Bridge

W oknie Brigde, zakładka Bridge, przycisk

Na zakładce General w polu Name wpisuje bridge1, wciskam OK

W oknie Bridge, zakładka Ports, przycisk

Na zakładce General w polu Interface wybieram ether2, a w polu Bridge wybieram bridge1, wciskam OK

Dodaje analogicznie kolejne porty dla interfejsów ether3, ether4, ether5, wlan1 i wlan2

Dodatkowo w oknie Bridge na zakładce Brigde wybieram przycisk Settings

Zaznaczam pole Use IP Firewall, wciskam OK


Konfiguracja przez terminal:

/interface bridge add name=bridge1
/interface bridge port add bridge=bridge1 interface=ether2
/interface bridge port add bridge=bridge1 interface=ether3
/interface bridge port add bridge=bridge1 interface=ether4
/interface bridge port add bridge=bridge1 interface=ether5
/interface bridge port add bridge=bridge1 interface=wlan1
/interface bridge port add bridge=bridge1 interface=wlan2
/interface bridge settings set use-ip-firewall=yes

Interface List

Definiuje nawy dla zestawów interfejsów w celu łatwiejszego dalszego zarządzania nimi.

Konfiguracja w okienkach:

Z menu wybieram Interfaces

W oknie Interfaces, zakładka Interface List, przycisk Lists (otwiera się nowe okienko), przycisk

W polu Name wpisuję LAN, wciskam OK

Powtórnie przycisk

W polu Name wpisuję WAN, wciskam OK

W oknie Interfaces, zakładka Interface List, przycisk

W polu List wybieram LAN, w polu Interface wybieram bridge1, wciskam OK

Powtórnie przycisk

W polu List wybieram WAN, w polu Interface wybieram ether1, wciskam OK


Konfiguracja przez terminal:

/interface list add name=LAN
/interface list add name=WAN

/interface list member add interface=bridge1 list=LAN
/interface list member add interface=ether1 list=WAN

IP

Ustawiam adresy IP na poszczególnych interfejsach.

Przy połączeniu dekodera Horizon i routera Mikrotik muszę zastosować podwójny NAT gdyż dekoder nie ma możliwości ustawienia go w trybie mostu (bridge mode).
Dlatego jako adres IP dla sieci LAN (bridge1) przyjmuje 10.0.0.1/8.
Natomiast port WAN (ether1) będzie miał adres IP – 192.168.1.2/24 (dekoder ma ustawioną adresację sieci na 192.168.1.0/24).

Konfiguracja w okienkach:

Z menu wybieram IP > Adresses

W oknie Address List przycisk

W polu Address wpisuję 10.0.0.1/8, w polu Interface wybieram bridge1, wciskam OK

Powtórnie przycisk

W polu Address wpisuję 192.168.1.2/24, w polu Interface wybieram ether1, wciskam OK


Konfiguracja przez terminal:

/ip address add address=10.0.0.1/8 interface=bridge1 network=10.0.0.0
/ip address add address=192.168.1.2/24 interface=ether1 network=192.168.1.0

DNS

Ustawiam adresy serwerów DNS.

Konfiguracja w okienkach:

Z menu wybieram IP > DNS

W oknie DNS Settings

W polu Servers wpisuję dwa adresy DNS mojego dostawcy Internetu (W moim przypadku 62.179.1.61 i 62.179.1.63. Drugi adres wpisuję w dodatkowym polu które aktywuję wciskając znak trójkącika na końcu pola), wciskam OK


Konfiguracja przez terminal:

/ip dns set servers=62.179.1.61,62.179.1.63

DHCP

Ustawiam serwer DHCP, który będzie przypisywał adresy IP wszystkim urządzeniom w sieci.

Ustawie pule adresów dla nowo wykrytych urządzeń, natomiast docelowo będę urządzeniom przypisywać później stałe adresy IP spoza tej puli.

Konfiguracja w okienkach:

Z menu wybieram IP > Pool

W oknie IP Pool przycisk

W polu Name wpisuję dhcp-pool, w polu Addresses wpisuję 10.0.0.200-10.0.0.220, wciskam OK

Z menu wybieram IP > DHCP Server

W oknie DHCP Server, zakładka DHCP, przycisk

W polu Name wpisuje server-dhcp, w polu Interface wybieram bridge1, w polu Lease Time wpisuje 1d 00:00:00, w polu Address Pool wybieram dhcp-pool, wciskam Enable i OK

W oknie DHCP Server, zakładka Networks, przycisk

W polu Address wpisuję 10.0.0.0/8, w polu Gateway wpisuję 10.0.0.1, w polu Netmask wpisuje 8, wciskam OK


Konfiguracja przez terminal:

/ip pool add name=dhcp-pool ranges=10.0.0.200-10.0.0.220
/ip dhcp-server add address-pool=dhcp-pool disabled=no interface=bridge1 lease-time=1d name=server-dhcpd
/ip dhcp-server network add address=10.0.0.0/8 gateway=10.0.0.1 netmask=8


Teraz zakładka Leases. Tu pojawia się na liście pierwsza pozycja z nadanym przez DHCP numerem IP komputerowi z którego konfiguruję router. Znaczy to że serwer DHCP działa.

Prawym przyciskiem myszy klikam na tej pozycji i wybieram z menu ostatnią pozycję Make Static. Wchodzę na tę pozycję i w oknie DHCP Leases zmieniam Address na 10.0.0.10 (spoza puli DHCP), wciskam przycisk Comment i w nowym okienku wpisuję nazwę dla tego urządzenia, zatwierdzam OK, ponownie OK zamykam okno DHCP Leases.

W ten sposób ręcznie ustawiać będę kolejne numery IP wszystkim nowym urządzeniom w sieci wykrytym przez DHCP oraz ustawiać ich nazwy (Comment) dla łatwiejszej późniejszej identyfikacji ich.

Route

Uruchamiam routing.

Konfiguracja w okienkach:

Z menu wybieram IP > Routes

W oknie Route List, przycisk

W polu Dst. Address wpisuję 0.0.0.0/0, w polu Gateway wpisuje 192.168.1.1 (adres IP bramki mojej internetowej w tym przypadku za bramkę robi dekoder Horizon), wciskam OK


Konfiguracja przez terminal:

/ip route add distance=1 gateway=192.168.1.1

NAT
Włączam NAT – Masquerade.

Mógłbym włączyć NAT dla całej sieci 10.0.0.0/8, jednak chcę aby Internet działał tylko na podawanych przeze mnie adresach IP przypisanych konkretnym urządzeniom. W tym celu skorzystam z listy adresowej.

Konfiguracja w okienkach:

Z menu wybieram IP > Firewall

W oknie Firewall zakładka Address Lists, przycisk

W polu Name wpisuje nazwę listy internet_on, w polu Address wpisuję 10.0.0.10 (adres urządzenia któremu chcę udostępnić Internet, w tym przypadku komputerowi z którego konfiguruję router), wciskam przycisk Comment i w oknie wpisuję nazwę tego urządzenia (np. Komputer), wciskam OK i ponownie OK

Każde następne urządzenie, które podłączę do sieci i któremu nadam stały adres IP w DHCP, dodam w analogiczny sposób do tej listy gdy będę chciał aby też miało dostęp do Internetu.

Dodaje teraz regułę która będzie włączać Internet adresom z listy – internet_on

W oknie Firewall, zakładka NAT, przycisk

Na zakładce General w polu Chain wybieram srcnat, w polu Out. Interface wybieram ether1

Na zakładce Advanced w polu Src. Address List wybieram moją liste o nazwie internet_on

Na zakładce Action w polu Action wybieram masquerade

Wciskam OK


Konfiguracja przez terminal:

/ip firewall address-list add address=10.0.0.10 list=internet_on
/ip firewall nat add action=masquerade chain=srcnat out-interface=ether1 src-address-list=internet_on

 

W tym momencie Internet powinien już działać na moim komputerze, który jest podłączony do routera po kablu.

Połączenie bezprzewodowe WiFi 2,4GHz i 5GHz

Teraz uruchomię jeszcze WiFi na tym routerze. Ustawie na początek hasła dostępu przez WiFi.

Konfiguracja w okienkach:

Z menu wybieram Wireless

W oknie Wireless Tables zakładka Security Profiles, przycisk

Na zakładce General w polu Name wpisuje wifi-pass, w polu Mode wybieram dynamic keys, zaznaczam pola Authentication Types: WPA2 PSK, oraz pola dla Unicast Ciphers i Group Ciphers: aes ccm w polu WPA2 Pre-Shared Key ustawiam mocne hasło do WiFi, zaznaczam jeszcze pole Disable PMKID.

Wciskam OK

Teraz uruchomię karty WiFi.

W oknie Wireless Tables zakładka WiFi Interfaces wybieram pozycję na liście wlan1 i otwieram ją.

Wciskam przycisk po prawej Advanced Mode oraz Enable

Na zakładce Wireless w polu Mode wybieram ap bridge, w polu Band wybieram 2GHz-B/G/N, w polu Channel Width wybieram 20/40MHz XX, w polu Frequency wybieram auto, w polu SSID wpisuję nazwę dla własnej sieci 2,4GHz, w polu Security Profile wybieram wifi-pass

Wciskam OK

Wybieram drugą pozycje z listy wlan2 i otwieram ją

Wciskam przycisk po prawej Advanced Mode oraz Enable

Na zakładce Wireless w polu Mode wybieram ap bridge, w polu Band wybieram 5GHz-A/N/AC, w polu Channel Width wybieram 20/40/80MHz eCee, w polu Frequency wybieram auto, w polu SSID wpisuję nazwę dla własnej sieci 5GHz, w polu Security Profile wybieram wifi-pass

Wciskam OK


Konfiguracja przez terminal:

/interface wireless security-profiles
add authentication-types=wpa2-psk eap-methods=”” group-ciphers=\
aes-ccm management-protection=allowed mode=dynamic-keys name=wifi-pass \
supplicant-identity=”” unicast-ciphers=aes-ccm wpa2-pre-shared-key=TUTAJ_MOCNE_HASLO

/interface wireless
set [ find default-name=wlan1 ] band=2ghz-b/g/n channel-width=20/40mhz-XX \
country=poland disabled=no distance=indoors frequency=auto installation=indoor mode=\
ap-bridge security-profile=wifi-passstation-roaming=\
enabled wireless-protocol=802.11 ssid=MOJA_NAZWA_DLA_24GHZ

/interface wirelessset [ find default-name=wlan2 ] band=5ghz-a/n/ac channel-width=\
20/40/80mhz-eCee country=poland disabled=no distance=indoors frequency=\
auto installation=indoor mode=ap-bridge security-profile=wifi-pass\
station-roaming=enabled wireless-protocol=802.11 ssid=MOJA_NAZWA_DLA_5GHZ

 

WiFi na routerze powinno teraz już działać.

Wprowadzę jeszcze parę ustawień dla większego bezpieczeństwa i funkcjonalności oraz po wyłączam niepotrzebne na ten moment funkcje na routerze.

Tu zaczynają się fajne możliwości, których zazwyczaj nie dają nam urządzenia końcowe od naszych dostawców Internetu.

Cloud i adres DDNS

Jest to bardzo przydatna funkcjonalność routerów Mikrotik.

Mój router Mikrotik ma bowiem własną publiczną dynamiczną domenę DDNS. Dzięki niej i odpowiedniej konfiguracji mogę się dostać do mojej sieci z Internetu, nawet jeżeli mam dynamiczny (zmienny) publiczny adres IP i go po prostu nie znam. Ale o tym innym razem. Na tą chwile włączę aby tą funkcjonalność.

Konfiguracja w okienkach:

Z menu wybieram IP > Cloud

Zaznaczam pole DDNS Enabled, wciskam przyciski Force Update, Apply i OK

W polu Public Address widzę teraz swój adres publiczny IP, a w polu DNS Name własną domenę publiczną.

Nazwa tej domeny nie jest może zbyt łatwa do zapamiętania, ale np. posiadając jakąś inną wykupioną własną, prostszą w nazwie domenę można przy niej dodać subdomene (np. mikrotik.moja_domena.pl) i przekierować ją na tą od Mikrotika dodając rekord DNS dla domeny (CNAME).

Dodam jeszcze w liście adresów jakąś nazwę dla mojego adresu publicznego IP na porcie WAN (ether1). Przyda się do konfigurowania reguł na firewallu.

Z menu wybieram IP > Firewall

W oknie Firewall na zakładce Address List, przycisk

W polu Name wpisuje WAN_IP, w polu Address wpisuje moją nazwę DNS od Mikrotika z okna Cloud (XXXXXX.sn.mynetname.net), wciskam OK


Konfiguracja przez terminal:

/ip cloud set ddns-enabled=yes
/ip firewall address-list list=WAN_IP add address=XXXXXX.sn.mynetname.net

Clock i SNTP Client

Ustawiam strefę czasową i serwer NTP by Mikrotik znał poprawny czas.

Konfiguracja przez terminal:

/system clock set time-zone-name=Europe/Warsaw
/system ntp client set enabled=yes primary-ntp=195.46.37.22

Services, Tools

Wyłączam niepotrzebne w tej chwili usługi, narzędzia i ustawiam niestandardowe porty dla SSH i WWW.

Konfiguracja przez terminal:

/ip service set telnet disabled=yes
/ip service set ftp disabled=yes
/ip service set www port=888
/ip service set ssh port=2222
/ip service set api disabled=yes
/ip service set api-ssl disabled=yes
/tool bandwidth-server set enabled=no
/ip dns set allow-remote-requests=no
/ip socks set enabled=no
/ip upnp set enable=no
/ip proxy set enabled=no
/tool mac-server set allowed-interface-list=LAN
/tool mac-server mac-winbox set allowed-interface-list=LAN

Firewall

Ustawiam podstawowe reguły ma firewallu.

Konfiguracja przez terminal:

/ip firewall filter
add action=accept chain=input comment=„defconf: accept established,related,untracked” connection-state=established,related,untracked
add action=drop chain=input comment=”defconf: drop invalid” connection-state=invalid disabled=yes
add action=accept chain=input comment=”defconf: accept ICMP” protocol=icmp
add action=accept chain=input comment=„defconf: accept to local loopback (for CAPsMAN)” dst-address=127.0.0.1
add action=drop chain=input comment=”defconf: drop all not coming from LAN” disabled=yes in-interface-list=!LAN
add action=accept chain=forward comment=”defconf: accept in ipsec policy” ipsec-policy=in,ipsec
add action=accept chain=forward comment=”defconf: accept out ipsec policy” ipsec-policy=out,ipsec
add action=fasttrack-connection chain=forward comment=”defconf: fasttrack” connection-state=established,related
add action=accept chain=forward comment=„defconf: accept established,related, untracked” connection-state=established,related,untracked
add action=drop chain=forward comment=”defconf: drop invalid” connection-state=invalid
add action=drop chain=forward comment=„defconf: drop all from WAN not DSTNATed” connection-nat-state=!dstnat connection-state=new disabled=yes in-interface-list=WAN

Password
Teraz najważniejsze. Ustawiam hasło do routera.

Z menu wybieram System > Password

Pole Old Password zostawiam puste (nie miałem do tej pory żadnego hasła).

W polach New i Confirm Password wpisuje mocne hasło.

Wciskam OK

 

Teraz logując się do routera Mikrotik będę używał login: admin i ustawionego nowego hasła.

Jest to podstawowa konfiguracja routera. Która na tą chwilę wystarczy aby w pełni zastąpić dotychczasowy dekoder w roli routera.

Zmiana konfiguracji na dekoderze Horizon

Teraz mogę wyłączyć WiFi na dekoderze Horizon oraz przekierować wszystkie porty na nim na router Mikrotik.

W przeglądarce wpisuję adres: http://192.168.1.1 (jest to lokalny adres IP dekodera) i loguję się do dekodera wpisując jako nazwę użytkownika: admin, i hasło: admin

Z górnego menu wybieram WIRELESS i w oknie Control ustawiam dla Wireless Card State wartość Disabled. Wciskam SAVE

Karta WiFi na dekoderze jest już wyłączona.

Teraz z górnego menu wybieram ADVANCED i z lewego menu kartę Forwarding

W polu Public Port Range wpisuję 1-65535, w polu Target IP Address wpisuję 192.168.1.2, w polu Target Port Range wpisuję 1-65535, w polu Protocol wybieram Both. Wciskam SAVE

W ten sposób przekierowuję wszelkie możliwe odwołania po moim publicznym adresie IP ustawionym na dekoderze na mój router Mikrotik.
Potrzebne to jest, gdyż tak jak już wspomniałem dekoder Horizon nie ma trybu Bridge.
Dzięki temu będę mógł dostawać się do mojej sieci z zewnątrz, a dokładniej bezpośrednio do mojego routera Mikrotik. Ale dokładniejsza konfiguracją wykorzystującą tą funkcjonalność, zajmę się innym razem jak już będę z tego chciał korzystać.

Podsumowanie

W ten oto sposób dekoder Horizon nie będzie już zarządzał moją wewnętrzną siecią LAN. Rolę tę pełnić teraz będzie router Mikrotik.
Daje mi on dużo więcej możliwości konfiguracyjnych, co na pewno się bardzo przyda w dalszym zarządzaniu całą moją siecią.

Wspomniałem już, że router jest na razie skonfigurowany w minimalnym zakresie, aby zapewnić podstawową funkcjonalność związaną z adresowaniem urządzeń w sieci oraz udostępnianiem Internetu na nich.
Jego konfigurację będę z czasem rozszerzał, gdy tylko będzie taka potrzeba.

Na ten moment muszę jeszcze podłączyć do routera wszystkie urządzenia, które wcześniej łączyły się z dekoderem (np. telewizor, telefon, laptop) i nadać im statyczne numery IP w DHCP aby łatwo je później identyfikować w sieci.
No i oczywiści dopisać je muszę do listy adresów we firewallu (internet_on), która zapewnia im dostęp do Internetu… bo bez tego było by ciężko.

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *