nftables เดชเดพเด•เตเด•เดฑเตเดฑเต เดซเดฟเตฝเดŸเตเดŸเตผ 1.0.0 เดฑเดฟเดฒเต€เดธเต

IPv1.0.0, IPv4, ARP, เดจเต†เดฑเตเดฑเตโ€Œเดตเตผเด•เตเด•เต เดฌเตเดฐเดฟเดกเตเดœเตเด•เตพ (iptables, ip6table, arptables, ebtables เดŽเดจเตเดจเดฟเดต เดฎเดพเดฑเตเดฑเดฟเดธเตเดฅเดพเดชเดฟเด•เตเด•เดพเตป เดฒเด•เตเดทเตเดฏเดฎเดฟเดŸเตเดŸเตเดณเตเดณ) เดชเดพเด•เตเด•เดฑเตเดฑเต เดซเดฟเตฝเดŸเตเดŸเดฑเดฟเด‚เด—เต เด‡เดจเตเดฑเตผเดซเต‡เดธเตเด•เตพ เดเด•เต€เด•เดฐเดฟเด•เตเด•เตเดจเตเดจ เดชเดพเด•เตเด•เดฑเตเดฑเต เดซเดฟเตฝเดŸเตเดŸเตผ nftables 6 เดชเตเดฑเดคเตเดคเดฟเดฑเด•เตเด•เดฟ. nftables 1.0.0 เดฑเดฟเดฒเต€เดธเต เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต เด†เดตเดถเตเดฏเดฎเดพเดฏ เดฎเดพเดฑเตเดฑเด™เตเด™เตพ Linux 5.13 เด•เต‡เตผเดฃเดฒเดฟเตฝ เด‰เตพเดชเตเดชเต†เดŸเตเดคเตเดคเดฟเดฏเดฟเดŸเตเดŸเตเดฃเตเดŸเต. เดชเดคเดฟเดชเตเดชเต เดจเดฎเตเดชเดฑเดฟเดฒเต† เด’เดฐเต เดชเตเดฐเดงเดพเดจ เดฎเดพเดฑเตเดฑเด‚ เด…เดŸเดฟเดธเตเดฅเดพเดจเดชเดฐเดฎเดพเดฏ เดฎเดพเดฑเตเดฑเด™เตเด™เดณเตเดฎเดพเดฏเดฟ เดฌเดจเตเดงเดชเตเดชเต†เดŸเตเดคเตเดคเดฟเดฏเดฟเดŸเตเดŸเดฟเดฒเตเดฒ, เดชเด•เตเดทเต‡ เดฆเดถเดพเด‚เดถ เดจเตŠเดŸเตเดŸเต‡เดทเดจเดฟเตฝ เดจเดฎเตเดชเดฑเดฟเด‚เด—เดฟเดจเตเดฑเต† เดธเตเดฅเดฟเดฐเดฎเดพเดฏ เดคเตเดŸเตผเดšเตเดšเดฏเตเดŸเต† เด…เดจเดจเตเดคเดฐเดซเดฒเด‚ เดฎเดพเดคเตเดฐเดฎเดพเดฃเต (เดฎเตเดฎเตเดชเดคเตเดคเต† เดฑเดฟเดฒเต€เดธเต 0.9.9 เด†เดฏเดฟเดฐเตเดจเตเดจเต).

