แž€แžถแžšแž…แŸแž‰แž•แŸ’แžŸแžถแž™แžแž˜แŸ’แžšแž„แž€แž‰แŸ’แž…แž”แŸ‹แž–แŸแžแŸŒแž˜แžถแž“ nftables 0.9.4

แž”แŸ„แŸ‡แž–แžปแž˜แŸ’แž–แž•แŸ’แžŸแžถแž™ แž€แžถแžšแž…แŸแž‰แž•แŸ’แžŸแžถแž™แžแž˜แŸ’แžšแž„แž€แž‰แŸ’แž…แž”แŸ‹ nftables 0.9.4แžŠแŸ‚แž›แž€แŸ†แž–แžปแž„แžแŸ’แžšแžผแžœแž”แžถแž“แž”แž„แŸ’แž€แžพแžแžกแžพแž„แž‡แžถแž€แžถแžšแž‡แŸ†แž“แžฝแžŸแžŸแž˜แŸ’แžšแžถแž”แŸ‹ iptables, ip6table, arptables แž“แžทแž„ ebtables แžŠแŸ„แž™แž€แžถแžšแž”แž„แŸ’แžšแžฝแž”แž”แž„แŸ’แžšแžฝแž˜แž…แŸ†แžŽแžปแž…แž”แŸ’แžšแž‘แžถแž€แŸ‹แž…แŸ’แžšแŸ„แŸ‡แž€แž‰แŸ’แž…แž”แŸ‹แžŸแž˜แŸ’แžšแžถแž”แŸ‹ IPv4, IPv6, ARP แž“แžทแž„แžŸแŸ’แž–แžถแž“แž”แžŽแŸ’แžแžถแž‰แŸ” แž€แž‰แŸ’แž…แž”แŸ‹ nftables แžšแžฝแž˜แž”แž‰แŸ’แž…แžผแž›แžŸแž˜แžถแžŸแž’แžถแžแžปแžแž˜แŸ’แžšแž„แž€แž‰แŸ’แž…แž”แŸ‹แžŠแŸ‚แž›แžŠแŸ†แžŽแžพแžšแž€แžถแžšแž€แŸ’แž“แžปแž„แž‘แŸ†แž แŸ†แžขแŸ’แž“แž€แž”แŸ’แžšแžพแž”แŸ’แžšแžถแžŸแŸ‹ แžแžŽแŸˆแž–แŸแž›แžŠแŸ‚แž›แž˜แžปแžแž„แžถแžšแž€แž˜แŸ’แžšแžทแžแžแžบแžŽแŸ‚แž›แžแŸ’แžšแžผแžœแž”แžถแž“แž•แŸ’แžแž›แŸ‹แžŠแŸ„แž™แž”แŸ’แžšแž–แŸแž“แŸ’แž’แžšแž„ nf_tables แžŠแŸ‚แž›แž‡แžถแž•แŸ’แž“แŸ‚แž€แž˜แžฝแž™แž“แŸƒแžแžบแžŽแŸ‚แž›แŸ” Linux แžŠแŸ„แž™แž…แžถแž”แŸ‹แž•แŸ’แžแžพแž˜แž‡แžถแž˜แžฝแž™แž“แžนแž„แž€แžถแžšแž…แŸแž‰แž•แŸ’แžŸแžถแž™ 3.13 แž€แžถแžšแž•แŸ’แž›แžถแžŸแŸ‹แž”แŸ’แžแžผแžšแžŠแŸ‚แž›แžแŸ’แžšแžผแžœแž€แžถแžšแžŸแž˜แŸ’แžšแžถแž”แŸ‹ nftables 0.9.4 แžŠแžพแž˜แŸ’แž”แžธแžŠแŸ†แžŽแžพแžšแž€แžถแžšแžแŸ’แžšแžผแžœแž”แžถแž“แžšแžฝแž˜แž”แž‰แŸ’แž…แžผแž›แž“แŸ…แž€แŸ’แž“แžปแž„แžŸแžถแžแžถแžแžบแžŽแŸ‚แž›แžŠแŸ‚แž›แž“แžนแž„แž…แŸแž‰แž“แžถแž–แŸแž›แžแžถแž„แž˜แžปแžแŸ” Linux 5.6.

