guida per gli sviluppatori nftlb

Visualizza categorie

guida per gli sviluppatori nftlb

1 min letto

Panoramica #

nftlb si basa sullo stack di rete Linux netfilter/nftables. Questo nuovo stack offre nuovi concetti e funzionalità necessari per integrarlo nell'attuale architettura di bilanciamento del carico.

Questo articolo ha lo scopo di fornire una visione d'insieme su come sono progettati il ​​percorso dati di bilanciamento del carico nftables e il percorso di controllo.

Ganci del percorso dati #

Questi sono gli hook Netfilter che utilizza nftlb, sfruttando le catene configurabili. Nuovi concetti come l'offload di tracciamento delle connessioni devono essere inclusi per accelerare le connessioni inoltrate stabilite ai back-end.

                                                                  ------------ | DNSBL | ------------ | ingresso coda | prerouting avanti postrouting ------------ ------------- -------------- -------- ---- ------- -------------- ------- | filtro | filtro | filtro | | filtro | nat | | filtro | | nat | | 0| 50-99 | 100| | -150 | 0| | 0| | 100| --> | | | Politiche Sec |-( Conntrack )-> | Limiti secondi | |-( Routing )-> | | --> | | | Clustering | Tabelle di flusso | DSR | VS{} | Aiutanti | dNAT | VS{} | Scarico del flusso | | sNAT | | | | dNAT inquieto | | Segni | | -------------- ------- ------------ ------------- ---- ---------- ------------ ------- 

ingresso #

Filtro (0): Riservato alla gestione del clustering. Non ancora incluso in nftlb.
Filtro (50-99): Riservato per l'accelerazione delle tabelle di flusso. Non ancora incluso in nftlb.
Filtro (100): Riservato, in ordine, per: Politiche di sicurezza (blacklist e whitelist), restituzione diretta del server e topologie dNAT senza stato.

PREROUTING #

Filtro (-150): Riservato per i limiti di sicurezza per servizi virtuali o per back-end come: numero massimo di connessioni stabilite, limite di TCP RST al secondo, limite di TCP SYN al secondo, caduta di connessioni TCP non rigide, coda al servizio DNSBL, servizio virtuale e segni di backend , utilizzo di helper, registrazione delle connessioni di input per servizio virtuale.
(0) nat: Riservato alla manipolazione NAT di destinazione.

inoltrare #

(0) filtro : riservato per lo scarico del flusso. Non ancora incluso in nftlb.

POSTROUTING #

(100) nat : riservato per la manipolazione del NAT di destinazione.

Percorso di controllo #

Il percorso di controllo nftlb è progettato come un demone che fornisce a un semplice server http un'API o un binario autonomo che accetta un file di configurazione in formato JSON.

                ------------- traduzione ------------- -------- API JSON | | objs in nft | | collegamento in rete | | ----> | server http | --------------> | libnftables | --------> | nocciolo | | | | | | | | ------------- | ------------- -------- | collegamento in rete | ---------------------------------------

📄 Scarica questo documento in formato PDF #

    EMAIL: *

    Offerto da BetterDocs