Нусхаи филтри бастаи nftables 1.0.1

Нашри филтри пакети nftables 1.0.1 нашр шуд, ки интерфейсҳои филтркунии бастаҳоро барои IPv4, IPv6, ARP ва пулҳои шабакавӣ муттаҳид мекунад (барои иваз кардани iptables, ip6table, arptables ва ebtables). Тағиротҳое, ки барои версияи nftables 1.0.1 барои кор заруранд, ба ядрои Linux 5.16-rc1 дохил карда шудаанд.

Бастаи nftables ҷузъҳои филтри бастаҳоро дар бар мегирад, ки дар фазои корбар кор мекунанд, дар ҳоле ки кори сатҳи ядро ​​аз ҷониби зерсистемаи nf_tables таъмин карда мешавад, ки аз замони нашри 3.13 қисми ядрои Linux мебошад. Сатҳи ядро ​​​​танҳо интерфейси мустақили протоколро таъмин мекунад, ки вазифаҳои асосиро барои истихроҷи додаҳо аз пакетҳо, иҷрои амалиёти додаҳо ва назорати ҷараён таъмин мекунад.

Қоидаҳои филтркунӣ ва коркардкунандагони мушаххаси протокол дар фазои корбар ба байткод тартиб дода мешаванд, ки баъд аз он ин байт код бо истифода аз интерфейси Netlink ба ядро ​​бор карда мешавад ва дар ядро ​​дар мошини махсуси виртуалӣ, ки BPF-ро (Беркли Пакет Филтрҳо) ба ёд меорад, иҷро мешавад. Ин равиш ба шумо имкон медиҳад, ки андозаи коди филтркуниро, ки дар сатҳи ядро ​​кор мекунад, хеле кам кунед ва тамоми функсияҳои қоидаҳои таҳлил ва мантиқи кор бо протоколҳоро ба фазои корбар интиқол диҳед.

Навовариҳои асосӣ:

  • Ҳангоми боркунии рӯйхатҳои маҷмӯӣ ва харитаҳои калон истеъмоли хотира кам карда шуд.
  • Боркунии рӯйхатҳои маҷмӯӣ ва харитаҳо суръат гирифт.
  • Баромади ҷадвалҳо ва занҷирҳои интихобшуда дар маҷмӯи қоидаҳои калон суръат гирифт. Масалан, вақти иҷрои фармони "nft list ruleset" барои намоиш додани маҷмӯи қоидаҳо бо 100 ҳазор сатр 3.049 сония аст ва ҳангоми баровардани танҳо ҷадвалҳои nat ва филтр («nft list table nat», «nft list table филтри ”) ба 1.969 ва 0.697 сония кам карда мешавад.
  • Иҷрои дархостҳо бо опсияи "--terse" ҳангоми коркарди қоидаҳо бо маҷмӯи калон ва харитаҳо суръат гирифт.
  • Мумкин аст, ки трафикро аз занҷири "баромад" филтр кард, ки он дар як сатҳ бо коркарди баромад дар занҷири netdev (қалмоқе баромад), яъне. дар марҳилае, ки ронанда пакетро аз стеки шабакаи ядро ​​​​қабул мекунад. ҷадвали netdev филтр {чоракунии занҷир {навъи филтри қалмоқе дастгоҳҳои баромад = {eth0, eth1} афзалият 0; Маҷмӯи афзалияти мета харитаи IP saddr {192.168.10.2: abcd:2, 192.168.10.3: abcd:3}}}
  • Ба мувофиқат ва тағир додани байтҳо дар сарлавҳа ва мундариҷаи баста дар офсети додашуда имкон медиҳад. # nft илова кардани қоида xy @ih,32,32 0x14000000 counter # nft илова кардани қоида xy @ih,32,32 маҷмӯи 0x14000000 ҳисобкунак

Манбаъ: opennet.ru

Илова Эзоҳ