Ua fa'alauiloa mai le nftables 0.9.9 packet filter. E tu'ufa'atasia ai le packet filtering interfaces mo le IPv4, IPv6, ARP, ma network bridges (ua fa'amoemoe e sui ai iptables, ip6table, arptables, ma ebtables). O le libnftnl 1.2.0 library o lo'o iai, lea e maua ai se API maualalo mo le fegalegaleai ma le nf_tables subsystem, ua fa'alauiloa fa'atasi. O suiga e mana'omia mo le nftables 0.9.9 ua tu'ufa'atasia i totonu o le kernel. Linux 5.13-rc1.
O le afifi nftables o loʻo i ai vaega o le faamama o le afifi e faʻagaoioia i le avanoa a le tagata faʻaoga, ae o galuega i le tulaga o le kernel e saunia e le nf_tables subsystem, o se vaega o le kernel. Linux Talu mai le fa'asalalauga 3.13, ua na'o se atina'e tuto'atasi e le fa'atonutonuina o fa'atonuga ua tu'uina atu i le tulaga o le kernel, e maua ai galuega fa'avae mo le aveeseina o fa'amatalaga mai afifi, fa'atinoina o galuega fa'atino, ma le puleaina o le tafe.
O tulafono fa'amama lava ia ma fa'atonuga fa'apitoa e fa'apipi'iina i totonu o le bytecode i le avanoa o le tagata fa'aoga, a mae'a lea ona uta lea o lenei bytecode i totonu o le kernel e fa'aaoga ai le Netlink interface ma fa'atinoina i totonu o le kernel i se fa'apitoa. masini komepiuta, e fa'amanatu mai ai le BPF (Berkeley Packet Filters). O lenei auala e mafai ai ona fa'aitiitia tele le tele o le code fa'amama o lo'o ta'avale i le tulaga o le kernel ma fa'aliliu uma ai tulafono fa'atonutonu ma le fa'atulagaga o protocol i totonu o le avanoa o le tagata fa'aoga.
Autu fa'afouga:
- Ua fa'atinoina le mafai ona fa'agasolo le fa'agaoioiga fa'agasolo i le itu feso'ota'iga feso'ota'iga, ua mafai ai ona fa'aogaina le fu'a 'offload'. Flowtable o se masini mo le faʻaleleia atili o le ala o le toe faʻafeiloaʻi o pusa, lea e faʻaoga saʻo ai le faʻaogaina o filifili uma e faʻatautaia tulafono i le pepa muamua, ma o isi pepa uma o loʻo i totonu o le tafe e lafo saʻo. laulau ip i le lalolagi atoa { flowtable f { fa'amama fa'aulufale fa'amuamua + 1 masini = {lan3, lan0, wan } fu'a offload } filifili i luma { fa'amama fa'amama fa'amuamua fa'amuamua; talia faiga faavae; ip protocol {tcp, udp } flow add @f } chain post { type nat hook postrouting priority filter; talia faiga faavae; oifname "wan" faafoliga }}
- Fa'aopoopo le lagolago mo le fa'apipi'iina o se fu'a e ona le laulau i luga o le laulau ina ia fa'amautinoa le fa'aogaina fa'apitoa o le laulau i se faiga. A fa'amutaina se fa'agasologa, e otometi lava ona tape le laulau e fa'atatau i ai. O fa'amatalaga e uiga i le fa'agaioiga o lo'o fa'aalia i le tu'uina atu o tulafono i le tulaga o se fa'amatalaga: laulau ip x { # progname nft fu'a pule filifili y { type filter hook input priority filter; talia faiga faavae; pusa fa'atau 1 paita 309 } }
- Faʻaopoopo le lagolago mo le faʻamatalaga IEEE 802.1ad (VLAN stacking poʻo QinQ), lea e faʻamatalaina ai se auala e sui ai le tele o pine VLAN i se faʻavaa Ethernet tasi. Mo se faʻataʻitaʻiga, e siaki le ituaiga o fafo Ethernet frame 8021ad ma vlan id = 342, e mafai ona e faʻaogaina le fausiaina ... ether type 802.1ad vlan id 342 e siaki ai le ituaiga fafo o le Ethernet frame 8021ad / vlan id = 1, nested 802.1 q/vlan id=2 ma isi fa'aputuga o pusa IP: ... ether type 8021ad vlan id 1 vlan type 8021q vlan id 2 vlan type ip counter
- Fa'aopoopoina le lagolago mo le fa'afoeina o puna'oa e fa'aaoga ai le tu'ufa'atasi o vaega fa'atonu v2. O le eseesega autu i le va o cgroups v2 ma le v1 o le faʻaaogaina o se faʻasologa masani o vaega mo ituaiga uma o punaoa, nai lo le tuʻufaʻatasia o faʻatonuga mo le tuʻufaʻatasia o punaoa CPU, mo le faʻatonutonuina o le taumafaina manatua, ma mo le I/O. Mo se faʻataʻitaʻiga, e siaki pe o le tuaa o se socket i le tulaga muamua cgroupv2 e fetaui ma le "system.slice" mask, e mafai ona e faʻaogaina le fausiaina: ... socket cgroupv2 level 1 "system.slice"
- Ua fa'aopoopoina le mafai ona siaki vaega o afifi SCTP (o le galuega e mana'omia mo le fa'agaioiga o le a aliali mai i le kernel Linux 5.14). Mo se faʻataʻitaʻiga, ina ia siaki pe o iai i totonu o se afifi se fasipepa e iai le ituaiga 'data' ma le fanua 'type': ⦠sctp chunk data o loʻo iai ⦠sctp chunk data type 0
- O le faʻatinoina o le faʻatonuga o le utaina o tulafono ua faʻavaveina e tusa ma le lua taimi e faʻaaoga ai le fuʻa "-f". Ua faatelevaveina foi le faatinoga o le lisi o tulafono.
- O se pepa fa'akomepiuta mo le siakiina pe ua fa'atulaga fasi fu'a. Mo se faʻataʻitaʻiga, e siaki pe o le snat ma le dnat status bits e le o setiina, e mafai ona e faʻamaonia: ... ct status ! snat,dnat e siaki pe o le syn bit o loʻo seti i le bitmask syn,ack: ... tcp flags syn / syn,ack e siaki ai e le o setiina le fin ma le first bits i le bitmask syn,ack,fin,rst: ... tcp fu'a! = fin,rst / syn,ack,fin,rst
- Fa'ataga le upu "fa'amasinoga" e fa'aoga ile seti/fa'afanua ituaiga fa'amatalaga: fa'aopoopo fa'afanua xm {ituaiga iifname . ip protocol th dport: fa'amasinoga;}
puna: opennet.ru
