nftlb ChangeLog
nftlb 1.1.0 (15. januar 2025) #
https://github.com/relianoid/nftlb/releases/tag/v1.1.0
– tillad flere gårde med de samme hjælpere
– rette tests
– ignorer rapporter
– omdøb zcutils til utils
– server: aktiver kun loopback-grænsefladen som standard
nftlb 1.0.9 (13. september 2023) #
https://github.com/relianoid/nftlb/releases/tag/v1.0.9
– Beskyt daemon-godkendelsesnøglen mod timingangreb
– Retter masseanvendelse af landbrugspolitikker med PATCH
nftlb 0.6 (31. marts 2020) #
https://github.com/relianoid/nftlb/releases/tag/v0.6
– gårde: deaktiver sletning af statiske sessioner efter nedlukning af gårde
– sessioner: slet statiske sessioner, når persistensstrukturen ændres
– gårde: retter grænser for gårdobjekter, der genindlæses
– backends: retter lav prioritet for start af backend med stateful objekt
– nft: rettelse af sletning af filterelementer, når de ikke er nødvendige
– server: retter sigfault under en dårlig anmodning
– server: return ikke fundet under en get-farm, der ikke findes
– politikker: tilbagefør brugte gårde i json-dump
– sessioner: retter backend-mærker, der bruges i sessionspersistens
– sessioner: understøttelse af sletning af tidsbestemte sessioner via API
– tests: tilføj pre- og post-script til hver testcase
– gårde: retter genindlæsning af tcpstrict og nfqueue
– server: foren API-fejlmeddelelser og tilføj detaljeret beskrivelse af fejlen
– server: retter sigsegv efter anmodning om ikke-eksisterende URI-nøgle
– gårde: rettelse af generering af hjælperregler
– nft: retter fremadrettet kortgenindlæsning baseret på backends
– src: anvender pre og pos handlingsrettet, når attributten er ændret
– nft: brug backend-mærker i forward chain
– backends: genindlæs farmen i tilfælde af opdatering af prioriteten for en backend, der ikke fungerer
– backends: slet ubrugt farmpointer i backends sæt prioritet
– backends: genberegn tilgængelige backends, når backend-prioriteten ændres
– src: fjern unødvendige fejlfindingsmeddelelser
– politikker: deaktiver udskrivning af automatiske parametre og undgå prioriteten -1
– backends: retter backend-handling, når den ikke er tilgængelig
– test: forbedrer API-testsystemet og fjerner forældet DESC-parameter
– config: undgå at udskrive ukendt nøgle som null
– nft: optimer statiske sessionsregler for at undgå at komme ind i dynamisk kort
– gårde: returner ikke fejl, når gården ikke behøver at blive linealiseret
– server: retter sigsegv ved returneret regelgenereringsfejl
– config: forbedrer parsing af fejlmeddelelser
– main: forenkle kontrol af tidligere nftlb-tabeller
– main: opdager og renser alle tidligere nftlb-tabeller
– nft: undgå at tømme hele nft-regelsættet, når du sletter alle gårde
– konfiguration: forbedrer API-svarmeddelelser
– nft: retter dynamiske persistensregler
– gårde: Ret den statsløse dnat-kildes MAC-adresse for at sikre en ensartet trafik
– server: rediger kildekoden for fuldt ud at understøtte ipv6
– sessioner: introducer understøttelse af statiske og dynamiske sessioner til DSR og statsløs DNAT
– backends: brug farmkildeadresse, når den er tilgængelig
– gårde: deaktiver netværksopdagelse, når loopback-netværksenheder er konfigureret
– tests: omdøb api-testmapper til et menneskeligt læsbart format
– tests: retter tests for at gennemtvinge en given etheradresse
– backends: rettelse af “force up status når config_error konfigureres”
– netværk: rettelse af etheradresseregistrering for ipv4 og ipv6
– gårde: rettelse af logniveau for nogle fejlfindingsmeddelelser
– backends: fremtving status ved konfiguration af config_error
– politikker: tilføj understøttelse af _family_-attributten for at introducere ipv6-politikker
– backends: sørg for at validere backends under kortgenerering
– elementer: startelement når det oprettes
– gårde: undgå at konfigurere en config_err-tilstand
– gårde: undgå for at sætte prioritet 0
– politikker: gem ikke elementer
– nft: retter dynamiske persistensregler
– netværk: introducer understøttelse af dual-stack i netværkslaget
– nft: rettelse af generering af ipv6-filterkæde
– nft: tilføj mulighed for at serialisere nft-kommandoer
– nft: retter flow-offload-testtilfælde
– nft: refaktoriser regler for præfiks til farmlog
– tests: ret flowoffload-testoutputtet
– landbrug: indfør støtte til aflastning af flow
– backends: slet ubrugt parameter i backend-switch
– nft: undgå at logge pr. virtuel tjeneste to gange
– sessioner: slet fejlfindingsmeddelelser
– sessioner: tilføj statisk og dynamisk sessionsunderstøttelse
– landbrug: tilføj støtte til lokale tjenester
– nft: refaktorering af kædebasegenerering for at tilføje understøttelse af fremadrettet kæde
– tests: rettelse af testfiler
– nft: forenkl genereringen af kæde- og servicenavne
– gårde: aktiver flere udgående grænseflader for statsløs dnat
– gårde: rettelse vil ikke herske over statsløs dnat uden backends
– landbrug: støtte til statsløse direkte klienter hos dnat
– gårde: reparer maskerade-bitten med maskerade
– gårde: fjern dobbeltgenerering af netværksgrænsefladeindeks
– backends: brug backend output-grænsefladen, når det er muligt
– backend: understøttelse af outputgrænseflade pr. backend
– readme: slet lavniveau netværksindgangsparametre
– backends: retter opkald af outputgrænseflade ved indstilling af en ny IP-adresse
– gårde: retter segmenteringsfejl ved konfiguration af statsløs dnat
– backends: tving til ét element, hvis backend'en er unikt identificeret
– nft: retter kildeadressekortlægning i farm single port
– elementer: ret udskiftning af elementer i politikker
– gårde: retter kildeadressekortlægning med virtuelle multiporttjenester
– nft: undgå sprintf over den samme buffer
– gårde: rettelse af stop af gården under sletning af tjeneste
– tests: tillader stop i et API-kald
– backends: retter backend-status, mens alle gårde fjernes
– backends: aktiver blandet kilde-natting pr. backend
– test: omstrukturer testsystemet for bedre vedligeholdelse
– politikker: opret sæt med automatisk sammenfletning som standard
– politikker: indlæs elementer, hvis politikken ikke er tom
– politikker: optimerer styringen af politikker
– nft: undgå nulmærker
– backends: retter backend med mark 0x0
– backends: retter genindlæsning af backends med kildeadresse
– gårde: rettelse af fejl ved parsing af objekt i niveau -1 med begrænsninger
– server: tilføj klientforespørgselslogoplysninger
– main: hent og udskriv segmentfejlsignaler
– tests: tilføj api-test for at ændre porten pr. backend
– tests: forbedrer API-testningen ved ikke at fjerne rapportfilerne, når de er ukendte.
– backends: aktiver maskering og konfigurerbar kildeadresse pr. backend
– gårde: retter objektherskerisering
– politikker: retter regler for oprettelse og sletning af politikker
– tests: tilføj API-tests til politikker
– gårde: reparer rulering, alt stopper efter wont rulering
– gårde: tilføj api-testtilfælde til sletning af gårde
– backends: rettelse af prioritetsgenerering efter sletning af noder
– tests: opret flere API-tests
– gårde: gør gårde sikre i rulerize-løkker
– backends: rettelse af prioritetsgenerering
– main: implementer daemon-tilstand
– tests: klassificer API-testsystemet
– nft: retter regenerering af filterbordet efter udskylning af gårde
– tests: nyt API-specifikt testsystem
– server: rettelse af regler ved sletning af en backend
– backends: rettelse af fejl i standard makrodefineret logpræfiks
– nft: fix mark print output i backends-kort
– src: tilføj understøttelse af logpræfiks
– tests: retter test-nft-output med de seneste ændringer
– backends: tilføj understøttelse af kildeadresse pr. backend
– readme: opdater rst rtlimit burst-indstilling
nftlb 0.5 (4. juni 2019) #
https://github.com/relianoid/nftlb/releases/tag/v0.5
– gårde: understøttelse af sikkerhedspolitikker for indgangstilstande
– backends: understøttelse af backend-port-natting
– backends: understøttelse af forbindelsesgrænser pr. backend
– nft: omskriv målere med tilstandsfulde sæt for grænser
– server: understøttelse af Expect 100-Continue i PUT-anmodninger
– server: rettelse af indholdslængdestyring for at indsamle anmodningen
– forbedre tilgængelighedsregnskab for backends
nftlb 0.4 (18. marts 2019) #
https://github.com/relianoid/nftlb/releases/tag/v0.4
Nye funktioner
– farms: tilføj persistens mellem klient og backend under en timeout
– politikker: understøttelse af sikkerhedspolitikker pr. virtuel tjeneste
– farms: understøttelse af kø af pakker til brugerområdet pr. tjeneste
– gårde: understøttelse af tcp-flowvalidering pr. tjeneste
– gårde: understøttelse af maksimalt etablerede forbindelser pr. virtuel tjeneste pr. kildeadresse
– gårde: understøttelse af tcp-nulstillinger pr. sekund tilladt pr. virtuel tjeneste pr. kildeadresse
– gårde: understøttelse af grænse for nye forbindelser pr. sekund pr. virtuel tjeneste og valgfri burst
– gårde: tilføj konfigurerbare hashingparametre
– src: understøttelse af sletning af alle gårde på én gang
Forbedringer
– nft: kode til generering af regler for refactoring-farm
– server: tilføj lang kropsstøtte
– config: parsing af json-værdier, hærdning
– nft: retter hjælperregler i henhold til protokollen
– readme: opdater den nye parameter tcp-strict for at undgå falske tcp-angreb
– gårde: aktiver MAC-opdagelse for statsløs DNA-deling
– main: skjul nøgleparameteren, når processen kører, af sikkerhedsmæssige årsager
– nft: adskil tjenester efter grænsefladenavn for indgangstilstande
– gårde: tving netværksdataene til at genindlæses, når den virtuelle IP ændres
– gård: sæt maskerade hvis kildeadressen er tom
– nft: tilføj prerouting filterkæde til markering og hjælpere
– buffer: fjern fejlfindingsmeddelelser
– farm: indstil standardplanlæggerparameter kun for hash-algoritme
– config: brug strengnøgler så meget som muligt
– readme: tilføj statsløs nat-tilstandsindstilling
– tests: tillader lancering af én test uden service
– buffer: retter kodeindrykning
– backends: kun handlingsrettet, hvis backend er tilgængelig
– backends: deklarer handlingsrettede funktioner
– buffer: understøttelse af skalerbar buffer
– backends: aktiver genstart af backends efter konfiguration
– nft: anvend nulstillingshandling pr. gård og backends
– nft: generaliser handlinger for tilføjelse eller sletning af postrouting-elementer
– gårde: omdøb gårdens source-addr-attribut i stedet for src-addr
– config: udskriv mærker i hex-format
– tests: understøttelse af lancering af tests via web-API
– build: flyt -lev til LDADD
– build: flyt præprocessorflag til CPPFLAGS
Fejlrettelser
– config: returnerer fejl, når et objekt ikke er blevet valgt
– backends: undgå at gå til config_error efter indstilling af dnat ip-adresser
– nft: retter statsløse dnat-regler, når input- og output-grænsefladerne er forskellige
– nft: retter servicenavn for statsløs nat
– backend: rettelse af backend-validering under automatiseret MAC-adresseanmodning
– netværk: beskyt dobbelt fri i håndtaget
– server: retter dobbelt fri segmentfejl
– backends: rettelse af backend-validering ved anvendelse af dsr-tilstand
– gårde: strim virtuelle grænseflader til indgangskæder
– nft: rettelse af tilføjelse af elementfilterregler ved genindlæsning
– nft: retter handlinger for statsløse dnat-regler
– nft: undgå brugen af filterkæder og backend-mærker til indtrængning
– nft: undgå tomme regler i filterkæden, når der ikke er nogen backends
– backends: anvend genindlæsning, hvis en backends tilstand ændres
– nft: retter skb-mærkeindsættelse fra ct-mærke i filterkæde
– nft: reparer flush og slet kædefilter
– nft: retter sletfiltertjeneste og -kæde
– nft: rettelse af sletning af elementer fra filterkæden
– nft: undgå regelgenerering, hvis der ikke er nogen backend tilgængelig
– backends: retter backend-tilgængelighed for ingress-tilstande
– logfiler: rettelse af det indstillede logniveau ved opstart
– objekter: undgå overlapning af bufferkopier
– buffer: retter en stavefejl i fejlmeddelelsen
– backends: retter fejl i backend-nedbrud
– Fjern config.h-filen fra .gitignore
– src: retter størrelsen på strengkopier
– src: tilføj en oprydningsstruktur for at undgå referencer til null-objekter
– konfiguration: retter json-dump af farmmarkering
– server: retter parse-input-tekst, der producerer bufferparsningsfejl
nftlb 0.3 (15. november 2018) #
https://github.com/relianoid/nftlb/releases/tag/v0.3
Denne udgivelse er integreret i Kubernetes som kube-nftlb https://github.com/relianoid/kube-nftlb
Nye funktioner
– netværk: generaliser netlink-anmodning til at bede om routingdata
– gårde: ny tilstand statsløs dnat
– gårde: tilføj l7-hjælpere support
– gårde: tilføj understøttelse af inputlogning
– gårde: understøttelse af omdøbning af gårde med attributten 'newname'
– gårde: tilføj markflow-support pr. virtuel tjeneste
– nft: tilføj flowmærke pr. backend og farm ved hjælp af masker
– src: tilføj brugerdefineret kilde-IP-adressekonfiguration i stedet for maskering
Forbedringer
– events: generaliser eventløkken
– gårde: inkluder nye attributter til grænseflade- og MAC-adressestyring
– netværk: tilføj understøttelse af interoperabilitet med nogle netværksopdagelsesfunktioner
– src: refaktorisering og API-forenkling
– events: generaliser netlink-hændelse for dsr
– gårde: Gør DSR-tælleren global
– backends: inkluder en ny backend-tilstand config_error
– src: lydløs gennemgangsadvarsel
– backends: sørg for, at backends-listen er tom, når du konfigurerer
udgangsgrænseflade
– gårde: validér og ruler pr. gård
– config: undgå at udskrive automatisk genererede oplysninger om en gård
– gårde: valider og kontroller gårdens status før rulering
– server: udvid serverbufferdataene
– readme: tilføj nye eksempler
– test: forbedring af diff-outputformat
– nft: forbedrer modulariseringen af generering af nft-regler
– server: sæt SO_REUSEADDR socket-flag
– main: indledende signalhåndteringsskelet
– server: tilføj struktur nftlb_client
– server: tilføj struktur nftlb_http_state
– server: tilføj nftlb_http_send_response()
– server: tilføj body response-felt til struct nftlb_http_state
– src: brug ikke EXIT_{SUCCESS,FAILURE}
– server: statificerer objekter, der kun bruges fra server.c
– server: fjern unødvendige definitioner
Fejlrettelser
– config: dumpkonfiguration med indrykket JSON
– nft: rett dsr-regler til at indstille mac-adressen i stedet for at matche den
– backend: rettelse af status for opdatering af backend, når der skiftes fra ned til op
– nft: undgå at tilføje regler, hvis der ikke er backends tilgængelige
– objekter: Indstil den rigtige starttilstand for gårde og backends
– gårde: rettelse af start-stop-handlinger
– backends: inputvalidering for net_get_neigh_ether()
– nft: retter statsløs nat-backend til klientregel
– nft: retter navn på udp ipv6-tjenester
– server: ret nogle hukommelseslækager på webserveren
– tests: rettelse af nogle testtilfælde
nftlb 0.2 (14. maj 2018) #
https://github.com/relianoid/nftlb/releases/tag/v0.2
– 3 topologier understøttes: Destinations-NAT, kilde-NAT og direkte NAT
Server Return. Dette gør det muligt at konfigurere load balancer i
enarmet og toarmet netværksarkitektur.
– understøttelse af både IPv4- og IPv6-familier.
– flerlagsfunktioner: MAC-baseret LB i lag 2, IP-baseret LB
med protokol-agnostisk på lag 3 og understøttelse af UDP, TCP og
SCTP LB på lag 4.
– multiport-understøttelse af portintervaller og -lister.
– understøttelse af opsætning af flere virtuelle tjenester.
– tilgængelige schedulere: vægt, round robin, hash og symmetrisk
hash.
– prioriteret support pr. backend.
– JSON API-tjeneste til overvågning, automatisering og administration.
– webtjenestegodkendelse med en sikkerhedsnøgle.
– automatiseret testmiljø.
nftlb 0.1 (27. feb. 2018) #
– Oprindelig version