Avanceret rutesystem i ZEVENET ADC

SENDT AF Zevenet | 23. november 2021

Oversigt

Routing er en mekanisme, hvor der er et udvalg af en sti for trafik i et netværk, hvor en pakke analyseres i kilde og destination og administreres af en specifik pakkevideresendelsesmekanisme, eller den samme, styring fra en netværksgrænseflade (indgang) til en anden (udgang).

Routing-implementering kan udføres fra forskellige enheder som switches, firewalls, servere, load balancers, virkelig enhver enhed, der er i stand til at modtage/sende pakker, for det laver ZEVENET en avanceret routing-implementering, supereffektiv og effektiv tilføjelsesmuligheder, der skal konfigureres som tilpasset efter behov, men hvordan fungerer et simpelt routingsystem, og hvordan implementerer ZEVENET Routing det, og hvordan bruger man de avancerede funktioner?

Grundlæggende

Ethvert simpelt routingsystem inkluderer en simpel routingtabel, denne tabel er ansvarlig for at kontrollere trafikregler i forhold til pakken, såsom hvor kilde-IP kommer fra pakken, eller hvor og destinations-IP skal pakken hen. Til sidst, hvis pakken ikke matcher nogen betingelse, vil den simple rutetabel videresende pakken til gatewayen, og pakken vil fortsætte stien.

Men hvad sker der, hvis der kræves mere avanceret adfærd? For eksempel, hvordan man sender pakken til forskellige gateways baseret på kildeadressen, eller endda videresender pakken, der kommer til det samme netværk baseret i komplekse algoritmer eller baseret i et markeringspakkesystem, så det er her, hvor ZEVENET-implementeringen tager sted at arbejde på følgende måde.

Når en pakke modtages, kontrolleres den mod en regeltabel, denne regeltabel er ansvarlig for at sende pakken til en anden routingtabel baseret på informationen i pakken, når først videresendelsesbeslutningen til routingtabellen er taget, kontrolleres pakken mod den givne rutetabel og til sidst sendt til næste hop som angivet i rutetabellen.

Udforskning af en simpel routing-konfiguration

Følgende diagram forklarer, hvordan et simpelt routingsystem tager beslutningen om pakkevideresendelse:

Pakken trænger ind i enheden gennem eth0 og routingtabellen tjekker pakkedestinationen, nu vil pakken blive sendt til en given grænseflade for at blive udgået. Denne måde at arbejde på er enkel og brugbar.

Udforskning af en avanceret routing-konfiguration i ZEVENET ADC

Som vi allerede har indikeret, inkluderer ZEVENET ADC-apparatet et avanceret routing-system, hvor pakken først "reguleres" for at blive besluttet, for det andet, hvilken tabel der sendes til den:

Routingmodulet i ZEVENET ADC blev designet med følgende idé:

Hvert netværksinterface (NIC'er, VLAN'er eller Bonding) administrerer sin egen Routing-tabel og gateway.
Trafikken, der når en VIP vil blive administreret af den samme routingtabel for indgående trafik (fra klient til belastningsbalancer) end for udgående trafik (fra belastningsbalancer til backend)
Hver pakke, der når en farm, er markeret, så dette mærke tages i betragtning for at omdirigere pakken til næste hop.
For at holde et routingsystem enkelt med et minimum antal statiske ruter, fordi de statiske ruter ville øge tilføjelse af flere grænseflader.
I tilfælde af at ADC'en kræver forbindelse til eksterne systemer, navigationsproxy, DNS, gennemgang af hotfixes osv., vil en dedikeret tabel blive brugt (hovedtabel).
Belastningsbalanceret trafik vil bruge andre tabeller end de primære til at adskille og isolere forskellige typer trafik.

De følgende linjer beskriver et virkeligt scenarie, en ZEVENET ADC er konfigureret med to NIC'er (eth0 og eth1).

Viser routingtabellen for NIC eth0:

ip route list table table_eth0

eth0 IP 192.168.100.10
eth0 NETMASKE 255.255.255.0
eth0 Gateway 192.168.100.5

Viser routingtabellen for NIC eth1:

ip route list table table_eth1

eth1 IP 192.168.101.10
eth1 NETMASKE 255.255.255.0
eth1 Gateway 192.168.101.5
VIP1 192.168.101.11

Standard-gatewayen for hovedbordet er 192.168.100.5.

Denne information kan vises med kommandoen:

ip route list table main

En klient når en virtuel IP 192.168.101.11 i en gård L4XNAT i havn 80, denne farm er blevet konfigureret til belastningsbalancerende trafik mod to backend-servere 192.168.200.20 og 192.168.200.21.

L4XNAT-farmen inde i LSLB-modulet (Local Service Load Balancing) giver en unik mærkeidentifikator til hver backend i hver farm, så så snart en pakke når VIP'en 192.168.101.11 i den virtuelle port 80 konfigureret i eth1 tildeler belastningsbalanceringsmodulet et mærke til pakken bare for at identificere den nye destination, i det følgende trin kontrollerer regelsystemet mærket i pakken, baseret på dette mærke ved routingsystemet til hvilken rutetabel pakken skal sendes.

For eksempel markerer l4xnat-gården en pakke med værdien 201, som identificerer backend 192.200.20 i gården konfigureret i Virtual IP 192.168.200.20 og virtuel port 80, nu er regeltabellen i stand til at videresende pakken til den tilsvarende rutetabel:

Rutereglerne kan listes med kommandoen:

ip rule list

Som det er vist i ID 25998 vil al trafik markeret med mærke 201 blive videresendt til tabel table_eth1, lad tjek indholdet af tabel eth1:

Nu forsøger pakken at nå backend 192.168.200.20, tjekker tabellen, er denne destinations-IP ikke tilgået direkte, så standardgatewayen vil blive brugt, og pakken vil blive videresendt til 192.168.101.5 som næste hop.

Med denne mekanisme markerer systemet først pakker for at identificere destinationen, og senere er det avancerede rutesystem i stand til at videresende pakken på en korrekt måde for at bekræfte, at den vil nå den korrekte destination.

Derudover kan Routing-systemet konfigureres og ændres som klientkrav. Hvis du ønsker at ændre regelsystemet, henvises du til web-GUI-sektionen NETVÆRK > Routing > Regler og i tilfælde af at du ønsker at ændre en eller anden routing-tabel, se venligst web-GUI-sektionen NETVÆRK > Routing > Tabeller.

Del på:

Dokumentation i henhold til GNU Free Documentation License.

Var denne artikel til hjælp?

Relaterede artikler