fbpx

Ograniczanie przepustowości interfejsów na routerze [konfiguracja MikroTik]

Speedtest przed i po zastosowaniu konfiguracji

Zdarzają się sytuacje, gdy chcemy ograniczyć ruch na routerze, np. ograniczenia przepustowości na wyjściu do Internetu (skonfigurowane za routerem) mogą skutecznie uniemożliwić korzystanie z Internetu wszystkim użytkownikom sieci. Aby temu zapobiec, można np. ograniczyć prędkość na wybranych lub wszystkich interfejsach w sieci wewnętrznej i zezwalać na większy ruch, gdy w wybranych godzinach mniej urządzeń korzysta z Internetu.

Przygotowanie

To musisz już mieć:

  • fizyczny router MikroTik ze skonfigurowaną działającą siecią lub wersja wirtualna CHR
  • co najmniej jedno podłączone urządzenie, które pozwoli wygenerować obciążenie na interfejsie w celu przetestowania konfiguracji

Konfiguracja

  1. Zaloguj się do routera korzystając z programu WinBox.
  2. W menu po lewej stronie wybierz Queues w celu otwarcia okna z listą kolejek Queue List.
  3. Pozostając w zakładce Simple Queues naciśnij ikonę Ikona MikroTik Add w celu dodania nowej prostej kolejki.
  4. Pozostając w zakładce General wypełnij formularz według wzoru definiując nazwę kolejki, cel (interfejsy lub adresy IP) oraz maksymalne prędkości wysyłania i pobierania. W razie potrzeby możesz też sprecyzować zakres czasowy, kiedy ma obowiązywać ograniczenie.

    Na zdjęciu są drastycznie niskie prędkości, aby móc pokazać, że konfiguracja działa. MikroTik CHR bez licencji ma ograniczenie do 1 Mbps na interfejs sieciowy. Wartości przekraczające 1 Mbps nie miałyby zastosowania.
  5. Przejdź do zakładki Advanced i wypełnij formularz według wzoru definiując dolny limit prędkości klienta. Podanie tych wartości zagwarantuje, że prędkość wysyłania i pobierania nie będzie niższa niż podana w tym polu.
  6. Naciśnij OK. Na liście Prostych Kolejek pojawiła się utworzona kolejka ograniczająca prędkość.

Testowanie konfiguracji

Test konfiguracji zostanie wykonany metodą obciążania interfejsów sieciowych. Najprościej to wykonać klientem speedtest-cli i połączyć się z najbliższym serwerem testowym speedtest.net.

Instalatory speedtest-cli znajdują się na stronie Speedtest CLI: Internet speed test for the command line.

Instalację na EVE-NG można wykonać tym onelinerem:

sudo apt-get install curlcurl -s && https://install.speedtest.net/app/cli/install.deb.sh | sudo bash &&sudo apt-get install speedtest

Instalacja na linuksach niezgodnych z powyższym skryptem:

mkdir speedtest && cd speedtest && wget https://install.speedtest.net/app/cli/ookla-speedtest-1.1.1-linux-x86_64.tgz && tar -xzvf *.tgz

Poleceniem speedtest -s[id_serwera] wykonujemy speedtest z konkretnym serwerem.

speedtest -s36249

Jak znaleźć ID serwera testowego

To może wydawać się ciężkie do zrealizowania. Standardowa metoda z parametrem –servers wyszukuje pobliskie serwery, ale nie zawsze znajduje te o które może nam chodzić. Najlepiej zrobić to ręcznie:

  1. Wejdź na stronę Speedtest od Ookla – globalny test prędkości łącza szerokopasmowego.
  2. Zostanie wyszukany optymalny serwer. Jeśli według Ciebie jest inaczej możesz zmienić na bardziej odpowiedni naciskając Zmień serwer.
  3. Naciśnij prawym przyciskiem myszy na nazwę serwera testowego i kliknij Kopiuj link.
  4. Wklej skopiowany link do edytora tekstu. Poniżej znajduje się przykładowy link. Pogrubioną czcionką został zaznaczony ID serwera:
    https://www.speedtest.net/api/js/perform-redirect?server_id=36249
    Ten numer należy wpisać zamiast [id_serwera].

Test prędkości na komputerze gospodarzu

Test prędkości jaki osiąga komputer gospodarz

Test prędkości na EVE-NG

Test prędkości jaki osiąga maszyna wirtualna z EVE-NG

Test prędkości na wirtualnym Ubuntu Server podłączonym do MikroTika CHR (free)

Przed zastosowaniem zmian
Po zastosowaniu zmian

Jak widać konfiguracja działa i ograniczenie prędkości zapobiega zrywaniu połączenia podczas speedtestu. 1 Mbps w teście przed jest związany ze wspomnianym wcześniej ograniczeniem licencyjnym MikroTika CHR.