nftables เดชเดพเด•เตเด•เต‡เดœเดฟเตฝ เดฏเต‚เดธเตผ เดธเตเดชเต‡เดธเดฟเตฝ เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดจเตเดจ เดชเดพเด•เตเด•เดฑเตเดฑเต เดซเดฟเตฝเดŸเตเดŸเตผ เด˜เดŸเด•เด™เตเด™เตพ เด‰เตพเดชเตเดชเต†เดŸเตเดจเตเดจเต, เด…เดคเต‡เดธเดฎเดฏเด‚ เด•เต‡เตผเดฃเตฝ-เดฒเต†เดตเตฝ เดตเตผเด•เตเด•เต เดจเตฝเด•เตเดจเตเดจเดคเต 3.13 เดฑเดฟเดฒเต€เดธเต เดฎเตเดคเตฝ Linux เด•เต‡เตผเดฃเดฒเดฟเดจเตเดฑเต† เดญเดพเด—เดฎเดพเดฏ nf_tables เดธเดฌเตเดธเดฟเดธเตเดฑเตเดฑเดฎเดพเดฃเต. เดชเดพเด•เตเด•เดฑเตเดฑเตเด•เดณเดฟเตฝ เดจเดฟเดจเตเดจเต เดกเดพเดฑเตเดฑ เดŽเด•เตโ€Œเดธเตโ€ŒเดŸเตเดฐเดพเด•เตเดฑเตเดฑเตเดšเต†เดฏเตเดฏเตเดจเตเดจเดคเดฟเดจเตเด‚ เดกเดพเดฑเตเดฑ เดชเตเดฐเดตเตผเดคเตเดคเดจเด™เตเด™เตพ เดจเดŸเดคเตเดคเตเดจเตเดจเดคเดฟเดจเตเด‚ เดซเตเดฒเต‹ เด•เตบเดŸเตเดฐเต‹เตพ เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเดฟเดจเตเดฎเตเดณเตเดณ เด…เดŸเดฟเดธเตเดฅเดพเดจ เดชเตเดฐเดตเตผเดคเตเดคเดจเด™เตเด™เตพ เดจเตฝเด•เตเดจเตเดจ เด’เดฐเต เดœเดจเดฑเดฟเด•เต เดชเตเดฐเต‹เดŸเตเดŸเต‹เด•เตเด•เต‹เตพ-เดธเตเดตเดคเดจเตเดคเตเดฐ เด‡เดจเตเดฑเตผเดซเต‡เดธเต เดฎเดพเดคเตเดฐเดฎเดพเดฃเต เด•เต‡เตผเดฃเตฝ เดฒเต†เดตเตฝ เดจเตฝเด•เตเดจเตเดจเดคเต.

เดซเดฟเตฝเดŸเตเดŸเดฑเดฟเด‚เด—เต เดจเดฟเดฏเดฎเด™เตเด™เดณเตเด‚ เดชเตเดฐเต‹เดŸเตเดŸเต‹เด•เตเด•เต‹เตพ-เดจเดฟเตผเดฆเตเดฆเดฟเดทเตโ€ŒเดŸ เดนเดพเตปเดกเตโ€Œเดฒเดฑเตเด•เดณเตเด‚ เดฏเต‚เดธเตผ-เดธเตโ€Œเดชเต‡เดธเต เดฌเตˆเดฑเตเดฑเตโ€Œเด•เต‹เดกเดฟเดฒเต‡เด•เตเด•เต เด•เด‚เดชเตˆเตฝ เดšเต†เดฏเตเดฏเตเดจเตเดจเต, เด…เดคเดฟเดจเตเดถเต‡เดทเด‚ เดˆ เดฌเตˆเดฑเตเดฑเตโ€Œเด•เต‹เดกเต เดจเต†เดฑเตเดฑเตโ€Œเดฒเดฟเด™เตเด•เต เด‡เดจเตเดฑเตผเดซเต‡เดธเต เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เด•เต‡เตผเดฃเดฒเดฟเดฒเต‡เด•เตเด•เต เดฒเต‹เดกเต เดšเต†เดฏเตเดฏเตเด•เดฏเตเด‚ เดฌเดฟเดชเดฟเดŽเดซเต (เดฌเต†เตผเด•เตเด•เตโ€Œเดฒเดฟ เดชเดพเด•เตเด•เดฑเตเดฑเต เดซเดฟเตฝเดŸเตเดŸเดฑเตเด•เตพ) เดชเต‹เดฒเต†เดฏเตเดณเตเดณ เด’เดฐเต เดชเตเดฐเดคเตเดฏเต‡เด• เดตเต†เตผเดšเตเดตเตฝ เดฎเต†เดทเต€เดจเดฟเตฝ เด•เต‡เตผเดฃเดฒเดฟเตฝ เดŽเด•เตโ€Œเดธเดฟเด•เตเดฏเต‚เดŸเตเดŸเต เดšเต†เดฏเตเดฏเตเด•เดฏเตเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเต. เดˆ เดธเดฎเต€เดชเดจเด‚ เด•เต‡เตผเดฃเตฝ เดคเดฒเดคเตเดคเดฟเตฝ เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดจเตเดจ เดซเดฟเตฝเดŸเตเดŸเดฑเดฟเด‚เด—เต เด•เต‹เดกเดฟเดจเตเดฑเต† เดตเดฒเตเดชเตเดชเด‚ เด—เดฃเตเดฏเดฎเดพเดฏเดฟ เด•เตเดฑเดฏเตเด•เตเด•เตเด•เดฏเตเด‚ เดชเดพเดดเตเดธเดฟเด‚เด—เต เดจเดฟเดฏเดฎเด™เตเด™เดณเตเดŸเต† เดŽเดฒเตเดฒเดพ เดชเตเดฐเดตเตผเดคเตเดคเดจเด™เตเด™เดณเตเด‚ เดชเตเดฐเต‹เดŸเตเดŸเต‹เด•เตเด•เต‹เดณเตเด•เตพเด•เตเด•เตŠเดชเตเดชเด‚ เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดจเตเดจ เดฒเต‹เดœเดฟเด•เตเด•เตเด‚ เดฏเต‚เดธเตผ เดธเตเดชเต‡เดธเดฟเดฒเต‡เด•เตเด•เต เดจเต€เด•เตเด•เตเด•เดฏเตเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเต.

