Wpis z mikrobloga

#siecikomputerowe #sieci #mikrotik

taka sprawa jest ;) skonfigurowałem sobie na mikrotiku (rb3011uias-rm) eth1 jako wan1, eth2 jako wan2, połączyłem je razem w bonding balance rr. wszystko fajnie, dhcp client pobrał sobie ip z wan1, route lista dodała sobie nowe wpisy i wyglądają tak:

DAS 0.0.0.0/0 (gateway 192.168.1.1 reachable bonding 1) //tj. brama z wan1
DAC 192.168.0.0/20 (bonding 1 reachable) //dla uzyskania dostępu do adresów w obrębie wan1
AS 192.168.16.0/24 (WAN2 reachable) //dodałem ręcznie dla uzyskania dostępu do adresów w obrębie wan2
DAC 192.168.88.0/24 (bridge reachable) // tj. sieć mikrotika, w brigu są eth3-eth10.

Moje pytanie: z kompa z sieci mikrotika nic nie działa ... żaden ping, żaden adres nawet ten z sieci 192.168.0.0/20, jak zrobię pinga albo tracerta z poziomu WinBox'a Mikrotika to oczywiście pingi odpowiadają, tracert zwraca poprawne trasy. Czy coś jest źle ustawione w Route List albo w bridge1?

  • 10
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@tomix: po „drugiej stronie” wanow masz urządzenie które jest świadome twojego bondinga? Czy to dwóch kompletnie różnych dostawców internetu?
  • Odpowiedz
@sz__po: nie są świadome, to dwóch przypadkowych dostawców. w przypadku "upadku" wan1 bonding powinien kierować ruch na wan2. warunek sprawdzania dostępności wan1 to np. ping pod wskazany ip.
@brokenik: chciałbym uzyskać to co wyżej napisałem. tryb pracy bondingu (w moim przypadku balance rr mi to właśnie zasugerował - w sumie balancing bkp też mi się podobało).

panowie, co zrobiłem źle?
  • Odpowiedz
@tomix: Bondingiem tego nie załatwisz - to działa wartstwę niżej. Ogólnie to dosyć ciężkie zagadnienie w przypadku dwóch dostawców bez BGP. Zależy ci na rozłożeniu ruchu, czy zapewnieniu niezawodności?
  • Odpowiedz
@sz__po: zamysł był ogólnie taki żeby mieć dostęp do lokalizacji z zewnątrz za pomocą redundantnych łącz dwóch dostawców i to się udało. ale potem sobie pomyślałem, że skoro mam dostępne dwa wany to zrobię z nich jeszcze jakiś użytek i chciałbym żeby w razie awarii wan1 ruch się przełączył na wan2. wydaje mi się, że to prostsza konfiguracja niż balancing. poza tym wan2 jest taryfikowany, więc tym bardziej powinien być
  • Odpowiedz
@tomix: Najłatwiej i najszybciej, to dodać zainstalować dwie trasy do 0.0.0.0/0 via dwóch różnych dostawców z różnym parametrem "distance". W dhcp-client i w ppp-client masz parametr "default-route-distance". W momencie w którym zerwie się sesja lub stracisz adres z dhcp, zostanie tylko jedna trasa i nią poleci ruch do internetu.

Nie rozwiązuje to problemu awarii w szkielecie operatora. Możliwa jest sytuacja w której będziesz miał sesje ppp, czy adres ip z
  • Odpowiedz
@sz__po: dla siebie, hobbstycznie. tworzenie dwóch tras 0.0.0.0/0 nie do końca spełni moje oczekiwania, ponieważ od obu dostawców mam także routery i dhcp-client na mikrotiku na eth1 i eth2 od nich otrzyma adres. nie będzie to oznaczać, że łącze jest sprawne, poza tym sam wspominałeś o ew. awarii w sieci szkieletowej. możesz mi nieco szerzej wyjaśnić ten bondingr, czemu w moim przypadku to nie zadziałało skoro miałem poprawny adres dhcp
  • Odpowiedz
@tomix: W zasadzie sam odpowiedziałeś sobie na pytanie, czemu bonding nie działa jak powinien. Bonding, za manualem, jest "a technology that allows aggregation of multiple ethernet-like interfaces into a single virtual link, thus getting higher data rates and providing failover.". Czyli pozwala na agregacje i failover linku, nie wartstwy IP. To, że dostałeś adres IP z DHCP, wynika z tego, że po prostu miałeś pod bondingiem aktywny jeden z interfejsów.
Manual:Interface/Bonding

Nie ma innego rozwiązania, niż manipulacja trasami w tablicy routingu i wszystie rozwiązania HA i FailOver dotyczące IP działają na tym mechanizmie, nawet BGP. Musisz zrobić tak jak napisałem, czyli zainstalować dwie trasy domyślne, najlepiej w różnych tablicach routingu (np w isp1 i isp2). Aby to zrobić, ustaw dla isp1 default-route-distance na 201, dla isp2 na 202. Następnie przy pomocy route filters, musisz dodać filtr który zmodyfikuje trasy do isp1 i isp2, tak aby znalazły się w innych tablicach routingu. Będzie to coś w stylu:

/routing filters add chain=dynamic-in distance=201 prefix=0.0.0.0/0
  • Odpowiedz
@sz__po: dzięki wielkie za obszerne wyjaśnienia :) szukałem po google, ale po angielsku więc artykuł z sekuraka był poza moim zasięgiem :p
jeszcze raz wielkie thx.
  • Odpowiedz