nftables เชชเซ‡เช•เซ‡เชŸ เชซเชฟเชฒเซเชŸเชฐ 1.0.2 เชฐเชฟเชฒเซ€เช

เชชเซ‡เช•เซ‡เชŸ เชซเชฟเชฒเซเชŸเชฐ nftables 1.0.2 เชจเซเช‚ เชชเซเชฐเช•เชพเชถเชจ เชชเซเชฐเช•เชพเชถเชฟเชค เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซเชฏเซเช‚ เช›เซ‡, เชœเซ‡ IPv4, IPv6, ARP เช…เชจเซ‡ เชจเซ‡เชŸเชตเชฐเซเช• เชฌเซเชฐเชฟเชœ (iptables, ip6table, arptables เช…เชจเซ‡ ebtables เชจเซ‡ เชฌเชฆเชฒเชตเชพเชจเชพ เชนเซ‡เชคเซเชฅเซ€) เชฎเชพเชŸเซ‡ เชชเซ‡เช•เซ‡เชŸ เชซเชฟเชฒเซเชŸเชฐเชฟเช‚เช— เชˆเชจเซเชŸเชฐเชซเซ‡เชธเชจเซ‡ เชเช•เซ€เช•เซƒเชค เช•เชฐเซ‡ เช›เซ‡. เช•เชพเชฎ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ nftables 1.0.2 เชชเซเชฐเช•เชพเชถเชจ เชฎเชพเชŸเซ‡ เชœเชฐเซ‚เชฐเซ€ เชซเซ‡เชฐเชซเชพเชฐเซ‹ Linux เช•เชฐเซเชจเชฒ 5.17-rc เชฎเชพเช‚ เชธเชฎเชพเชตเชตเชพเชฎเชพเช‚ เช†เชตเซ‡เชฒ เช›เซ‡.

nftables เชชเซ‡เช•เซ‡เชœเชฎเชพเช‚ เชชเซ‡เช•เซ‡เชŸ เชซเชฟเชฒเซเชŸเชฐ เช˜เชŸเช•เซ‹เชจเซ‹ เชธเชฎเชพเชตเซ‡เชถ เชฅเชพเชฏ เช›เซ‡ เช•เซ‡ เชœเซ‡ เชตเชชเชฐเชพเชถเช•เชฐเซเชคเชพ เชœเช—เซเชฏเชพเชฎเชพเช‚ เชšเชพเชฒเซ‡ เช›เซ‡, เชœเซเชฏเชพเชฐเซ‡ เช•เชฐเซเชจเชฒ-เชธเซเชคเชฐเชจเซเช‚ เช•เชพเชฐเซเชฏ nf_tables เชธเชฌเชธเชฟเชธเซเชŸเชฎ เชฆเซเชตเชพเชฐเชพ เชชเซเชฐเชฆเชพเชจ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡, เชœเซ‡ 3.13 เชจเชพ เชชเซเชฐเช•เชพเชถเชจเชฅเซ€ Linux เช•เชฐเซเชจเชฒเชจเซ‹ เชญเชพเช— เช›เซ‡. เช•เชฐเซเชจเชฒ เชธเซเชคเชฐ เชฎเชพเชคเซเชฐ เชเช• เชธเชพเชฎเชพเชจเซเชฏ เชชเซเชฐเซ‹เชŸเซ‹เช•เซ‹เชฒ-เชธเซเชตเชคเช‚เชคเซเชฐ เชˆเชจเซเชŸเชฐเชซเซ‡เชธ เชชเซ‚เชฐเซเช‚ เชชเชพเชกเซ‡ เช›เซ‡ เชœเซ‡ เชชเซ‡เช•เซ‡เชŸเซ‹เชฎเชพเช‚เชฅเซ€ เชกเซ‡เชŸเชพ เช•เชพเชขเชตเชพ, เชกเซ‡เชŸเชพ เช“เชชเชฐเซ‡เชถเชจ เช•เชฐเชตเชพ เช…เชจเซ‡ เชซเซเชฒเซ‹ เช•เช‚เชŸเซเชฐเซ‹เชฒ เชฎเชพเชŸเซ‡ เชฎเซ‚เชณเชญเซ‚เชค เช•เชพเชฐเซเชฏเซ‹ เชชเซ‚เชฐเชพ เชชเชพเชกเซ‡ เช›เซ‡.