เดชเตเดฐเดงเดพเดจ เด•เดฃเตเดŸเตเดชเดฟเดŸเตเดคเตเดคเด™เตเด™เตพ:

  • เดธเต†เดฑเตเดฑเต เดฒเดฟเดธเตโ€Œเดฑเตเดฑเตเด•เดณเดฟเดฒเต‡เด•เตเด•เต โ€œ*โ€ เดฎเดพเดธเตโ€Œเด•เต เดŽเดฒเดฎเต†เดจเตเดฑเดฟเดจเตเดณเตเดณ เดชเดฟเดจเตเดคเตเดฃ เดšเต‡เตผเดคเตเดคเดฟเดŸเตเดŸเตเดฃเตเดŸเต, เด‡เดคเต เดธเต†เดฑเตเดฑเดฟเตฝ เดจเดฟเตผเดตเดšเดฟเดšเตเดšเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจ เดฎเดฑเตเดฑเต เด˜เดŸเด•เด™เตเด™เดณเตเดŸเต† เด•เต€เดดเดฟเตฝ เดตเดฐเดพเดคเตเดค เดชเดพเด•เตเด•เต‡เดœเตเด•เตพเด•เตเด•เดพเดฏเดฟ เดชเตเดฐเดตเตผเดคเตเดคเดจเด•เตเดทเดฎเดฎเดพเด•เตเด•เตเดจเตเดจเต. เดชเดŸเตเดŸเดฟเด• x {เดฎเดพเดชเตเดชเต เดฌเตเดฒเต‹เด•เตเด•เตโ€Œเดฒเดฟเดธเตเดฑเตเดฑเต {เดคเดฐเด‚ ipv4_addr : เดตเดฟเดงเดฟ เดซเตเดฒเดพเด—เตเด•เดณเตเดŸเต† เด‡เดŸเดตเต‡เดณ เด˜เดŸเด•เด™เตเด™เตพ = { 192.168.0.0/16 : เดธเตเดตเต€เด•เดฐเดฟเด•เตเด•เตเด•, 10.0.0.0/8 : เดธเตเดตเต€เด•เดฐเดฟเด•เตเด•เตเด•, * : เดกเตเดฐเต‹เดชเตเดชเต } } เดšเต†เดฏเดฟเตป y {เดคเดฐเด‚ เดซเดฟเตฝเดŸเตเดŸเตผ เดนเตเด•เตเด•เต เดฎเตเตปโ€Œเด—เดฃเดจ 0; เดจเดฏเด‚ เดธเตเดตเต€เด•เดฐเดฟเด•เตเด•เตเด•; ip saddr vmap @blocklist }}
  • โ€œ--defineโ€ เด“เดชเตเดทเตป เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เด•เดฎเดพเตปเดกเต เดฒเตˆเดจเดฟเตฝ เดจเดฟเดจเตเดจเต เดตเต‡เดฐเดฟเดฏเดฌเดฟเดณเตเด•เตพ เดจเดฟเตผเดตเดšเดฟเด•เตเด•เดพเตป เดธเดพเดงเดฟเด•เตเด•เตเด‚. # cat test.nft เดŸเต‡เดฌเดฟเตพ netdev x {เดšเต†เดฏเดฟเตป y {เดŸเตˆเดชเตเดชเต เดซเดฟเตฝเดŸเตเดŸเตผ เดนเตเด•เตเด•เต เด‡เตปเด—เตเดฐเดธเต เด‰เดชเด•เดฐเดฃเด™เตเด™เตพ = $dev เดฎเตเตปเด—เดฃเดจ 0; เดจเดฏเดชเดฐเดฎเดพเดฏ เดตเต€เดดเตเดš; } } # nft โ€”define dev="{ eth0, eth1 }" -f test.nft
  • เดฎเดพเดชเตเดชเต เดฒเดฟเดธเตเดฑเตเดฑเตเด•เดณเดฟเตฝ, เดธเตเดฅเดฟเดฐเดฎเดพเดฏ (เดธเตเดฑเตเดฑเต‡เดฑเตเดฑเตเดซเตเตพ) เดŽเด•เตเดธเตเดชเตเดฐเดทเดจเตเด•เดณเตเดŸเต† เด‰เดชเดฏเต‹เด—เด‚ เด…เดจเตเดตเดฆเดจเต€เดฏเดฎเดพเดฃเต: เดŸเต‡เดฌเดฟเตพ เด‡เดจเต†เดฑเตเดฑเต เดซเดฟเตฝเดŸเตเดŸเตผ { เดฎเดพเดชเตเดชเต เดชเต‹เตผเดŸเตเดŸเตเดฎเดพเดชเตเดชเต { เดŸเตˆเดชเตเดชเต inet_service : เดตเดฟเดงเดฟ เด•เต—เดฃเตเดŸเตผ เด˜เดŸเด•เด™เตเด™เตพ = { 22 เด•เตŒเดฃเตเดŸเตผ เดชเดพเด•เตเด•เดฑเตเดฑเตเด•เตพ 0 เดฌเตˆเดฑเตเดฑเตเด•เตพ 0 : jump ssh_input, * counter packets 0 bytes 0 : drop } } เดšเต†เดฏเดฟเตป ssh_input { } chain wan_input { tcp dport vmap @portmap } เดšเต†เดฏเดฟเตป เดชเตเดฐเดฟเดฑเต—เดŸเตเดŸเดฟเด‚เด—เต {เดŸเตˆเดชเตเดชเต เดซเดฟเตฝเดŸเตเดŸเตผ เดนเตเด•เตเด•เต เดชเตเดฐเดฟเดฑเต—เดŸเตเดŸเดฟเด‚เด—เต เดฎเตเตปเด—เดฃเดจ เดฑเต‹; เดจเดฏเด‚ เดธเตเดตเต€เด•เดฐเดฟเด•เตเด•เตเด•; iif vmap { "lo" : jump wan_input } } }
  • เดคเดจเตเดจเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจ เดชเดพเด•เตเด•เดฑเตเดฑเต เดซเดพเดฎเดฟเดฒเดฟเด•เตเด•เดพเดฏเตเดณเตเดณ เดนเดพเตปเดกเตโ€Œเดฒเดฑเตเด•เดณเตเดŸเต† เด’เดฐเต เดฒเดฟเดธเตเดฑเตเดฑเต เดชเตเดฐเดฆเตผเดถเดฟเดชเตเดชเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต "เดฒเดฟเดธเตเดฑเตเดฑเต เดนเตเด•เตเด•เตเดธเต" เด•เดฎเดพเตปเดกเต เดšเต‡เตผเดคเตเดคเต: # nft เดฒเดฟเดธเตเดฑเตเดฑเต เดนเตเด•เตเด•เตเด•เตพ IP เด‰เดชเด•เดฐเดฃเด‚ eth0 เดซเดพเดฎเดฟเดฒเดฟ ip { hook ingress { +0000000010 chain netdev xy [nf_tables] +0000000300 chain inet mw เดชเตเดŸเตเดŸเต [nf_tables] { -0000000100 เดšเต†เดฏเดฟเตป ip ab [nf_tables] +0000000300 chain inet mz [nf_tables] } เดนเตเด•เตเด•เต เดซเต‹เตผเดตเต‡เดกเต { -0000000225 selinux_ipv4_forward 0000000000 chain 0000000225 chain selinux_ipv4_output } เดนเตเด•เตเด•เต เดชเต‹เดธเตเดฑเตเดฑเตโ€Œเดฑเต‚เดŸเตเดŸเดฟเด‚เด—เต { +0000000225 4 selinux_ipvXNUMX_postroute }}
  • เด‰เดชเดฏเต‹เด•เตเดคเตƒ เด‡เดŸเดคเตเดคเดฟเดฒเต† เด•เตเดฏเต‚เด•เดณเดฟเดฒเต‡เด•เตเด•เต เดชเดพเด•เตเด•เดฑเตเดฑเตเด•เตพ เดตเดฟเดคเดฐเดฃเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเดฟเดจเดพเดฏเดฟ jhash, symhash, numgen เดŽเด•เตเดธเตเดชเตเดฐเดทเดจเตเด•เตพ เดธเด‚เดฏเต‹เดœเดฟเดชเตเดชเดฟเด•เตเด•เดพเตป เด•เตเดฏเต‚ เดฌเตเดฒเต‹เด•เตเด•เตเด•เตพ เด…เดจเตเดตเดฆเดฟเด•เตเด•เตเดจเตเดจเต. โ€ฆ เดธเดฟเด‚เดนเดพเดทเต เดฎเต‹เดกเต 65536 เดฒเต‡เด•เตเด•เตเดณเตเดณ เด•เตเดฏเต‚ โ€ฆ เด•เตเดฏเต‚ เดซเตเดฒเดพเด—เตเด•เตพ เดฌเตˆเดชเดพเดธเต เดŸเต numgen inc mod 65536โ€ฆ เด•เตเดฏเต‚ เดเดพเดทเต เด’เด‡เดซเต. เดฎเต†เดฑเตเดฑเดพ เดฎเดพเตผเด•เตเด•เต เดฎเต‹เดกเต 32 "เด•เตเดฏเต‚" เดฎเดพเดชเตเดชเต เดฒเดฟเดธเตเดฑเตเดฑเตเด•เดณเตเดฎเดพเดฏเดฟ เดธเด‚เดฏเต‹เดœเดฟเดชเตเดชเดฟเดšเตเดšเต เด…เดจเดฟเดฏเดจเตเดคเตเดฐเดฟเดคเดฎเดพเดฏ เด•เต€เด•เดณเต† เด…เดŸเดฟเดธเตเดฅเดพเดจเดฎเดพเด•เตเด•เดฟ เด‰เดชเดฏเต‹เด•เตเดคเตƒ เดธเตเดฅเดฒเดคเตเดคเต เด’เดฐเต เด•เตเดฏเต‚ เดคเดฟเดฐเดžเตเดžเต†เดŸเตเด•เตเด•เดพเด‚. ... เด•เตเดฏเต‚ เดซเตเดฒเดพเด—เตเด•เตพ เด’เด‡เดซเตโ€Œเดจเต†เดฏเดฟเด‚ เดฎเดพเดชเตเดชเดฟเดฒเต‡เด•เตเด•เต เดฌเตˆเดชเดพเดธเต { "eth0" : 0, "ppp0" : 2, "eth1" : 2 }
  • เดจเดฟเดฐเดตเดงเดฟ เดฎเดพเดชเตเดชเตเด•เดณเดฟเดฒเต‡เด•เตเด•เต เด’เดฐเต เดธเต†เดฑเตเดฑเต เดฒเดฟเดธเตเดฑเตเดฑเต เด‰เตพเดชเตเดชเต†เดŸเตเดจเตเดจ เดตเต‡เดฐเดฟเดฏเดฌเดฟเดณเตเด•เตพ เดตเดฟเด•เดธเดฟเดชเตเดชเดฟเด•เตเด•เดพเตป เดธเดพเดงเดฟเด•เตเด•เตเด‚. เด‡เดจเตเดฑเตผเดซเต‡เดธเตเด•เตพ เดจเดฟเตผเดตเดšเดฟเด•เตเด•เตเด• = { eth0, eth1 } เดชเดŸเตเดŸเดฟเด• ip x {เดšเต†เดฏเดฟเตป y {เดคเดฐเด‚ เดซเดฟเตฝเดŸเตเดŸเตผ เดนเตเด•เตเด•เต เด‡เตปเดชเตเดŸเตเดŸเต เดฎเตเตปเด—เดฃเดจ 0; เดจเดฏเด‚ เดธเตเดตเต€เด•เดฐเดฟเด•เตเด•เตเด•; iifname vmap {lo : เดธเตเดตเต€เด•เดฐเดฟเด•เตเด•เตเด•, $เด‡เดจเตเดฑเตผเดซเต‡เดธเตเด•เตพ: เดกเตเดฐเต‹เดชเตเดชเต } }} # nft -f x.nft # nft เดฒเดฟเดธเตเดฑเตเดฑเต เดฑเต‚เตพเดธเต†เดฑเตเดฑเต เดชเดŸเตเดŸเดฟเด• ip x {เดšเต†เดฏเดฟเตป y {เดคเดฐเด‚ เดซเดฟเตฝเดŸเตเดŸเตผ เดนเตเด•เตเด•เต เด‡เตปเดชเตเดŸเตเดŸเต เดฎเตเตปเด—เดฃเดจ 0; เดจเดฏเด‚ เดธเตเดตเต€เด•เดฐเดฟเด•เตเด•เตเด•; iifname vmap { "lo" : เดธเตเดตเต€เด•เดฐเดฟเด•เตเด•เตเด•, "eth0" : drop, "eth1" : drop } } }
  • เด‡เดŸเดตเต‡เดณเด•เดณเดฟเตฝ vmaps (เดตเดฟเดงเดฟ เดฎเดพเดชเตเดชเต) เดธเด‚เดฏเต‹เดœเดฟเดชเตเดชเดฟเด•เตเด•เตเดจเตเดจเดคเต เด…เดจเตเดตเดฆเดจเต€เดฏเดฎเดพเดฃเต: # nft add rule xy tcp dport . ip saddr vmap { 1025-65535 . 192.168.10.2 : เดธเตเดตเต€เด•เดฐเดฟเด•เตเด•เตเด•}
  • NAT เดฎเดพเดชเตเดชเดฟเด‚เด—เตเด•เตพเด•เตเด•เดพเดฏเตเดณเตเดณ เดฒเดณเดฟเดคเดฎเดพเด•เตเด•เดฟเดฏ เดตเดพเด•เตเดฏเด˜เดŸเดจ. เดตเดฟเดฒเดพเดธ เดถเตเดฐเต‡เดฃเดฟเด•เตพ เดตเตเดฏเด•เตเดคเดฎเดพเด•เตเด•เดพเตป เด…เดจเตเดตเดฆเดฟเดšเตเดšเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเต: ... เดธเตเดจเดพเดฑเตเดฑเต เดŸเต ip saddr เดฎเดพเดชเตเดชเต { 10.141.11.4 : 192.168.2.2-192.168.2.4 } เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ เดตเตเดฏเด•เตเดคเดฎเดพเดฏ IP เดตเดฟเดฒเดพเดธเด™เตเด™เดณเตเด‚ เดชเต‹เตผเดŸเตเดŸเตเด•เดณเตเด‚: ... dnat to ip saddr เดฎเดพเดชเตเดชเต { 10.141.11.4 :192.168.2.3 . 80 } เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ IP เดถเตเดฐเต‡เดฃเดฟเด•เดณเตเดŸเต†เดฏเตเด‚ เดชเต‹เตผเดŸเตเดŸเตเด•เดณเตเดŸเต†เดฏเตเด‚ เด•เต‹เดฎเตเดชเดฟเดจเต‡เดทเดจเตเด•เตพ: ... dnat to ip saddr . tcp dport เดฎเดพเดชเตเดชเต { 192.168.1.2 . 80: 10.141.10.2-10.141.10.5. 8888-8999 }

เด…เดตเดฒเด‚เดฌเด‚: opennet.ru

เด’เดฐเต เด…เดญเดฟเดชเตเดฐเดพเดฏเด‚ เดšเต‡เตผเด•เตเด•เตเด•