แž€แž˜แŸ’แžšแžทแžแžแžบแžŽแŸ‚แž›แž•แŸ’แžแž›แŸ‹แžแŸ‚แž…แŸ†แžŽแžปแž…แž”แŸ’แžšแž‘แžถแž€แŸ‹แžฏแž€แžšแžถแž‡แŸ’แž™แž“แŸƒแž–แžทแž’แžธแž€แžถแžšแž‘แžผแž‘แŸ…แžŠแŸ‚แž›แž•แŸ’แžแž›แŸ‹แž˜แžปแžแž„แžถแžšแž‡แžถแž˜แžผแž›แžŠแŸ’แž‹แžถแž“แžŸแž˜แŸ’แžšแžถแž”แŸ‹แž€แžถแžšแž‘แžถแž‰แž™แž€แž‘แžทแž“แŸ’แž“แž“แŸแž™แž–แžธแž€แž‰แŸ’แž…แž”แŸ‹แž–แŸแžแŸŒแž˜แžถแž“ แž”แŸ’แžšแžแžทแž”แžแŸ’แžแžทแž€แžถแžšแž‘แžทแž“แŸ’แž“แž“แŸแž™ แž“แžทแž„แž€แžถแžšแž‚แŸ’แžšแž”แŸ‹แž‚แŸ’แžšแž„แž›แŸ†แž แžผแžšแŸ” แž…แŸ’แž”แžถแž”แŸ‹แž“แŸƒแž€แžถแžšแž…แŸ’แžšแŸ„แŸ‡ แž“แžทแž„แž€แž˜แŸ’แž˜แžœแžทแž’แžธแž‚แŸ’แžšแž”แŸ‹แž‚แŸ’แžšแž„แž‡แžถแž€แŸ‹แž›แžถแž€แŸ‹แž“แŸƒแž–แžทแž’แžธแž€แžถแžšแžแŸ’แžšแžผแžœแž”แžถแž“แž…แž„แž€แŸ’แžšแž„แž‡แžถ bytecode แž€แŸ’แž“แžปแž„แž…แž“แŸ’แž›แŸ„แŸ‡แžขแŸ’แž“แž€แž”แŸ’แžšแžพแž”แŸ’แžšแžถแžŸแŸ‹ แž”แž“แŸ’แž‘แžถแž”แŸ‹แž˜แž€ bytecode แž“แŸแŸ‡แžแŸ’แžšแžผแžœแž”แžถแž“แž•แŸ’แž‘แžปแž€แž‘แŸ…แž€แŸ’แž“แžปแž„แžแžบแžŽแŸ‚แž›แžŠแŸ„แž™แž”แŸ’แžšแžพแž…แŸ†แžŽแžปแž…แž”แŸ’แžšแž‘แžถแž€แŸ‹ Netlink แž แžพแž™แžแŸ’แžšแžผแžœแž”แžถแž“แž”แŸ’แžšแžแžทแž”แžแŸ’แžแžทแž€แŸ’แž“แžปแž„แžแžบแžŽแŸ‚แž›แž“แŸ…แž€แŸ’แž“แžปแž„แž˜แŸ‰แžถแžŸแŸŠแžธแž“แž“แžทแž˜แŸ’แž˜แžทแžแž–แžทแžŸแŸแžŸแžŠแŸ‚แž›แž“แžนแž€แžƒแžพแž‰แžŠแž›แŸ‹ BPF (Berkeley Packet Filters)แŸ” แžœแžทแž’แžธแžŸแžถแžŸแŸ’แžšแŸ’แžแž“แŸแŸ‡แžขแž“แžปแž‰แŸ’แž‰แžถแžแžฑแŸ’แž™แžขแŸ’แž“แž€แž€แžถแžแŸ‹แž”แž“แŸ’แžแž™แž™แŸ‰แžถแž„แžแŸ’แž›แžถแŸ†แž„แž“แžผแžœแž‘แŸ†แž แŸ†แž“แŸƒแž€แžผแžŠแžแŸ’แžšแž„แžŠแŸ‚แž›แž€แŸ†แž–แžปแž„แžŠแŸ†แžŽแžพแžšแž€แžถแžšแž“แŸ…แž€แž˜แŸ’แžšแžทแžแžแžบแžŽแŸ‚แž› แž แžพแž™แž•แŸ’แž›แžถแžŸแŸ‹แž‘แžธแž˜แžปแžแž„แžถแžšแž‘แžถแŸ†แž„แžขแžŸแŸ‹แž“แŸƒแž…แŸ’แž”แžถแž”แŸ‹แž‰แŸ‚แž€ แž“แžทแž„แžแž€แŸ’แž€แžœแžทแž‡แŸ’แž‡แžถแžŸแž˜แŸ’แžšแžถแž”แŸ‹แž’แŸ’แžœแžพแž€แžถแžšแž‡แžถแž˜แžฝแž™แž–แžทแž’แžธแž€แžถแžšแž‘แŸ…แž€แŸ’แž“แžปแž„แž‘แŸ†แž แŸ†แžขแŸ’แž“แž€แž”แŸ’แžšแžพแž”แŸ’แžšแžถแžŸแŸ‹แŸ”

