Parzûna pakêtê ya nftables 1.0.1 berdan

Serbestberdana parzûna pakêtê nftables 1.0.1 hate weşandin, ku navberên fîlterkirina pakêtê ji bo IPv4, IPv6, ARP û pirên torê yek dike (mebest ew e ku li şûna iptables, ip6table, arptables û ebtables). Guhertinên ku ji bo xebitandina serbestberdana nftables 1.0.1 hewce ne di kernel Linux 5.16-rc1 de cih digirin.

Pakêta nftables hêmanên parzûna pakêtê yên ku di cîhê bikarhêner de dimeşin vedihewîne, dema ku xebata asta kernelê ji hêla binepergala nf_tables ve tê peyda kirin, ku ji berdana 3.13-an vir ve beşek ji kernel Linux-ê ye. Asta kernel tenê navgînek serbixwe-protokolek gelemperî peyda dike ku fonksiyonên bingehîn ji bo derxistina daneyan ji pakêtan, pêkanîna operasyonên daneyê, û kontrolkirina herikînê peyda dike.

Rêgezên fîlterkirinê û rêwerzên protokol-taybet di cîhê bikarhêner de di nav bytekodê de têne berhev kirin, pişt re ev bytekod bi karanîna navgîniya Netlink-ê di kernelê de tê barkirin û di kernelê de di makîneyek virtual ya taybetî ya ku BPF (Parzeyên Pakêta Berkeley) tîne bîra xwe de, tê darve kirin. Ev nêzîkatî dihêle hûn bi girîngî mezinahiya koda fîlterkirinê ya ku di asta kernelê de tê xebitandin kêm bikin û hemî fonksiyonên qaîdeyên parskirinê û mantiqê ji bo xebata bi protokolan re li cîhê bikarhêner biguhezînin.

Nûvekirinên sereke:

  • Dema ku navnîşên set û nexşeyên mezin têne barkirin vexwarina bîranînê kêm kir.
  • Ji nû ve barkirina navnîşên set û nexşeyê hate bilez kirin.
  • Hilberîna tablo û zincîrên hilbijartî yên di rêzikên qaîdeyên mezin de bileztir bûye. Mînakî, dema cîbicîkirina fermana "Rêbazên lîsteya nft" ji bo nîşandana komek rêzikan bi 100 hezar rêzikan 3.049 saniye ye, û dema ku tenê tabloyên nat û parzûnê derdixe ("lîsteya nft nat", "filtre tabloya lîsteya nft" ”) ji bo 1.969 û 0.697 çirkeyan kêm dibe.
  • Dema ku qaîdeyên bi lîsteyên mezin û nexşe-lîsteyên mezin têne xebitandin, pêkanîna pirsan bi vebijarka "--terse" zûtir bûye.
  • Mimkun e ku seyrûsefera ji zincîra "derketinê" were fîltrekirin, ku di zincîra netdevê de (çengê derketinê) di heman astê de wekî rêvebirê derketinê tê pêvajo kirin, yanî. di qonaxa ku ajoker pakêtek ji stika tora kernelê distîne. sifrê netdev filter { chain egress { type filter hook egress devices = { eth0, eth1 } priority 0; meta priority set ip saddr map { 192.168.10.2 : abcd:2, 192.168.10.3 : abcd:3 } }
  • Destûrê dide hevgirtin û guheztina baytên di sernav û naveroka pakêtê de li ser deverek diyarkirî. # nft qaîdeya lê zêde bike x y @ih,32,32 0x14000000 jimarvan # nft qaîdeya x y @ih,32,32 set 0x14000000 jimarvan

Source: opennet.ru

Add a comment