Wpis z mikrobloga

Mirki czy zna się ktoś na BGP? Potrzebuje wiedzieć czy można za pomocą SNMP wyciągnać z routera (juniper srx) informacje przez którą ścieżkę idzie ruch.

Router ma dwa WANy (jedno zapasowe) chodzi o to by monitorować kiedy przerzuca się na backup. Czy PeerState będzie dobrym wyznacznikiem? Czy pokazuje jedynie najbliższego sąsiada? Chce wykluczyć sytuacje że będę widział że najbliższy ruter jest ok (czyli wartość 6 w PeerState?) ale dalej ruch nie wychodzi (bo np router ISP się wyłożył).

Help!

#bgp #siecikomputerowe #routing Zawołam jeszcze @brokenik
  • 10
@lupoo: Mówisz i jestem. @koob Ci napisał w jaki sposób w Juniperze sprawdzać "stan" sesji z sąsiadem. Sprawdzanie czy dalsze ścieżki są osiągalne - wydaje mi się, że ciężko będzie sprawdzić to przez SNMP - ale na pewno da się sprawdzić po SNMP ile prefiksów zostało zassanych i po tym możesz ew. monitorować czy gdzieś dalej coś się nie wysypało.
@brokenik: No tak też podejrzewałem. Popraw jeśli się mylę, router ma wpisane dwie drogi do jednej sieci, skąd wie i na jakiej podstawie określa że sieć docelowa jest nieosiągalna za pomocą ściezki nr 1 lub nr 2.
@lupoo: Przy BGP nie ma czegoś takiego jak Multi-Path lub Load Balancing - zawsze wybierana jest 1 ścieżka do danej sieci. Jeśli sieć jest nieosiągalna (bo coś się zepsuło) to dana ścieżka znika z rozgłoszeń BGP sąsiedniego routera.
@brokenik: Sąsiednim routerem jest jak rozumiem "Peer", to w takim razie musiałbym wyciągnąć info czy sąsiad posiada wpis z moją siecią docelową ale jak rozumiem takie pakiety latają pomiędzy routerami i nie sprawdze tego za pomoca SNMP.

Nie znam sie kompletnie na BGP więc stąd takie głupie pytania.
@lupoo:
Jak ruter wybiera sciezke ktora chce wyslac ruch: https://www.juniper.net/documentation/en_US/junos12.3/topics/reference/general/routing-ptotocols-address-representation.html
Czyli krotko mowiac porownywane sa atrybuty bgp - na ten proces mozesz wplywac manipulujac atrybutami.
Jak padnie ci sesja bgp z jednym peerem to ruch sie przepnie na innego. Jesli pierwszy peer straci jakies prefixy - bo padla mu sesja do innych ruterow to ci po prostu przestanie te prefixy przesylac po bgp. W takim scenariuszu w tablicy bgp zostanie wpis
@flor4s @brokenik @koob : Dzięki za podpowiedzi, mam trochę więcej info odnośnie mojego przypadku może to trochę rozjaśni:

W tym przypadku jak rozumiem to 1 oznacza że w tej chwili ruch idzie przez tego peera? Nie istnieje oid który to reprezentuje a po którym mógłbym zebrać to przez snmp? Tylko tyle by mi było trzeba. Jeśli moje rozumowanie jest poprwane

Przykład z PeerStatem jest słaby bo przy 2 peerach mam 6 (established)
@lupoo: Ten atrybut mówi o tym czy sesja z danym peerem jest aktywna (czy wymieniane są informacje o ściezkach)

Żeby sprawdzić czy danym peerem cokolwiek leci musisz prześledzić czy w tablicy routingu do danych tras pojawia się dany peer.

Taki przykład :

bird> show route for 8.8.8.8
8.8.8.0/24 via 195.191.170.134 on eth6 [EPIX_OpenPeering_Router1 2017-10-24 from 195.191.170.1] * (1000) [AS15169i]
via 91.198.97.114 on eth4 [EPIX_GlobalMIX 15:27:31] (1000) [AS15169i]
via 185.48.10.134 on eth5
@lupoo: Jest tak jak brokenik napisał - tutaj masz tylko informacje o stanie sesji BGP. Jeśli chcesz sprawdzić jak idzie ruch i masz wszystko w tablicy globalnej to możesz to sprawdzić komendą:
show route table inet.0 prefix
Gdzie prefix to adres IP którego ścieżkę chcesz sprawdzić.
Na sprzęcie junipera powinieneś dostać coś analogicznego do tego:
172.16.230.200/32 *[BGP/170] 4w1d 16:11:28, MED 100, localpref 200, from 10.0.2.12
AS path: ?, validation-state: unverified

via