แž€แžถแžšแž…แŸ’แž“แŸƒแž”แŸ’แžšแžŒแžทแžแžŸแŸ†แžแžถแž“แŸ‹แŸ—แŸ–

  • แž€แžถแžšโ€‹แž‚แžถแŸ†แž‘แŸ’แžšโ€‹แžŸแž˜แŸ’แžšแžถแž”แŸ‹โ€‹แž‡แžฝแžšโ€‹แž“แŸ…โ€‹แž€แŸ’แž“แžปแž„โ€‹แž€แžถแžšโ€‹แžแž—แŸ’แž‡แžถแž”แŸ‹ (แž€แžถแžšโ€‹แž—แŸ’แž‡แžถแž”แŸ‹โ€‹แž‡แžถโ€‹แž€แž‰แŸ’แž…แž”แŸ‹โ€‹แž‡แžถแž€แŸ‹แž›แžถแž€แŸ‹โ€‹แž“แŸƒโ€‹แžขแžถแžŸแž™แžŠแŸ’แž‹แžถแž“โ€‹แž“แžทแž„โ€‹แž…แŸ’แžšแž€โ€‹แžŠแŸ‚แž›โ€‹แž’แŸ’แžœแžพโ€‹แžฑแŸ’แž™โ€‹แž€แžถแžšโ€‹แž”แŸ’แžšแŸ€แž”แž’แŸ€แž”โ€‹แžŸแžถแž˜แž‰แŸ’แž‰โ€‹) แŸ” แžงแž‘แžถแž แžšแžŽแŸ แžŸแž˜แŸ’แžšแžถแž”แŸ‹แžŸแŸ†แžŽแžปแŸ† "แž”แž‰แŸ’แž‡แžธแžŸ" แžŠแŸ‚แž›แž˜แžถแž“แž’แžถแžแžปแž‡แžถแžฏแž€แžŸแžถแžšแž—แŸ’แž‡แžถแž”แŸ‹ แž€แžถแžšแž”แž‰แŸ’แž‡แžถแž€แŸ‹แž‘แž„แŸ‹ "แž…แž“แŸ’แž›แŸ„แŸ‡แž–แŸแž›" แž“แžนแž„แž”แž„แŸ’แž แžถแž‰แžแžถแžŸแŸ†แžŽแžปแŸ†แžขแžถแž…แžšแžฝแž˜แž”แž‰แŸ’แž…แžผแž›แž‡แžฝแžšแž“แŸ…แž€แŸ’แž“แžปแž„แžฏแž€แžŸแžถแžšแž—แŸ’แž‡แžถแž”แŸ‹ (แžŸแž˜แŸ’แžšแžถแž”แŸ‹แžฏแž€แžŸแžถแžšแž—แŸ’แž‡แžถแž”แŸ‹ "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 saddr แŸ” แžขแžถแž™แž—แžธ แž”แŸ‰แžถ tcp dport @whitelist แž‘แž‘แžฝแž›แž™แž€
    }
    }

  • แž“แŸ…แž€แŸ’แž“แžปแž„แžŸแŸ†แžŽแžปแŸ† แž“แžทแž„แž”แž‰แŸ’แž‡แžธแž•แŸ‚แž“แž‘แžธ แžœแžถแžขแžถแž…แž”แŸ’แžšแžพแž€แžถแžšแžŽแŸ‚แž“แžถแŸ† "typeof" แžŠแŸ‚แž›แž€แŸ†แžŽแžแŸ‹แž‘แž˜แŸ’แžšแž„แŸ‹แž“แŸƒแž’แžถแžแžปแž“แŸ…แž–แŸแž›แž•แŸ’แž‚แžผแž•แŸ’แž‚แž„แŸ”
    แžงแž‘แžถแž แžšแžŽแŸ:

    แžแžถแžšแžถแž„ ip foo {
    แž€แŸ†แžŽแžแŸ‹แž”แž‰แŸ’แž‡แžธแžŸ {
    แž”แŸ’แžšแž—แŸแž‘แž“แŸƒ ip saddr
    แž’แžถแžแžป = { 192.168.10.35, 192.168.10.101, 192.168.10.135 }
    }

    แžšแž”แžถแžšแžแŸ’แžŸแŸ‚แžŸแž„แŸ’แžœแžถแž€แŸ‹ {
    แž”แŸ’แžšแž—แŸแž‘แžแž˜แŸ’แžšแž„แž‘แŸ†แž–แž€แŸ‹ แžแž˜แŸ’แžšแž„แŸ‹แž‘แžทแžŸแžแž˜แŸ’แžšแž„แžขแžถแž‘แžทแž—แžถแž–; แž€แžถแžšแž’แŸ’แž›แžถแž€แŸ‹แž…แžปแŸ‡แž‚แŸ„แž›แž“แž™แŸ„แž”แžถแž™;
    ip daddr @whitelist แž‘แž‘แžฝแž›แž™แž€
    }
    }

    แžแžถแžšแžถแž„ ip foo {
    แž•แŸ‚แž“แž‘แžธ addr2mark {
    แž”แŸ’แžšแž—แŸแž‘ ip saddr : meta mark
    แž’แžถแžแžป = { 192.168.10.35 : 0x00000001, 192.168.10.135 : 0x00000002 }
    }
    }

  • แž”แžถแž“แž”แž“แŸ’แžแŸ‚แž˜แžŸแž˜แžแŸ’แžแž—แžถแž–แž€แŸ’แž“แžปแž„แž€แžถแžšแž”แŸ’แžšแžพแž€แžถแžšแž—แŸ’แž‡แžถแž”แŸ‹แž“แŸ…แž€แŸ’แž“แžปแž„แž€แžถแžšแž…แž„ NAT แžŠแŸ‚แž›แžขแž“แžปแž‰แŸ’แž‰แžถแžแžฑแŸ’แž™แžขแŸ’แž“แž€แž”แž‰แŸ’แž‡แžถแž€แŸ‹แžขแžถแžŸแž™แžŠแŸ’แž‹แžถแž“ แž“แžทแž„แž…แŸ’แžšแž€แž“แŸ…แž–แŸแž›แž€แŸ†แžŽแžแŸ‹แž€แžถแžšแž”แŸ†แž”แŸ’แž›แŸ‚แž„ NAT แžŠแŸ„แž™แž•แŸ’แžขแŸ‚แž€แž›แžพแž”แž‰แŸ’แž‡แžธแž•แŸ‚แž“แž‘แžธ แžฌแžŸแŸ†แžŽแžปแŸ†แžŠแŸ‚แž›แž˜แžถแž“แžˆแŸ’แž˜แŸ„แŸ‡แŸ–

    nft แž”แž“แŸ’แžแŸ‚แž˜แž…แŸ’แž”แžถแž”แŸ‹ ip nat pre dnat ip addr แŸ” แž…แŸ’แžšแž€แž‘แŸ…แž•แŸ‚แž“แž‘แžธ ip saddr { 1.1.1.1 : 2.2.2.2 แŸ” แžŸแžถแž˜แžŸแžทแž” }

    nft แž”แž“แŸ’แžแŸ‚แž˜แž•แŸ‚แž“แž‘แžธ ip nat แž‘แžทแžŸแžŠแŸ… { แžœแžถแž™ ipv4_addr . inet_serviceแŸ– ipv4_addr. inet_service \\; }
    nft แž”แž“แŸ’แžแŸ‚แž˜แž…แŸ’แž”แžถแž”แŸ‹ ip nat pre dnat ip addr แŸ” แž…แŸ’แžšแž€แž‘แŸ… ip saddr แŸ” tcp dport map @destinations

  • แž‚แžถแŸ†แž‘แŸ’แžšโ€‹แž€แžถแžšโ€‹แž”แž„แŸ’แž€แžพแž“โ€‹แž›แŸ’แž”แžฟแž“โ€‹แž•แŸ’แž“แŸ‚แž€โ€‹แžšแžนแž„โ€‹แžŠแŸ„แž™โ€‹แž€แžถแžšโ€‹แž•แŸ’แž‘แŸแžšโ€‹แž”แŸ’แžšแžแžทแž”แžแŸ’แžแžทแž€แžถแžšโ€‹แž…แŸ’แžšแŸ„แŸ‡โ€‹แž˜แžฝแž™โ€‹แž…แŸ†แž“แžฝแž“โ€‹แž‘แŸ…โ€‹แž€แžถแžโ€‹แž”แžŽแŸ’แžŠแžถแž‰แŸ” แž€แžถแžšโ€‹แž”แž„แŸ’แž€แžพแž“โ€‹แž›แŸ’แž”แžฟแž“โ€‹แžแŸ’แžšแžผแžœโ€‹แž”แžถแž“โ€‹แž”แžพแž€โ€‹แžแžถแž˜โ€‹แžšแž™แŸˆโ€‹แžงแž”แž€แžšแžŽแŸโ€‹แž”แŸ’แžšแžพแž”แŸ’แžšแžถแžŸแŸ‹ ethtool ("ethtool -K eth0 hw-tc-offload on") แž”แž“แŸ’แž‘แžถแž”แŸ‹โ€‹แž–แžธโ€‹แž“แŸ„แŸ‡โ€‹แžœแžถโ€‹แžแŸ’แžšแžผแžœโ€‹แž”แžถแž“โ€‹แž’แŸ’แžœแžพโ€‹แžฑแŸ’แž™โ€‹แžŸแž€แž˜แŸ’แž˜โ€‹แž“แŸ…โ€‹แž€แŸ’แž“แžปแž„ nftables แžŸแž˜แŸ’แžšแžถแž”แŸ‹โ€‹แžแŸ’แžŸแŸ‚โ€‹แžŸแž„แŸ’แžœแžถแž€แŸ‹โ€‹แž˜แŸโ€‹แžŠแŸ„แž™โ€‹แž”แŸ’แžšแžพโ€‹แž‘แž„แŸ‹ "offload"แŸ” แž“แŸ…แž–แŸแž›โ€‹แž”แŸ’แžšแžพโ€‹แžแžบแžŽแŸ‚แž› Linux 5.6 แž‚แžถแŸ†แž‘แŸ’แžšแž€แžถแžšแž”แž„แŸ’แž€แžพแž“แž›แŸ’แž”แžฟแž“แž•แŸ’แž“แŸ‚แž€แžšแžนแž„แžŸแž˜แŸ’แžšแžถแž”แŸ‹แž€แžถแžšแž•แŸ’แž‚แžผแž•แŸ’แž‚แž„แžœแžถแž›แž”แž‹แž˜แž€แžแžถ แž“แžทแž„แž€แžถแžšแžแŸ’แžšแžฝแžแž–แžทแž“แžทแžแŸ’แž™แž…แŸ†แžŽแžปแž…แž”แŸ’แžšแž‘แžถแž€แŸ‹แž…แžผแž› แžšแžฝแž˜แž•แŸ’แžŸแŸ†แž‡แžถแž˜แžฝแž™แž“แžนแž„แž€แžถแžšแž‘แž‘แžฝแž›แž™แž€แž€แž‰แŸ’แž…แž”แŸ‹ แž€แžถแžšแž”แŸ„แŸ‡แž”แž„แŸ‹แž…แŸ„แž› แž€แžถแžšแž…แž˜แŸ’แž›แž„ (dup) แž“แžทแž„แž€แžถแžšแž”แž‰แŸ’แž‡แžผแž“แž”แž“แŸ’แž (fwd)แŸ” แž“แŸ…แž€แŸ’แž“แžปแž„แžงแž‘แžถแž แžšแžŽแŸแžแžถแž„แž€แŸ’แžšแŸ„แž˜ แž€แžถแžšแž”แŸ„แŸ‡แž”แž„แŸ‹แž…แŸ„แž›แž€แž‰แŸ’แž…แž”แŸ‹แž–แžธ 192.168.30.20 แžแŸ’แžšแžผแžœแž”แžถแž“แžขแž“แžปแžœแžแŸ’แžแž“แŸ…แž€แž˜แŸ’แžšแžทแžแž€แžถแžแž…แŸ†แžŽแžปแž…แž”แŸ’แžšแž‘แžถแž€แŸ‹แž”แžŽแŸ’แžแžถแž‰ แžŠแŸ„แž™แž˜แžทแž“แž…แžถแŸ†แž”แžถแž…แŸ‹แž”แž‰แŸ’แž‡แžผแž“แž€แž‰แŸ’แž…แž”แŸ‹แž‘แŸ…แžแžบแžŽแŸ‚แž›แž‘แŸแŸ–

    # cat file.nft
    แžแžถแžšแžถแž„ netdev x {
    แžแŸ’แžŸแŸ‚แžŸแž„แŸ’แžœแžถแž€แŸ‹ y {
    แž”แŸ’แžšแž—แŸแž‘แžแž˜แŸ’แžšแž„ hook ingress แžงแž”แž€แžšแžŽแŸ eth0 แžขแžถแž‘แžทแž—แžถแž– 10; แž‘แž„แŸ‹แž‡แžถแžแžทแž”แžทแž‘;
    ip saddr 192.168.30.20 แž‘แž˜แŸ’แž›แžถแž€แŸ‹
    }
    }
    # nft -f file.nft

  • แž–แŸแžแŸŒแž˜แžถแž“แžŠแŸ‚แž›แž”แžถแž“แž€แŸ‚แž›แž˜แŸ’แžขแžขแŸ†แž–แžธแž‘แžธแžแžถแŸ†แž„แž“แŸƒแž€แŸ†แž แžปแžŸแž“แŸ…แž€แŸ’แž“แžปแž„แž…แŸ’แž”แžถแž”แŸ‹แŸ”

    # nft แž›แžปแž”แž€แŸ’แž”แžฝแž“ ip yz handle แŸง
    แž€แŸ†แž แžปแžŸแŸ– แž˜แžทแž“แžขแžถแž…แžŠแŸ†แžŽแžพแžšแž€แžถแžšแž…แŸ’แž”แžถแž”แŸ‹แž”แžถแž“แž‘แŸแŸ– แž‚แŸ’แž˜แžถแž“แžฏแž€แžŸแžถแžš แžฌแžแžแžฏแž€แžŸแžถแžšแž”แŸ‚แž”แž“แŸแŸ‡แž‘แŸแŸ”
    แž›แžปแž”แž€แŸ’แž”แžฝแž“ ip yz handle แŸง
    ^

    # nft แž›แžปแž”แž€แŸ’แž”แžฝแž“ ip xx แž…แŸ†แžŽแžปแž…แž‘แžถแž‰ แŸง
    แž€แŸ†แž แžปแžŸแŸ– แž˜แžทแž“แžขแžถแž…แžŠแŸ†แžŽแžพแžšแž€แžถแžšแž…แŸ’แž”แžถแž”แŸ‹แž”แžถแž“แž‘แŸแŸ– แž‚แŸ’แž˜แžถแž“แžฏแž€แžŸแžถแžš แžฌแžแžแžฏแž€แžŸแžถแžšแž”แŸ‚แž”แž“แŸแŸ‡แž‘แŸแŸ”
    แž›แžปแž”แž€แŸ’แž”แžฝแž“ ip xx handle แŸง
    ^

    # nft แž›แžปแž”แžแžถแžšแžถแž„ twst
    แž€แŸ†แž แžปแžŸแŸ– แž‚แŸ’แž˜แžถแž“แžฏแž€แžŸแžถแžš แžฌแžแžแžฏแž€แžŸแžถแžšแž”แŸ‚แž”แž“แŸแŸ‡แž‘แŸแŸ” แžแžพโ€‹แžขแŸ’แž“แž€โ€‹แž˜แžถแž“โ€‹แž“แŸแž™โ€‹แžแžถโ€‹แžแžถแžšแžถแž„ 'test' แž€แŸ’แž“แžปแž„ family ip แž‘แŸ?
    แž›แžปแž”แžแžถแžšแžถแž„ twst
    ^^^^

    แžงแž‘แžถแž แžšแžŽแŸแž‘แžธ 7 แž”แž„แŸ’แž แžถแž‰แžแžถแžแžถแžšแžถแž„ "y" แž˜แžทแž“แž˜แžถแž“แž“แŸ…แž€แŸ’แž“แžปแž„แž”แŸ’แžšแž–แŸแž“แŸ’แž’แž‘แŸ แž‘แžธแž–แžธแžšแžŠแŸ‚แž›แžขแŸ’แž“แž€แžŠแŸ„แŸ‡แžŸแŸ’แžšแžถแž™ "XNUMX" แž”แžถแžแŸ‹ แž แžพแž™แž‘แžธแž”แžธแžŠแŸ‚แž›แž”แŸ’แžšแžขแž”แŸ‹แž”แž‰แŸ’แž…แžผแž›แžœแžถแž™แžขแž€แŸ’แžŸแžšแžแŸ’แžšแžผแžœแž”แžถแž“แž”แž„แŸ’แž แžถแž‰แž“แŸ…แž–แŸแž›แžœแžถแž™แžˆแŸ’แž˜แŸ„แŸ‡แžแžถแžšแžถแž„แŸ”

  • แž”แžถแž“แž”แž“แŸ’แžแŸ‚แž˜แž€แžถแžšแž‚แžถแŸ†แž‘แŸ’แžšแžŸแž˜แŸ’แžšแžถแž”แŸ‹แž–แžทแž“แžทแžแŸ’แž™แž˜แžพแž›แž…แŸ†แžŽแžปแž…แž”แŸ’แžšแž‘แžถแž€แŸ‹ slave แžŠแŸ„แž™แž”แž‰แŸ’แž‡แžถแž€แŸ‹ "meta sdif" แžฌ "meta sdifname"แŸ–

    ... meta sdifname vrf1 ...

  • แž”แžถแž“แž”แž“แŸ’แžแŸ‚แž˜แž€แžถแžšแž‚แžถแŸ†แž‘แŸ’แžšแžŸแž˜แŸ’แžšแžถแž”แŸ‹แž”แŸ’แžšแžแžทแž”แžแŸ’แžแžทแž€แžถแžšแž”แŸ’แžแžผแžšแžŸแŸ’แžแžถแŸ†แžฌแž†แŸ’แžœแŸแž„แŸ” แžงแž‘แžถแž แžšแžŽแŸ แžŠแžพแž˜แŸ’แž”แžธแž•แŸ’แž›แžถแžŸแŸ‹แž”แŸ’แžแžผแžšแžŸแŸ’แž›แžถแž€แž€แž‰แŸ’แž…แž”แŸ‹แž–แŸแžแŸŒแž˜แžถแž“แžŠแŸ‚แž›แž˜แžถแž“แžŸแŸ’แžšแžถแž”แŸ‹แž‘แžปแž€แžŠแŸ„แž™ 1 แž”แŸŠแžธแž แž แžพแž™แž€แŸ†แžŽแžแŸ‹แž”แŸŠแžธแžแžแžผแž…แž‘แŸ… 1แŸ–

    โ€ฆ แž€แŸ†แžŽแžแŸ‹แžŸแž˜แŸ’แž‚แžถแž›แŸ‹แž˜แŸแžแžถ แž€แŸ†แžŽแžแŸ‹แžŸแž˜แŸ’แž‚แžถแž›แŸ‹แž˜แŸแžแžถ lshift 1 แžฌ 0x1 โ€ฆ

  • แž”แžถแž“แžขแž“แžปแžœแžแŸ’แžแž‡แž˜แŸ’แžšแžพแžŸ "-V" แžŠแžพแž˜แŸ’แž”แžธแž”แž„แŸ’แž แžถแž‰แž–แŸแžแŸŒแž˜แžถแž“แž€แŸ†แžŽแŸ‚แž”แž“แŸ’แžแŸ‚แž˜แŸ”

    # nft -V
    nftables v0.9.4 (Jive at Five)
    cli: แž”แž“แŸ’แž‘แžถแžแŸ‹แžขแžถแž“
    json: แž”แžถแž‘
    minigmp: แž‘แŸแŸ”
    libxtables: แž”แžถแž‘

  • แžฅแžกแžผแžœแž“แŸแŸ‡แž‡แž˜แŸ’แžšแžพแžŸแž”แž“แŸ’แž‘แžถแžแŸ‹แž–แžถแž€แŸ’แž™แž”แž‰แŸ’แž‡แžถแžแŸ’แžšแžผแžœแžแŸ‚แž”แž‰แŸ’แž‡แžถแž€แŸ‹แž˜แžปแž“แž–แŸแž›แž–แžถแž€แŸ’แž™แž”แž‰แŸ’แž‡แžถแŸ” แžงแž‘แžถแž แžšแžŽแŸ แžขแŸ’แž“แž€แžแŸ’แžšแžผแžœแž”แž‰แŸ’แž‡แžถแž€แŸ‹ "nft -a list ruleset" แž แžพแž™แž€แžถแžšแžŠแŸ†แžŽแžพแžšแž€แžถแžš "nft list ruleset -a" แž“แžนแž„แž”แžŽแŸ’แžแžถแž›แžฑแŸ’แž™แž˜แžถแž“แž€แŸ†แž แžปแžŸแŸ”

    แž”แŸ’แžšแž—แž–: opennet.ru

แž‘แžทแž‰แž€แžถแžšแž”แž„แŸ’แž แŸ„แŸ‡แžŠแŸ‚แž›แžขแžถแž…แž‘แžปแž€แž…แžทแžแŸ’แžแž”แžถแž“แžŸแž˜แŸ’แžšแžถแž”แŸ‹แž‚แŸแž แž‘แŸ†แž–แŸแžšแžŠแŸ‚แž›แž˜แžถแž“แž€แžถแžšแž€แžถแžšแž–แžถแžš DDoS, แž˜แŸ‰แžถแžŸแŸŠแžธแž“แž˜แŸ VPS VDS ๐Ÿ”ฅ แž‘แžทแž‰แžŸแŸแžœแžถแž”แž„แŸ’แž แŸ„แŸ‡แž‚แŸแž แž‘แŸ†แž–แŸแžšแžŠแŸ‚แž›แžขแžถแž…แž‘แžปแž€แž…แžทแžแŸ’แžแž”แžถแž“แž‡แžถแž˜แžฝแž™แž“แžนแž„แž€แžถแžšแž€แžถแžšแž–แžถแžš DDoS แž“แžทแž„แž˜แŸ‰แžถแžŸแŸŠแžธแž“แž˜แŸ VPS VDS | ProHoster