เชซเชฟเชฒเซเชŸเชฐเชฟเช‚เช—เชจเชพ เชจเชฟเชฏเชฎเซ‹ เชชเซ‹เชคเซ‡ เช…เชจเซ‡ เชชเซเชฐเซ‹เชŸเซ‹เช•เซ‹เชฒ-เชตเชฟเชถเชฟเชทเซเชŸ เชนเซ‡เชจเซเชกเชฒเชฐเซเชธ เชฏเซเชเชฐ-เชธเซเชชเซ‡เชธ เชฌเชพเช‡เชŸเช•เซ‹เชกเชฎเชพเช‚ เช•เชฎเซเชชเชพเช‡เชฒ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡, เชœเซ‡ เชชเช›เซ€ เช† เชฌเชพเช‡เชŸเช•เซ‹เชก เชจเซ‡เชŸเชฒเชฟเช‚เช• เช‡เชจเซเชŸเชฐเชซเซ‡เชธเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชจเซ‡ เช•เชฐเซเชจเชฒเชฎเชพเช‚ เชฒเซ‹เชก เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡ เช…เชจเซ‡ BPF (เชฌเชฐเซเช•เชฒเซ‡ เชชเซ‡เช•เซ‡เชŸ เชซเชฟเชฒเซเชŸเชฐเซเชธ) เชœเซ‡เชตเชพ เชตเชฟเชถเชฟเชทเซเชŸ เชตเชฐเซเชšเซเชฏเซเช…เชฒ เชฎเชถเซ€เชจเชฎเชพเช‚ เช•เชฐเซเชจเชฒเชฎเชพเช‚ เชšเชฒเชพเชตเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡. เช† เช…เชญเชฟเช—เชฎ เช•เชฐเซเชจเชฒ เชธเซเชคเชฐเซ‡ เชšเชพเชฒเชคเชพ เชซเชฟเชฒเซเชŸเชฐเชฟเช‚เช— เช•เซ‹เชกเชจเชพ เช•เชฆเชจเซ‡ เชจเซ‹เช‚เชงเชชเชพเชคเซเชฐ เชฐเซ€เชคเซ‡ เช˜เชŸเชพเชกเชตเชพเชจเซเช‚ เชถเช•เซเชฏ เชฌเชจเชพเชตเซ‡ เช›เซ‡ เช…เชจเซ‡ เชชเชพเชฐเซเชธเชฟเช‚เช— เชจเชฟเชฏเชฎเซ‹เชจเชพ เชคเชฎเชพเชฎ เช•เชพเชฐเซเชฏเซ‹ เช…เชจเซ‡ เชชเซเชฐเซ‹เชŸเซ‹เช•เซ‹เชฒ เชธเชพเชฅเซ‡ เช•เชพเชฎ เช•เชฐเชตเชพเชจเชพ เชคเชฐเซเช•เชจเซ‡ เชตเชชเชฐเชพเชถเช•เชฐเซเชคเชพ เชœเช—เซเชฏเชพเชฎเชพเช‚ เช–เชธเซ‡เชกเซ‡ เช›เซ‡.

