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

เชชเซเชฐเช•เชพเชถเชฟเชค เชชเซ‡เช•เซ‡เชŸ เชซเชฟเชฒเซเชŸเชฐ เชชเซเชฐเช•เชพเชถเชจ nftables 0.9.4, IPv6, IPv4, ARP เช…เชจเซ‡ เชจเซ‡เชŸเชตเชฐเซเช• เชฌเซเชฐเชฟเชœ เชฎเชพเชŸเซ‡ เชชเซ‡เช•เซ‡เชŸ เชซเชฟเชฒเซเชŸเชฐเชฟเช‚เช— เชˆเชจเซเชŸเชฐเชซเซ‡เชธเชจเซ‡ เชเช•เซ€เช•เซƒเชค เช•เชฐเซ€เชจเซ‡ iptables, ip6table, arptables เช…เชจเซ‡ ebtables เชฎเชพเชŸเซ‡ เชฐเชฟเชชเซเชฒเซ‡เชธเชฎเซ‡เชจเซเชŸ เชคเชฐเซ€เช•เซ‡ เชตเชฟเช•เชพเชธ เช•เชฐเซ€ เชฐเชนเซเชฏเชพเช‚ เช›เซ‡. nftables เชชเซ‡เช•เซ‡เชœเชฎเชพเช‚ เชชเซ‡เช•เซ‡เชŸ เชซเชฟเชฒเซเชŸเชฐ เช˜เชŸเช•เซ‹เชจเซ‹ เชธเชฎเชพเชตเซ‡เชถ เชฅเชพเชฏ เช›เซ‡ เช•เซ‡ เชœเซ‡ เชตเชชเชฐเชพเชถเช•เชฐเซเชคเชพ เชœเช—เซเชฏเชพเชฎเชพเช‚ เชšเชพเชฒเซ‡ เช›เซ‡, เชœเซเชฏเชพเชฐเซ‡ เช•เชฐเซเชจเชฒ-เชธเซเชคเชฐเชจเซเช‚ เช•เชพเชฐเซเชฏ nf_tables เชธเชฌเชธเชฟเชธเซเชŸเชฎ เชฆเซเชตเชพเชฐเชพ เชชเซเชฐเชฆเชพเชจ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡, เชœเซ‡ 3.13 เชจเชพ เชชเซเชฐเช•เชพเชถเชจเชฅเซ€ Linux เช•เชฐเซเชจเชฒเชจเซ‹ เชญเชพเช— เช›เซ‡. เช•เชพเชฎ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ nftables 0.9.4 เชชเซเชฐเช•เชพเชถเชจ เชฎเชพเชŸเซ‡ เชœเชฐเซ‚เชฐเซ€ เชซเซ‡เชฐเชซเชพเชฐเซ‹ เชญเชตเชฟเชทเซเชฏเชจเซ€ เช•เชฐเซเชจเชฒ เชถเชพเช–เชพเชฎเชพเช‚ เชธเชฎเชพเชตเชตเชพเชฎเชพเช‚ เช†เชตเซ‡เชฒ เช›เซ‡. เชฒเชฟเชจเช•เซเชธ 5.6.

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

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

  • เช•เชจเซ‡เช•เซเชถเชจเซเชธเชฎเชพเช‚ เชฐเซ‡เชจเซเชœ เชฎเชพเชŸเซ‡ เชธเชชเซ‹เชฐเซเชŸ (เชธเช‚เช•เชฒเชจ, เชธเชฐเชจเชพเชฎเชพเช‚เชจเชพ เชšเซ‹เช•เซเช•เชธ เชฌเช‚เชกเชฒ เช…เชจเซ‡ เชชเซ‹เชฐเซเชŸ เชœเซ‡ เชธเชฐเช–เชพเชฎเชฃเซ€เชจเซ‡ เชธเชฐเชณ เชฌเชจเชพเชตเซ‡ เช›เซ‡). เช‰เชฆเชพเชนเชฐเชฃ เชคเชฐเซ€เช•เซ‡, เชธเชฎเซ‚เชน "เชตเซเชนเชพเช‡เชŸเชฒเชฟเชธเซเชŸ" เชฎเชพเชŸเซ‡ เช•เซ‡ เชœเซ‡เชจเชพ เชคเชคเซเชตเซ‹ เชœเซ‹เชกเชพเชฃ เช›เซ‡, "เช…เช‚เชคเชฐเชพเชฒ" เชงเซเชตเชœเชจเซ‹ เช‰เชฒเซเชฒเซ‡เช– เช•เชฐเชตเชพเชฅเซ€ เชธเซ‚เชšเชตเชตเชพเชฎเชพเช‚ เช†เชตเชถเซ‡ เช•เซ‡ เชธเชฎเซ‚เชน เชœเซ‹เชกเชพเชฃเชฎเชพเช‚ เชถเซเชฐเซ‡เชฃเซ€เช“ เชธเชฎเชพเชตเซ€ เชถเช•เซ‡ เช›เซ‡ (เชœเซ‹เชกเชพเชฃ "ipv4_addr . ipv4_addr . inet_service" เชฎเชพเชŸเซ‡ เช…เช—เชพเช‰ เชšเซ‹เช•เซเช•เชธ เชธเซ‚เชšเชฟเชฌเชฆเซเชง เช•เชฐเชตเชพเชจเซเช‚ เชถเช•เซเชฏ เชนเชคเซเช‚. "192.168.10.35. 192.68.11.123" เชซเซ‹เชฐเซเชฎเชจเชพ เชฎเซ‡เชณ เช…เชจเซ‡ เชนเชตเซ‡ เชคเชฎเซ‡ "80-192.168.10.35-192.168.10.40.

    เชŸเซ‡เชฌเชฒ ip foo {
    เชตเซเชนเชพเช‡เชŸเชฒเชฟเชธเซเชŸ เชธเซ‡เชŸ เช•เชฐเซ‹ {
    ipv4_addr เชฒเช–เซ‹. ipv4_addr. inet_service
    เชซเซเชฒเซ‡เช—เซเชธ เช…เช‚เชคเชฐเชพเชฒ
    เชคเชคเซเชตเซ‹ = { 192.168.10.35-192.168.10.40 . 192.68.11.123-192.168.11.125. 80}
    }

    เชธเชพเช‚เช•เชณ เชชเชŸเซเชŸเซ€ {
    เชชเซเชฐเช•เชพเชฐ เชซเชฟเชฒเซเชŸเชฐ เชนเซ‚เช• เชชเซเชฐเซ€เชฐเซเชŸเชฟเช‚เช— เชชเซเชฐเชพเชฏเซ‹เชฐเชฟเชŸเซ€ เชซเชฟเชฒเซเชŸเชฐ; เชจเซ€เชคเชฟเชฎเชพเช‚ เช˜เชŸเชพเชกเซ‹;
    เช†เชˆเชชเซ€ เชธเชฆเซเชฆเชฐ. ip daddr. tcp dport @whitelist เชธเซเชตเซ€เช•เชพเชฐเซ‹
    }
    }

  • เชธเซ‡เชŸเซเชธ เช…เชจเซ‡ เชจเช•เชถเชพเชจเซ€ เชธเซ‚เชšเชฟเชฎเชพเช‚, "เชŸเชพเชˆเชชเช“เชซ" เชจเชฟเชฐเซเชฆเซ‡เชถเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเชตเซ‹ เชถเช•เซเชฏ เช›เซ‡, เชœเซ‡ เชฎเซ‡เชณ เช–เชพเชคเซ€ เชตเช–เชคเซ‡ เชคเชคเซเชตเชจเซเช‚ เชซเซ‹เชฐเซเชฎเซ‡เชŸ เชจเช•เซเช•เซ€ เช•เชฐเซ‡ เช›เซ‡.
    เช‰เชฆเชพเชนเชฐเชฃ เชคเชฐเซ€เช•เซ‡:

    เชŸเซ‡เชฌเชฒ ip foo {
    เชตเซเชนเชพเช‡เชŸเชฒเชฟเชธเซเชŸ เชธเซ‡เชŸ เช•เชฐเซ‹ {
    เช†เช‡เชชเซ€ เชธเซ‡เชกเชฐเชจเซ‹ เชชเซเชฐเช•เชพเชฐ
    เชคเชคเซเชตเซ‹ = { 192.168.10.35, 192.168.10.101, 192.168.10.135 }
    }

    เชธเชพเช‚เช•เชณ เชชเชŸเซเชŸเซ€ {
    เชชเซเชฐเช•เชพเชฐ เชซเชฟเชฒเซเชŸเชฐ เชนเซ‚เช• เชชเซเชฐเซ€เชฐเซเชŸเชฟเช‚เช— เชชเซเชฐเชพเชฏเซ‹เชฐเชฟเชŸเซ€ เชซเชฟเชฒเซเชŸเชฐ; เชจเซ€เชคเชฟเชฎเชพเช‚ เช˜เชŸเชพเชกเซ‹;
    ip daddr @whitelist เชธเซเชตเซ€เช•เชพเชฐเซ‹
    }
    }

    เชŸเซ‡เชฌเชฒ ip foo {
    เชจเช•เชถเซ‹ addr2mark {
    เช†เช‡เชชเซ€ เชธเซ‡เชกเชฐเชจเซ‹ เชชเซเชฐเช•เชพเชฐ: เชฎเซ‡เชŸเชพ เชฎเชพเชฐเซเช•
    เชคเชคเซเชตเซ‹ = { 192.168.10.35 : 0x00000001, 192.168.10.135 : 0x00000002 }
    }
    }

  • NAT เชฌเชพเชˆเชจเซเชกเชฟเช‚เช—เซเชธเชฎเชพเช‚ เชœเซ‹เชกเชพเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเชตเชพเชจเซ€ เช•เซเชทเชฎเชคเชพ เช‰เชฎเซ‡เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ€ เช›เซ‡, เชœเซ‡ เชคเชฎเชจเซ‡ เชจเช•เชถเชพเชจเซ€ เชธเซ‚เชšเชฟ เช…เชฅเชตเชพ เชจเชพเชฎเชจเชพ เชธเซ‡เชŸ เชชเชฐ เช†เชงเชพเชฐเชฟเชค NAT เชฐเซ‚เชชเชพเช‚เชคเชฐเชฃเชจเซ‡ เชตเซเชฏเชพเช–เซเชฏเชพเชฏเชฟเชค เช•เชฐเชคเซ€ เชตเช–เชคเซ‡ เชธเชฐเชจเชพเชฎเซเช‚ เช…เชจเซ‡ เชชเซ‹เชฐเซเชŸเชจเซ‹ เช‰เชฒเซเชฒเซ‡เช– เช•เชฐเชตเชพเชจเซ€ เชฎเช‚เชœเซ‚เชฐเซ€ เช†เชชเซ‡ เช›เซ‡:

    nft เช‰เชฎเซ‡เชฐเซ‹ เชจเชฟเชฏเชฎ ip nat pre dnat ip addr . เชชเซ‹เชฐเซเชŸ เชŸเซ เช†เชˆเชชเซ€ เชธเซ‡เชกเชฐ เชฎเซ‡เชช { 1.1.1.1 : 2.2.2.2 . เชคเซเชฐเซ€เชธ }

    nft เชจเช•เชถเซ‹ ip nat เชกเซ‡เชธเซเชŸเชฟเชจเซ‡เชถเชจ เช‰เชฎเซ‡เชฐเซ‹ { type ipv4_addr . inet_service: ipv4_addr. inet_service \\; }
    nft เช‰เชฎเซ‡เชฐเซ‹ เชจเชฟเชฏเชฎ ip nat pre dnat ip addr . เชชเซ‹เชฐเซเชŸ เชŸเซ เช†เชˆเชชเซ€ เชธเซ‡เชกเชฐ. tcp dport เชจเช•เชถเซ‹ @ destinations

  • เชจเซ‡เชŸเชตเชฐเซเช• เช•เชพเชฐเซเชก เชฆเซเชตเชพเชฐเชพ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเชคเซ€ เช•เซ‡เชŸเชฒเซ€เช• เชซเชฟเชฒเซเชŸเชฐเชฟเช‚เช— เช•เชพเชฎเช—เซ€เชฐเซ€ เชธเชพเชฅเซ‡ เชนเชพเชฐเซเชกเชตเซ‡เชฐ เชชเซเชฐเชตเซ‡เช—เช• เชฎเชพเชŸเซ‡ เชธเชชเซ‹เชฐเซเชŸ. เชชเซเชฐเชตเซ‡เช—เช• เชเชฅเชŸเซ‚เชฒ เชฏเซเชŸเชฟเชฒเชฟเชŸเซ€ ("ethtool -K eth0 hw-tc-offload เชšเชพเชฒเซ") เชฆเซเชตเชพเชฐเชพ เชธเช•เซเชทเชฎ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡, เชœเซ‡ เชชเช›เซ€ เชคเซ‡ "เช“เชซเชฒเซ‹เชก" เชซเซเชฒเซ‡เช—เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชจเซ‡ เชฎเซเช–เซเชฏ เชธเชพเช‚เช•เชณ เชฎเชพเชŸเซ‡ nftables เชฎเชพเช‚ เชธเช•เซเชฐเชฟเชฏ เชฅเชพเชฏ เช›เซ‡. Linux เช•เชฐเซเชจเชฒ 5.6 เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเชคเซ€ เชตเช–เชคเซ‡, เชนเชพเชฐเซเชกเชตเซ‡เชฐ เชชเซเชฐเชตเซ‡เช—เช•เชจเซ‡ เชนเซ‡เชกเชฐ เชซเซ€เชฒเซเชก เชฎเซ‡เชšเชฟเช‚เช— เช…เชจเซ‡ เช‡เชจเช•เชฎเชฟเช‚เช— เชˆเชจเซเชŸเชฐเชซเซ‡เชธ เชˆเชจเซเชธเซเชชเซ‡เช•เซเชถเชจ เชฎเชพเชŸเซ‡ เช†เชงเชพเชฐเชญเซ‚เชค เช›เซ‡, เชœเซ‡ เชชเซเชฐเชพเชชเซเชค เช•เชฐเชตเชพ, เช•เชพเชขเซ€ เชจเชพเช–เชตเชพ, เชกเซเชชเซเชฒเชฟเช•เซ‡เชŸเชฟเช‚เช— (dup), เช…เชจเซ‡ เชซเซ‹เชฐเชตเชฐเซเชกเชฟเช‚เช— (fwd) เชชเซ‡เช•เซ‡เชŸเซ‹ เชธเชพเชฅเซ‡ เชธเช‚เชฏเซ‹เชœเชจเชฎเชพเช‚ เช›เซ‡. เชจเซ€เชšเซ‡เชจเชพ เช‰เชฆเชพเชนเชฐเชฃเชฎเชพเช‚, 192.168.30.20 เชธเชฐเชจเชพเชฎเชพเช‚ เชชเชฐเชฅเซ€ เช†เชตเชคเชพ เชชเซ‡เช•เซ‡เชŸเซ‹ เชฎเซ‚เช•เชตเชพเชจเซ€ เช•เชพเชฎเช—เซ€เชฐเซ€ เชจเซ‡เชŸเชตเชฐเซเช• เช•เชพเชฐเซเชก เชธเซเชคเชฐเซ‡, เชชเซ‡เช•เซ‡เชŸเซ‹เชจเซ‡ เช•เชฐเซเชจเชฒ เชธเซเชงเซ€ เชชเชนเซ‹เช‚เชšเชพเชกเซเชฏเชพ เชตเชฟเชจเชพ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡:

    # cat file.nft
    เชŸเซ‡เชฌเชฒ เชจเซ‡เชŸเชฆเซ‡เชต x {
    เชธเชพเช‚เช•เชณ y {
    เชชเซเชฐเช•เชพเชฐ เชซเชฟเชฒเซเชŸเชฐ เชนเซ‚เช• เชชเซเชฐเชตเซ‡เชถ เช‰เชชเช•เชฐเชฃ eth0 เช…เช—เซเชฐเชคเชพ 10; เชซเซเชฒเซ‡เช— เช“เชซเชฒเซ‹เชก;
    ip saddr 192.168.30.20 เชกเซเชฐเซ‹เชช
    }
    }
    # nft -f file.nft

  • เชจเชฟเชฏเชฎเซ‹เชฎเชพเช‚ เชญเซ‚เชฒเชจเชพ เชธเซเชฅเชพเชจ เชตเชฟเชถเซ‡ เชธเซเชงเชพเชฐเซ‡เชฒ เชฎเชพเชนเชฟเชคเซ€.

    # nft เชกเชฟเชฒเซ€เชŸ เชจเชฟเชฏเชฎ ip yz เชนเซ‡เชจเซเชกเชฒ 7
    เชญเซ‚เชฒ: เชจเชฟเชฏเชฎ เชชเชฐ เชชเซเชฐเช•เซเชฐเชฟเชฏเชพ เช•เชฐเซ€ เชถเช•เชพเชˆ เชจเชฅเซ€: เช†เชตเซ€ เช•เซ‹เชˆ เชซเชพเช‡เชฒ เช…เชฅเชตเชพ เชกเชฟเชฐเซ‡เช•เซเชŸเชฐเซ€ เชจเชฅเซ€
    เชจเชฟเชฏเชฎ ip yz เชนเซ‡เชจเซเชกเชฒ 7 เช•เชพเชขเซ€ เชจเชพเช–เซ‹
    ^

    # nft เชกเชฟเชฒเซ€เชŸ เชจเชฟเชฏเชฎ ip xx เชนเซ‡เชจเซเชกเชฒ 7
    เชญเซ‚เชฒ: เชจเชฟเชฏเชฎ เชชเชฐ เชชเซเชฐเช•เซเชฐเชฟเชฏเชพ เช•เชฐเซ€ เชถเช•เชพเชˆ เชจเชฅเซ€: เช†เชตเซ€ เช•เซ‹เชˆ เชซเชพเช‡เชฒ เช…เชฅเชตเชพ เชกเชฟเชฐเซ‡เช•เซเชŸเชฐเซ€ เชจเชฅเซ€
    เชจเชฟเชฏเชฎ ip xx เชนเซ‡เชจเซเชกเชฒ 7 เช•เชพเชขเซ€ เชจเชพเช–เซ‹
    ^

    # nft เชŸเซ‡เชฌเชฒ เชŸเซเชตเชฟเชธเซเชŸ เช•เชพเชขเซ€ เชจเชพเช–เซ‹
    เชญเซ‚เชฒ: เช†เชตเซ€ เช•เซ‹เชˆ เชซเชพเช‡เชฒ เช…เชฅเชตเชพ เชกเชฟเชฐเซ‡เช•เซเชŸเชฐเซ€ เชจเชฅเซ€; เชถเซเช‚ เชคเชฎเชพเชฐเซ‹ เชฎเชคเชฒเชฌ เช•เซŒเชŸเซเช‚เชฌเชฟเช• เช†เชˆเชชเซ€เชฎเชพเช‚ เชŸเซ‡เชฌเชฒ 'เชŸเซ‡เชธเซเชŸ' เช›เซ‡?
    เช•เซ‹เชทเซเชŸเช• twst เช•เชพเชขเซ€ เชจเชพเช–เซ‹
    ^^^^

    เชชเซเชฐเชฅเชฎ เช‰เชฆเชพเชนเชฐเชฃ เชฌเชคเชพเชตเซ‡ เช›เซ‡ เช•เซ‡ เช•เซ‹เชทเซเชŸเช• โ€œyโ€ เชธเชฟเชธเซเชŸเชฎเชฎเชพเช‚ เชจเชฅเซ€, เชฌเซ€เชœเซเช‚ เช•เซ‡ โ€œ7โ€ เชนเซ‡เชจเซเชกเชฒเชฐ เช–เซ‚เชŸเซ‡ เช›เซ‡, เช…เชจเซ‡ เชคเซเชฐเซ€เชœเซเช‚ เช•เซ‡ เช•เซ‹เชทเซเชŸเช•เชจเซเช‚ เชจเชพเชฎ เชฒเช–เชคเซ€ เชตเช–เชคเซ‡ เชŸเชพเช‡เชชเซ‹ เชชเซเชฐเซ‹เชฎเซเชชเซเชŸ เชชเซเชฐเชฆเชฐเซเชถเชฟเชค เชฅเชพเชฏ เช›เซ‡.

  • "meta sdif" เช…เชฅเชตเชพ "meta sdifname" เชจเซ‹ เช‰เชฒเซเชฒเซ‡เช– เช•เชฐเซ€เชจเซ‡ เชธเซเชฒเซ‡เชต เชˆเชจเซเชŸเชฐเชซเซ‡เชธเชจเซ‡ เชคเชชเชพเชธเชตเชพ เชฎเชพเชŸเซ‡ เชธเชฎเชฐเซเชฅเชจ เช‰เชฎเซ‡เชฐเซเชฏเซเช‚:

    ... เชฎเซ‡เชŸเชพ sdifname vrf1 ...

  • เชœเชฎเชฃเซ€ เช•เซ‡ เชกเชพเชฌเซ€ เชชเชพเชณเซ€ เช•เชพเชฎเช—เซ€เชฐเซ€ เชฎเชพเชŸเซ‡ เช‰เชฎเซ‡เชฐเชพเชฏเซ‡เชฒ เช†เชงเชพเชฐ. เช‰เชฆเชพเชนเชฐเชฃ เชคเชฐเซ€เช•เซ‡, เชนเชพเชฒเชจเชพ เชชเซ‡เช•เซ‡เชŸ เชฒเซ‡เชฌเชฒเชจเซ‡ 1 เชฌเซ€เชŸเชฅเซ€ เชกเชพเชฌเซ‡ เชถเชฟเชซเซเชŸ เช•เชฐเชตเชพ เช…เชจเซ‡ เชจเชพเชจเชพ เชฌเซ€เชŸเชจเซ‡ 1 เชชเชฐ เชธเซ‡เชŸ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡:

    โ€ฆ เชฎเซ‡เชŸเชพ เชฎเชพเชฐเซเช• เชธเซ‡เชŸ เชฎเซ‡เชŸเชพ เชฎเชพเชฐเซเช• lshift 1 เช…เชฅเชตเชพ 0x1 โ€ฆ

  • เชตเชฟเชธเซเชคเซƒเชค เชธเช‚เชธเซเช•เชฐเชฃ เชฎเชพเชนเชฟเชคเซ€ เชชเซเชฐเชฆเชฐเซเชถเชฟเชค เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ "-V" เชตเชฟเช•เชฒเซเชช เช…เชฎเชฒเชฎเชพเช‚ เชฎเซ‚เช•เซเชฏเซ‹.

    # nft -V
    nftables v0.9.4 (เชœเซ€เชต เชเชŸ เชซเชพเช‡เชต)
    cli:readline
    json: เชนเชพ
    minigmp:เชจเชพ
    libxtables: เชนเชพ

  • เช†เชฆเซ‡เชถ เชตเชพเช•เซเชฏ เชตเชฟเช•เชฒเซเชชเซ‹ เชนเชตเซ‡ เช†เชฆเซ‡เชถเซ‹ เชชเชนเซ‡เชฒเชพเช‚ เชธเซเชชเชทเซเชŸ เชฅเชฏเซ‡เชฒ เชนเซ‹เชตเชพ เชœเซ‹เชˆเช. เช‰เชฆเชพเชนเชฐเชฃ เชคเชฐเซ€เช•เซ‡, เชคเชฎเชพเชฐเซ‡ "nft -a list ruleset" เชจเซ‹ เช‰เชฒเซเชฒเซ‡เช– เช•เชฐเชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เช›เซ‡, เช…เชจเซ‡ "nft list ruleset -a" เชšเชฒเชพเชตเชตเชพเชฅเซ€ เชญเซ‚เชฒ เช†เชตเชถเซ‡.

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

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