เบเบฒเบเบเปเบญเบเบเบปเบงเบเบญเบ packet nftables 1.0.2 เปเบเปเบเบทเบเบเบฑเบเบเบตเบกเบกเบฒ, unifying packet filtering interfaces เบชเปเบฒเบฅเบฑเบ IPv4, IPv6, ARP เปเบฅเบฐเบเบปเบงเปเบเบทเบญเบเปเบฒเบ (เบกเบตเบเบธเบเบเบฐเบชเบปเบเปเบเบทเปเบญเบเบปเบเปเบเบ iptables, ip6table, arptables เปเบฅเบฐ ebtables). เบเบฒเบเบเปเบฝเบเปเบเบเบเบตเปเบเปเบฒเปเบเบฑเบเบชเปเบฒเบฅเบฑเบเบเบฒเบเบเปเบญเบ nftables 1.0.2 เบเบตเปเบเบฐเปเบฎเบฑเบเบงเบฝเบเปเบกเปเบเบฅเบงเบกเบขเบนเปเปเบ Linux kernel 5.17-rc.
เบเบธเบ nftables เบเบฐเบเบญเบเบกเบตเบญเบปเบเบเบฐเบเบญเบเบเบฒเบเบเบฑเปเบเบเบญเบเปเบเบฑเบเปเบเบฑเบเบเบตเปเบเปเบฒเปเบเบตเบเบเบฒเบเบขเบนเปเปเบเบเบทเปเบเบเบตเปเบเบญเบเบเบนเปเปเบเป, เปเบเบเบฐเบเบฐเบเบตเปเบเบฒเบเปเบฎเบฑเบเบงเบฝเบเปเบเบฅเบฐเบเบฑเบ kernel เปเบกเปเบเบชเบฐเบซเบเบญเบเปเบซเปเปเบเบเบฅเบฐเบเบปเบเบเปเบญเบ nf_tables, เปเบเบดเปเบเปเบเบฑเบเบชเปเบงเบเบซเบเบถเปเบเบเบญเบ Linux kernel เบเบฑเบเบเบฑเปเบเปเบเปเบเบฒเบเบเปเบญเบ 3.13. เบฅเบฐเบเบฑเบ kernel เบชเบฐเบซเบเบญเบเบเบฝเบเปเบเปเบชเปเบงเบเบเบดเบเบเปเปเปเบเบเปเบญเบเบฐเบฅเบฒเบเบเบญเบเปเบเปเบเบเบญเบเบเบปเปเบงเปเบเบเบตเปเบชเบฐเบซเบเบญเบเบซเบเปเบฒเบเบตเปเบเบทเปเบเบเบฒเบเบชเปเบฒเบฅเบฑเบเบเบฒเบเบชเบฐเบเบฑเบเบเปเปเบกเบนเบเบเบฒเบเปเบเบฑเบเปเบเบฑเบ, เบเบฐเบเบดเบเบฑเบเบเบฒเบเบเปเปเบกเบนเบ, เปเบฅเบฐเบเบฒเบเบเบงเบเบเบธเบกเบเบฒเบเปเบซเบผ.
เบเบปเบเบฅเบฐเบเบฝเบเบเบฒเบเบเบฑเปเบเบเบญเบเปเบฅเบฐเบเบปเบงเบเบฑเบเบเบฒเบเบชเบฐเปเบเบฒเบฐเบเบญเบเปเบเปเบเบเบญเบเปเบเปเบเบทเบเบฅเบงเบเบฅเบงเบกเปเบเบปเปเบฒเปเบเปเบ bytecode เปเบเบเบทเปเบเบเบตเปเบเบนเปเปเบเป, เบซเบผเบฑเบเบเบฒเบเบเบฑเปเบ bytecode เบเบตเปเบเบทเบเปเบซเบฅเบเปเบเบปเปเบฒเปเบเปเบ kernel เปเบเบเปเบเปเบเบฒเบเปเบเปเบเบญเบ Netlink เปเบฅเบฐเบเบทเบเบเบฐเบเบดเบเบฑเบเปเบ kernel เปเบเปเบเบทเปเบญเบ virtual เบเบดเปเบชเบเบเบตเปเบฅเบฐเบเบถเบเปเบเบดเบ BPF (Berkeley Packet Filters). เบงเบดเบเบตเบเบฒเบเบเบตเปเบเปเบงเบเปเบซเปเบเปเบฒเบเบชเบฒเบกเบฒเบเบซเบผเบธเบเบฅเบปเบเบขเปเบฒเบเบซเบผเบงเบเบซเบผเบฒเบเบเบญเบเบฅเบฐเบซเบฑเบเบเบฒเบเบเบฑเปเบเบเบญเบเบเบตเปเปเบฎเบฑเบเบงเบฝเบเบขเบนเปเปเบเบฅเบฐเบเบฑเบเปเบเปเบเปเบฅเบฐเบเปเบฒเบเบซเบเปเบฒเบเบตเปเบเบฑเบเบซเบกเบปเบเบเบญเบเบเบปเบเบฅเบฐเบเบฝเบเบเบฒเบเปเบเบเปเบฅเบฐเปเบซเบเบเบปเบเบชเปเบฒเบฅเบฑเบเบเบฒเบเปเบฎเบฑเบเบงเบฝเบเบเบฑเบเปเบเปเบเบเบญเบเปเบเบปเปเบฒเปเบเปเบเบเบทเปเบเบเบตเปเบเบญเบเบเบนเปเปเบเป.
เบเบฐเบงเบฑเบเบเบฐเบเปเบฒเบเบปเปเบเบเป:
- เบฎเบนเบเปเบเบเบเบฒเบเปเบเบตเปเบกเบเบฐเบชเบดเบเบเบดเบเบฒเบเบเบปเบเบฅเบฐเบเบฝเบเปเบเปเบเบทเบเปเบเบตเปเบก, เปเบเบตเบเปเบเปเปเบเบเปเบเปเบเบปเบงเปเบฅเบทเบญเบ "-o" ("--optimize") เปเปเป, เปเบเบดเปเบเบชเบฒเบกเบฒเบเบเบทเบเบฅเบงเบกเปเบเบปเปเบฒเบเบฑเบเบเบปเบงเปเบฅเบทเบญเบ "--check" เปเบเบทเปเบญเบเบงเบเบชเบญเบเปเบฅเบฐเปเบเบตเปเบกเบเบฐเบชเบดเบเบเบดเบเบฒเบเบเบฒเบเบเปเบฝเบเปเบเบเบเบญเบเปเบเบฅเปเบเบปเบเบฅเบฐเบเบฝเบเปเบเบเบเปเปเบเปเบญเบเปเบซเบฅเบเบกเบฑเบ. . เบเบฒเบเปเบเบตเปเบกเบเบฐเบชเบดเบเบเบดเบเบฒเบเบญเบฐเบเบธเบเบฒเบเปเบซเปเบเปเบฒเบเบชเบปเบกเบเบปเบเบเบปเบเบฅเบฐเบเบฝเบเบเบตเปเบเปเบฒเบเบเบทเบเบฑเบ, เบชเปเบฒเบฅเบฑเบเบเบปเบงเบขเปเบฒเบ, เบเบปเบเบฅเบฐเบเบฝเบ: meta iifname eth1 ip saddr 1.1.1.1 ip daddr 2.2.2.3 เบเบญเบกเบฎเบฑเบ meta iifname eth1 ip saddr 1.1.1.2 ip daddr 2.2.2.5 เบเบญเบกเบฎเบฑเบ ip saddr 1.1.1.1 2.2.2.2ip da .2.2.2.2 เบเบญเบกเบฎเบฑเบ ip saddr 3.3.3.3 ip daddr XNUMX เบซเบผเบธเบเบฅเบปเบ
เบเบฐเบเบทเบเบฅเบงเบกเปเบเบปเปเบฒเปเบเบฑเบ meta iifname . ip saddr. ip daddr { eth1 . 1.1.1.1. 2.2.2.3, eth1 . 1.1.1.2. 2.2.2.5 } เบเบญเบกเบฎเบฑเบ ip saddr . ip daddr vmap { 1.1.1.1 . 2.2.2.2 : เบเบญเบกเบฎเบฑเบ, 2.2.2.2 . 3.3.3.3 : เบซเบผเบธเบ }
เบเบปเบงเบขเปเบฒเบเบเบฒเบเบเบณเปเบเป: #nft -c -o -f ruleset.test เบเบฒเบเบฅเบงเบกเบเบปเบง: ruleset.nft:16:3-37: ip daddr 192.168.0.1 counter accept ruleset.nft:17:3-37: ip daddr 192.168.0.2 counter accept ruleset.nft:18:3-37: ip daddr 192.168.0.3 counter accept into: ip daddr { 192.168.0.1, 192.168.0.2, 192.168.0.3 } counter packets 0 bytes 0 accept
- เบฅเบฒเบเบเบฒเบเบเบตเปเบเปเบฒเบเบปเบเปเบงเปเบเบฐเบเบดเบเบฑเบเบเบงเบฒเบกเบชเบฒเบกเบฒเบเปเบเบเบฒเบเบเปเบฒเบเบปเบเบเบฒเบเปเบฅเบทเบญเบ ip เปเบฅเบฐ tcp, เปเบเบฑเปเบเบเบฝเบงเบเบฑเบเบเบฑเบ chunks sctp: set s5 { typeof ip option ra เบญเบปเบเบเบฐเบเบญเบเบกเบนเบเบเปเบฒ = { 1, 1024 } } set s7 { typeof sctp chunk init num-inbound-streams elements = { 1, 4 } } chain c5 { ip option ra value @s5 accept } chain c7 { sctp chunk init num-inbound-streams @s7 accept }
- เปเบเบตเปเบกเบเบฒเบเบชเบฐเบซเบเบฑเบเบชเบฐเบซเบเบนเบเบชเปเบฒเบฅเบฑเบเบเบฒเบเปเบฅเบทเบญเบ TCP fastopen, md5sig เปเบฅเบฐ mptcp.
- เปเบเบตเปเบกเบเบฒเบเบชเบฐเบซเบเบฑเบเบชเบฐเบซเบเบนเบเบชเปเบฒเบฅเบฑเบเบเบฒเบเบเปเบฒเปเบเปเบเบฐเปเบเบเบเปเบญเบ mp-tcp เปเบเปเบเบเบเบตเป: tcp option mptcp subtype 1
- เบเบฑเบเบเบธเบเบฅเบฐเบซเบฑเบเบเบฒเบเบเบฑเปเบเบเบญเบเบเปเบฒเบเบเปเบฒเบเบเบญเบ kernel.
- เบเบญเบเบเบตเป Flowtable เบกเบตเบเบฒเบเบชเบฐเบซเบเบฑเบเบชเบฐเบซเบเบนเบเบขเปเบฒเบเปเบเบฑเบกเบเบตเปเบชเปเบฒเบฅเบฑเบเบฎเบนเบเปเบเบ JSON.
- เบเบงเบฒเบกเบชเบฒเบกเบฒเบเปเบเบเบฒเบเบเปเบฒเปเบเป "เบเบฐเบเบดเปเบชเบ" เบเบฒเบเบเบฐเบเบดเบเบฑเบเบเบฒเบเบเบฑเบเบเบนเปเบเบญเบ Ethernet เปเบเปเบเบทเบเบชเบฐเบซเบเบญเบเปเบซเป. ether saddr aa:bb:cc:dd:ee:ff ip daddr 192.168.0.1 เบเบฐเบเบดเปเบชเบ
เปเบซเบผเปเบเบเปเปเบกเบนเบ: opennet.ru