เชฎเซเช–เซเชฏ เชจเชตเซ€เชจเชคเชพเช“:

  • เชจเชฟเชฏเชฎเซ‹ เช‘เชชเซเชŸเชฟเชฎเชพเช‡เชเซ‡เชถเชจ เชฎเซ‹เชก เช‰เชฎเซ‡เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซเชฏเซ‹ เช›เซ‡, เชœเซ‡ เชจเชตเชพ "-o" ("--เช‘เชชเซเชŸเชฟเชฎเชพเช‡เช") เชตเชฟเช•เชฒเซเชชเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชจเซ‡ เชธเช•เซเชทเชฎ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซเชฏเซ‹ เช›เซ‡, เชœเซ‡เชจเซ‡ "--เชšเซ‡เช•" เชตเชฟเช•เชฒเซเชช เชธเชพเชฅเซ‡ เชœเซ‹เชกเซ€เชจเซ‡ เชฐเซ‚เชฒเซเชธเชธเซ‡เชŸ เชซเชพเช‡เชฒเชฎเชพเช‚ เชซเซ‡เชฐเชซเชพเชฐเซ‹เชจเซ‡ เช–เชฐเซ‡เช–เชฐ เชฒเซ‹เชก เช•เชฐเซเชฏเชพ เชตเชฟเชจเชพ เชคเซ‡เชจเซ‡ เช‘เชชเซเชŸเชฟเชฎเชพเช‡เช เช•เชฐเซ€ เชถเช•เชพเชฏ เช›เซ‡. . เช‘เชชเซเชŸเชฟเชฎเชพเช‡เชเซ‡เชถเชจ เชคเชฎเชจเซ‡ เชธเชฎเชพเชจ เชจเชฟเชฏเชฎเซ‹เชจเซ‡ เชœเซ‹เชกเชตเชพเชจเซ€ เชฎเช‚เชœเซ‚เชฐเซ€ เช†เชชเซ‡ เช›เซ‡, เช‰เชฆเชพเชนเชฐเชฃ เชคเชฐเซ€เช•เซ‡, เชจเชฟเชฏเชฎเซ‹: 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 daddr.1.1.1.1 .2.2.2.2 ip saddr 2.2.2.2 ip daddr 3.3.3.3 เชกเซเชฐเซ‹เชช เชธเซเชตเซ€เช•เชพเชฐเซ‹

    เชฎเซ‡เชŸเชพ iifname เชฎเชพเช‚ เชœเซ‹เชกเชตเชพเชฎเชพเช‚ เช†เชตเชถเซ‡. เช†เชˆเชชเซ€ เชธเชฆเซเชฆเชฐ. ip daddr { eth1 . 1.1.1.1. 2.2.2.3, eth1 . 1.1.1.2. 2.2.2.5 } ip sadr เชธเซเชตเซ€เช•เชพเชฐเซ‹. 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 เช•เชพเช‰เชจเซเชŸเชฐ เช†เชฎเชพเช‚ เชธเซเชตเซ€เช•เชพเชฐเซ‹: ip daddr { 192.168.0.1, 192.168.0.2, 192.168.0.3 } เช•เชพเช‰เชจเซเชŸเชฐ เชชเซ‡เช•เซ‡เชŸเซเชธ 0 เชฌเชพเชˆเชŸ 0 เชธเซเชตเซ€เช•เชพเชฐเซ‹

  • เชธเชฎเซ‚เชน เชฏเชพเชฆเซ€เช“ ip เช…เชจเซ‡ tcp เชตเชฟเช•เชฒเซเชชเซ‹, เชคเซ‡เชฎเชœ sctp เชนเชฟเชธเซเชธเชพเชจเซ‡ เชธเซเชชเชทเซเชŸ เช•เชฐเชตเชพเชจเซ€ เช•เซเชทเชฎเชคเชพเชจเซ‡ เช…เชฎเชฒเชฎเชพเช‚ เชฎเซ‚เช•เซ‡ เช›เซ‡: เชธเซ‡เชŸ s5 { typeof ip เชตเชฟเช•เชฒเซเชช ra เชฎเซ‚เชฒเซเชฏ เชคเชคเซเชตเซ‹ = { 1, 1024 } } เชธเซ‡เชŸ s7 { typeof sctp chunk init num-inbound-streams เชคเชคเซเชตเซ‹ = { 1.
  • TCP เชตเชฟเช•เชฒเซเชชเซ‹ fastopen, md5sig เช…เชจเซ‡ mptcp เชฎเชพเชŸเซ‡ เช‰เชฎเซ‡เชฐเชพเชฏเซ‡เชฒ เช†เชงเชพเชฐ.
  • เชฎเซ‡เชชเชฟเช‚เช—เชฎเชพเช‚ mp-tcp เชชเซ‡เชŸเชพเชชเซเชฐเช•เชพเชฐเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ เช‰เชฎเซ‡เชฐเชพเชฏเซ‡เชฒ เชธเชฎเชฐเซเชฅเชจ: tcp เชตเชฟเช•เชฒเซเชช mptcp เชธเชฌเชŸเชพเชˆเชช 1
  • เชธเซเชงเชพเชฐเซ‡เชฒ เช•เชฐเซเชจเชฒ-เชธเชพเช‡เชก เชซเชฟเชฒเซเชŸเชฐเชฟเช‚เช— เช•เซ‹เชก.
  • Flowtable เชนเชตเซ‡ JSON เชซเซ‹เชฐเซเชฎเซ‡เชŸ เชฎเชพเชŸเซ‡ เชธเช‚เชชเซ‚เชฐเซเชฃ เชธเชฎเชฐเซเชฅเชจ เชงเชฐเชพเชตเซ‡ เช›เซ‡.
  • เชˆเชฅเชฐเชจเซ‡เชŸ เชซเซเชฐเซ‡เชฎ เชฎเซ‡เชšเชฟเช‚เช— เช•เชพเชฎเช—เซ€เชฐเซ€เชฎเชพเช‚ "เช…เชธเซเชตเซ€เช•เชพเชฐ" เช•เซเชฐเชฟเชฏเชพเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเชตเชพเชจเซ€ เช•เซเชทเชฎเชคเชพ เชชเซเชฐเชฆเชพเชจ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ€ เช›เซ‡. เชˆเชฅเชฐ เชธเซ‡เชกเชฐ aa:bb:cc:dd:ee:ff ip daddr 192.168.0.1 เชฐเชฟเชœเซ‡เช•เซเชŸ

เชธเซ‹เชฐเซเชธ: opennet.ru

เชเช• เชŸเชฟเชชเซเชชเชฃเซ€ เช‰เชฎเซ‡เชฐเซ‹