ΠΠ·Π΄Π°Π½ΠΈΠ΅ΡΠΎ Π½Π° ΡΠΈΠ»ΡΡΡΠ° Π·Π° ΠΏΠ°ΠΊΠ΅ΡΠΈ nftables 0.9.9 Π±Π΅ΡΠ΅ ΠΏΡΠ±Π»ΠΈΠΊΡΠ²Π°Π½ΠΎ, ΠΎΠ±Π΅Π΄ΠΈΠ½ΡΠ²Π°ΠΉΠΊΠΈ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΈΡΠ΅ Π·Π° ΡΠΈΠ»ΡΡΠΈΡΠ°Π½Π΅ Π½Π° ΠΏΠ°ΠΊΠ΅ΡΠΈ Π·Π° IPv4, IPv6, ARP ΠΈ ΠΌΡΠ΅ΠΆΠΎΠ²ΠΈ ΠΌΠΎΡΡΠΎΠ²Π΅ (Π½Π°ΡΠΎΡΠ΅Π½ΠΈ ΠΊΡΠΌ Π·Π°ΠΌΡΠ½Π° Π½Π° iptables, ip6table, arptables ΠΈ ebtables). Π ΡΡΡΠΎΡΠΎ Π²ΡΠ΅ΠΌΠ΅ Π±Π΅ΡΠ΅ ΠΏΡΠ±Π»ΠΈΠΊΡΠ²Π°Π½Π° Π²Π΅ΡΡΠΈΡΡΠ° Π½Π° ΠΏΡΠΈΠ΄ΡΡΠΆΠ°Π²Π°ΡΠ°ΡΠ° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° libnftnl 1.2.0, ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΡΡΠ° API Π½Π° Π½ΠΈΡΠΊΠΎ Π½ΠΈΠ²ΠΎ Π·Π° Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ Ρ ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΠ°ΡΠ° nf_tables. ΠΡΠΎΠΌΠ΅Π½ΠΈΡΠ΅, Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΈ Π·Π° ΡΠ°Π±ΠΎΡΠ° Π½Π° ΠΈΠ·Π΄Π°Π½ΠΈΠ΅ΡΠΎ nftables 0.9.9, ΡΠ° Π²ΠΊΠ»ΡΡΠ΅Π½ΠΈ Π² ΡΠ΄ΡΠΎΡΠΎ Π½Π° Linux 5.13-rc1.
ΠΠ°ΠΊΠ΅ΡΡΡ nftables Π²ΠΊΠ»ΡΡΠ²Π° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΈ Π·Π° ΡΠΈΠ»ΡΡΡ Π½Π° ΠΏΠ°ΠΊΠ΅ΡΠΈ, ΠΊΠΎΠΈΡΠΎ ΡΠ°Π±ΠΎΡΡΡ Π² ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΡΠΊΠΎΡΠΎ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²ΠΎ, Π΄ΠΎΠΊΠ°ΡΠΎ Π½ΠΈΠ²ΠΎΡΠΎ Π½Π° ΡΠ΄ΡΠΎΡΠΎ ΡΠ΅ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Ρ ΠΎΡ ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΠ°ΡΠ° nf_tables, ΠΊΠΎΡΡΠΎ Π΅ ΡΠ°ΡΡ ΠΎΡ ΡΠ΄ΡΠΎΡΠΎ Π½Π° Linux ΠΎΡ Π²Π΅ΡΡΠΈΡ 3.13. ΠΠ° Π½ΠΈΠ²ΠΎ ΡΠ΄ΡΠΎ ββΡΠ΅ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Ρ ΡΠ°ΠΌΠΎ ΠΎΠ±Ρ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ, Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌ ΠΎΡ ΠΏΡΠΎΡΠΎΠΊΠΎΠ», ΠΊΠΎΠΉΡΠΎ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Ρ ΠΎΡΠ½ΠΎΠ²Π½ΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ Π·Π° ΠΈΠ·Π²Π»ΠΈΡΠ°Π½Π΅ Π½Π° Π΄Π°Π½Π½ΠΈ ΠΎΡ ΠΏΠ°ΠΊΠ΅ΡΠΈ, ΠΈΠ·Π²ΡΡΡΠ²Π°Π½Π΅ Π½Π° ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Ρ Π΄Π°Π½Π½ΠΈ ΠΈ ΠΊΠΎΠ½ΡΡΠΎΠ»ΠΈΡΠ°Π½Π΅ Π½Π° ΠΏΠΎΡΠΎΠΊΠ°.
Π‘Π°ΠΌΠΈΡΠ΅ ΠΏΡΠ°Π²ΠΈΠ»Π° Π·Π° ΡΠΈΠ»ΡΡΠΈΡΠ°Π½Π΅ ΠΈ ΡΠΏΠ΅ΡΠΈΡΠΈΡΠ½ΠΈΡΠ΅ Π·Π° ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Π° ΠΌΠ°Π½ΠΈΠΏΡΠ»Π°ΡΠΎΡΠΈ ΡΠ΅ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠ°Ρ Π² Π±Π°ΠΉΡ ΠΊΠΎΠ΄ Π½Π° ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΡΠΊΠΎΡΠΎ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²ΠΎ, ΡΠ»Π΅Π΄ ΠΊΠΎΠ΅ΡΠΎ ΡΠΎΠ·ΠΈ Π±Π°ΠΉΡ ΠΊΠΎΠ΄ ΡΠ΅ Π·Π°ΡΠ΅ΠΆΠ΄Π° Π² ΡΠ΄ΡΠΎΡΠΎ Ρ ΠΏΠΎΠΌΠΎΡΡΠ° Π½Π° ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° Netlink ΠΈ ΡΠ΅ ΠΈΠ·ΠΏΡΠ»Π½ΡΠ²Π° Π² ΡΠ΄ΡΠΎΡΠΎ Π² ΡΠΏΠ΅ΡΠΈΠ°Π»Π½Π° Π²ΠΈΡΡΡΠ°Π»Π½Π° ΠΌΠ°ΡΠΈΠ½Π°, Π½Π°ΠΏΠΎΠ΄ΠΎΠ±ΡΠ²Π°ΡΠ° BPF (Berkeley Packet Filters). Π’ΠΎΠ·ΠΈ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ ΠΏΡΠ°Π²ΠΈ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎ Π·Π½Π°ΡΠΈΡΠ΅Π»Π½ΠΎ Π½Π°ΠΌΠ°Π»ΡΠ²Π°Π½Π΅ Π½Π° ΡΠ°Π·ΠΌΠ΅ΡΠ° Π½Π° ΡΠΈΠ»ΡΡΠΈΡΠ°ΡΠΈΡ ΠΊΠΎΠ΄, ΡΠ°Π±ΠΎΡΠ΅Ρ Π½Π° Π½ΠΈΠ²ΠΎ ΡΠ΄ΡΠΎ, ΠΈ ΠΏΡΠ΅ΠΌΠ΅ΡΡΠ²Π°Π½Π΅ Π½Π° Π²ΡΠΈΡΠΊΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ Π½Π° ΠΏΡΠ°Π²ΠΈΠ»Π°ΡΠ° Π·Π° Π°Π½Π°Π»ΠΈΠ· ΠΈ Π»ΠΎΠ³ΠΈΠΊΠ°ΡΠ° Π½Π° ΡΠ°Π±ΠΎΡΠ° Ρ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»ΠΈ Π² ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΡΠΊΠΎΡΠΎ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²ΠΎ.
ΠΡΠ½ΠΎΠ²Π½ΠΈ ΠΈΠ½ΠΎΠ²Π°ΡΠΈΠΈ:
- ΠΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΠ° Π·Π° ΠΏΡΠ΅ΠΌΠ΅ΡΡΠ²Π°Π½Π΅ Π½Π° ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ°ΡΠ° Π½Π° ΡΠ°Π±Π»ΠΈΡΠ°ΡΠ° Π½Π° ΠΏΠΎΡΠΎΠΊΠ° ΠΊΡΠΌ ΡΡΡΠ°Π½Π°ΡΠ° Π½Π° ΠΌΡΠ΅ΠΆΠΎΠ²ΠΈΡ Π°Π΄Π°ΠΏΡΠ΅Ρ Π΅ ΡΠ΅Π°Π»ΠΈΠ·ΠΈΡΠ°Π½Π°, Π°ΠΊΡΠΈΠ²ΠΈΡΠ°Π½Π° Ρ ΠΏΠΎΠΌΠΎΡΡΠ° Π½Π° ΡΠ»Π°Π³Π° βΡΠ°Π·ΡΠΎΠ²Π°ΡΠ²Π°Π½Π΅β. Flowtable Π΅ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΡΠΌ Π·Π° ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠ°Π½Π΅ Π½Π° ΠΏΡΡΡ Π½Π° ΠΏΡΠ΅Π½Π°ΡΠΎΡΠ²Π°Π½Π΅ Π½Π° ΠΏΠ°ΠΊΠ΅ΡΠΈ, ΠΏΡΠΈ ΠΊΠΎΠΉΡΠΎ ΠΏΡΠ»Π½ΠΎΡΠΎ ΠΏΡΠ΅ΠΌΠΈΠ½Π°Π²Π°Π½Π΅ Π½Π° Π²ΡΠΈΡΠΊΠΈ Π²Π΅ΡΠΈΠ³ΠΈ Π·Π° ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° Π½Π° ΠΏΡΠ°Π²ΠΈΠ»Π° ΡΠ΅ ΠΏΡΠΈΠ»Π°Π³Π° ΡΠ°ΠΌΠΎ ΠΊΡΠΌ ΠΏΡΡΠ²ΠΈΡ ΠΏΠ°ΠΊΠ΅Ρ, Π° Π²ΡΠΈΡΠΊΠΈ ΠΎΡΡΠ°Π½Π°Π»ΠΈ ΠΏΠ°ΠΊΠ΅ΡΠΈ Π² ΠΏΠΎΡΠΎΠΊΠ° ΡΠ΅ ΠΏΡΠ΅ΠΏΡΠ°ΡΠ°Ρ Π΄ΠΈΡΠ΅ΠΊΡΠ½ΠΎ. table ip global { flowtable f { hook ingress priority filter + 1 devices = { lan3, lan0, wan } flags offload } chain forward { ΡΠΈΠΏ ΡΠΈΠ»ΡΡΡ hook forward ΠΏΡΠΈΠΎΡΠΈΡΠ΅ΡΠ΅Π½ ΡΠΈΠ»ΡΡΡ; ΠΏΠΎΠ»ΠΈΡΠΈΠΊΠ° ΠΏΡΠΈΠ΅ΠΌΠ°; ip ΠΏΡΠΎΡΠΎΠΊΠΎΠ» { tcp, udp } ΠΏΠΎΡΠΎΠΊ Π΄ΠΎΠ±Π°Π²ΡΠ½Π΅ @f } Π²Π΅ΡΠΈΠ³Π° ΠΏΡΠ±Π»ΠΈΠΊΠ°ΡΠΈΡ { ΡΠΈΠΏ nat hook postrouting ΠΏΡΠΈΠΎΡΠΈΡΠ΅ΡΠ΅Π½ ΡΠΈΠ»ΡΡΡ; ΠΏΠΎΠ»ΠΈΡΠΈΠΊΠ° ΠΏΡΠΈΠ΅ΠΌΠ°; oifname "wan" ΠΌΠ°ΡΠΊΠ°ΡΠ°Π΄ } }
- ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° ΠΏΡΠΈΠΊΠ°ΡΠ²Π°Π½Π΅ Π½Π° ΡΠ»Π°Π³ Π½Π° ΡΠΎΠ±ΡΡΠ²Π΅Π½ΠΈΠΊ ΠΊΡΠΌ ΡΠ°Π±Π»ΠΈΡΠ°, Π·Π° Π΄Π° ΡΠ΅ Π³Π°ΡΠ°Π½ΡΠΈΡΠ° ΠΈΠ·ΠΊΠ»ΡΡΠΈΡΠ΅Π»Π½ΠΎΡΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° ΡΠ°Π±Π»ΠΈΡΠ°ΡΠ° ΠΎΡ ΠΏΡΠΎΡΠ΅Ρ. ΠΠΎΠ³Π°ΡΠΎ Π΄Π°Π΄Π΅Π½ ΠΏΡΠΎΡΠ΅Ρ ΠΏΡΠΈΠΊΠ»ΡΡΠΈ, ΡΠ°Π±Π»ΠΈΡΠ°ΡΠ°, ΡΠ²ΡΡΠ·Π°Π½Π° Ρ Π½Π΅Π³ΠΎ, ΡΠ΅ ΠΈΠ·ΡΡΠΈΠ²Π° Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ½ΠΎ. ΠΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡΡΠ° Π·Π° ΠΏΡΠΎΡΠ΅ΡΠ° ΡΠ΅ ΠΏΠΎΠΊΠ°Π·Π²Π° Π² Π΄ΡΠΌΠΏΠ° Π½Π° ΠΏΡΠ°Π²ΠΈΠ»Π°ΡΠ° ΠΏΠΎΠ΄ ΡΠΎΡΠΌΠ°ΡΠ° Π½Π° ΠΊΠΎΠΌΠ΅Π½ΡΠ°Ρ: table ip x { # progname nft flags owner chain y { type filter hook input priority filter; ΠΏΠΎΠ»ΠΈΡΠΈΠΊΠ° ΠΏΡΠΈΠ΅ΠΌΠ°; Π±ΡΠΎΡΡ Π½Π° ΠΏΠ°ΠΊΠ΅ΡΠΈ 1 Π±Π°ΠΉΡΠ° 309 } }
- ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡΡΠ° IEEE 802.1ad (VLAN stacking ΠΈΠ»ΠΈ QinQ), ΠΊΠΎΡΡΠΎ Π΄Π΅ΡΠΈΠ½ΠΈΡΠ° ΡΡΠ΅Π΄ΡΡΠ²ΠΎ Π·Π° Π·Π°ΠΌΠ΅ΡΡΠ²Π°Π½Π΅ Π½Π° ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ VLAN ΡΠ°Π³ΠΎΠ²Π΅ Π² Π΅Π΄ΠΈΠ½ Ethernet ΠΊΠ°Π΄ΡΡ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π·Π° Π΄Π° ΠΏΡΠΎΠ²Π΅ΡΠΈΡΠ΅ ΡΠΈΠΏΠ° Π½Π° Π²ΡΠ½ΡΠ½ΠΈΡ Ethernet ΠΊΠ°Π΄ΡΡ 8021ad ΠΈ vlan id=342, ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΡΠ΅ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΡΡΠ° ... ether type 802.1ad vlan id 342, Π·Π° Π΄Π° ΠΏΡΠΎΠ²Π΅ΡΠΈΡΠ΅ Π²ΡΠ½ΡΠ½ΠΈΡ ΡΠΈΠΏ Π½Π° Ethernet ΠΊΠ°Π΄ΡΡΠ° 8021ad/vlan id=1, Π²Π»ΠΎΠΆΠ΅Π½ 802.1 q/vlan id=2 ΠΈ Π΄ΠΎΠΏΡΠ»Π½ΠΈΡΠ΅Π»Π½ΠΎ ΠΊΠ°ΠΏΡΡΠ»ΠΈΡΠ°Π½Π΅ Π½Π° IP ΠΏΠ°ΠΊΠ΅ΡΠΈ: ... ΡΠΈΠΏ ether 8021ad vlan id 1 vlan ΡΠΈΠΏ 8021q vlan id 2 vlan ΡΠΈΠΏ ip Π±ΡΠΎΡΡ
- ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° ΡΠ΅ΡΡΡΡΠΈ Ρ ΠΏΠΎΠΌΠΎΡΡΠ° Π½Π° ΡΠ½ΠΈΡΠΈΡΠΈΡΠ°Π½Π°ΡΠ° ΠΉΠ΅ΡΠ°ΡΡ ΠΈΡ cgroups v2. ΠΠ»ΡΡΠΎΠ²Π°ΡΠ° ΡΠ°Π·Π»ΠΈΠΊΠ° ΠΌΠ΅ΠΆΠ΄Ρ cgroups v2 ΠΈ v1 Π΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ΡΠΎ Π½Π° ΠΎΠ±ΡΠ° ΠΉΠ΅ΡΠ°ΡΡ ΠΈΡ Π½Π° cgroups Π·Π° Π²ΡΠΈΡΠΊΠΈ Π²ΠΈΠ΄ΠΎΠ²Π΅ ΡΠ΅ΡΡΡΡΠΈ, Π²ΠΌΠ΅ΡΡΠΎ ΠΎΡΠ΄Π΅Π»Π½ΠΈ ΠΉΠ΅ΡΠ°ΡΡ ΠΈΠΈ Π·Π° ΡΠ°Π·ΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π΅ Π½Π° CPU ΡΠ΅ΡΡΡΡΠΈ, Π·Π° ΡΠ΅Π³ΡΠ»ΠΈΡΠ°Π½Π΅ Π½Π° ΠΏΠΎΡΡΠ΅Π±Π»Π΅Π½ΠΈΠ΅ΡΠΎ Π½Π° ΠΏΠ°ΠΌΠ΅Ρ ΠΈ Π·Π° I/O. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π·Π° Π΄Π° ΠΏΡΠΎΠ²Π΅ΡΠΈΡΠ΅ Π΄Π°Π»ΠΈ ΠΏΡΠ΅Π΄ΡΠ΅ΡΡΠ²Π΅Π½ΠΈΠΊΡΡ Π½Π° ΡΠΎΠΊΠ΅Ρ Π½Π° ΠΏΡΡΠ²ΠΎ Π½ΠΈΠ²ΠΎ cgroupv2 ΡΡΠ²ΠΏΠ°Π΄Π° Ρ ΠΌΠ°ΡΠΊΠ°ΡΠ° βsystem.sliceβ, ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΡΠ΅ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΡΡΠ°: ... socket cgroupv2 Π½ΠΈΠ²ΠΎ 1 βsystem.sliceβ
- ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π·Π° ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° Π½Π° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΈ Π½Π° SCTP ΠΏΠ°ΠΊΠ΅ΡΠΈ (ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»Π½ΠΎΡΡΡΠ°, Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠ° Π·Π° ΡΠΎΠ²Π°, ΡΠ΅ ΡΠ΅ ΠΏΠΎΡΠ²ΠΈ Π² ΡΠ΄ΡΠΎΡΠΎ Π½Π° Linux 5.14). ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π·Π° Π΄Π° ΠΏΡΠΎΠ²Π΅ΡΠΈΡΠ΅ Π΄Π°Π»ΠΈ Π΄Π°Π΄Π΅Π½ ΠΏΠ°ΠΊΠ΅Ρ ΡΡΠ΄ΡΡΠΆΠ° ΡΠ°ΡΡ Ρ ΡΠΈΠΏ βΠ΄Π°Π½Π½ΠΈβ ΠΈ ΠΏΠΎΠ»Π΅ βΡΠΈΠΏβ: ... sctp chunk data exists ... sctp chunk data type 0
- ΠΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ΡΠΎ Π½Π° ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡΡΠ° ΠΏΠΎ Π·Π°ΡΠ΅ΠΆΠ΄Π°Π½Π΅ Π½Π° ΠΏΡΠ°Π²ΠΈΠ»ΠΎΡΠΎ Π΅ ΡΡΠΊΠΎΡΠ΅Π½ΠΎ ΠΏΡΠΈΠ±Π»ΠΈΠ·ΠΈΡΠ΅Π»Π½ΠΎ Π΄Π²Π° ΠΏΡΡΠΈ Ρ ΠΏΠΎΠΌΠΎΡΡΠ° Π½Π° ΡΠ»Π°Π³Π° β-fβ. ΠΠ·Π²Π΅ΠΆΠ΄Π°Π½Π΅ΡΠΎ Π½Π° ΡΠΏΠΈΡΡΠΊΠ° Ρ ΠΏΡΠ°Π²ΠΈΠ»Π° ΡΡΡΠΎ Π΅ ΡΡΠΊΠΎΡΠ΅Π½ΠΎ.
- ΠΡΠΈΠ³ΡΡΠ΅Π½ Π΅ ΠΊΠΎΠΌΠΏΠ°ΠΊΡΠ΅Π½ ΡΠΎΡΠΌΡΠ»ΡΡ Π·Π° ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° Π΄Π°Π»ΠΈ ΡΠ° Π·Π°Π΄Π°Π΄Π΅Π½ΠΈ ΡΠ»Π°Π³ Π±ΠΈΡΠΎΠ²Π΅. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π·Π° Π΄Π° ΠΏΡΠΎΠ²Π΅ΡΠΈΡΠ΅ Π΄Π°Π»ΠΈ Π±ΠΈΡΠΎΠ²Π΅ΡΠ΅ Π·Π° ΡΡΡΡΠΎΡΠ½ΠΈΠ΅ snat ΠΈ dnat Π½Π΅ ΡΠ° Π·Π°Π΄Π°Π΄Π΅Π½ΠΈ, ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΠΏΠΎΡΠΎΡΠΈΡΠ΅: ... ct status ! snat,dnat Π·Π° ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° Π΄Π°Π»ΠΈ Π±ΠΈΡΡΡ syn Π΅ Π·Π°Π΄Π°Π΄Π΅Π½ Π² Π±ΠΈΡΠΎΠ²Π°ΡΠ° ΠΌΠ°ΡΠΊΠ° syn,ack: ... tcp ΡΠ»Π°Π³ΠΎΠ²Π΅ syn / syn,ack Π·Π° ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° Π΄Π°Π»ΠΈ Π±ΠΈΡΠΎΠ²Π΅ΡΠ΅ fin ΠΈ rst Π½Π΅ ΡΠ° Π·Π°Π΄Π°Π΄Π΅Π½ΠΈ Π² Π±ΠΈΡΠΎΠ²Π°ΡΠ° ΠΌΠ°ΡΠΊΠ° syn,ack,fin,rst: ... tcp ΡΠ»Π°Π³ΠΎΠ²Π΅ ! = fin,rst / syn,ack,fin,rst
- Π Π°Π·ΡΠ΅ΡΠ΅ΡΠ΅ ΠΊΠ»ΡΡΠΎΠ²Π°ΡΠ° Π΄ΡΠΌΠ° "Π²Π΅ΡΠ΄ΠΈΠΊΡ" Π² Π΄Π΅ΡΠΈΠ½ΠΈΡΠΈΠΈΡΠ΅ Π½Π° set/map typeof: add map xm { typeof iifname. ip ΠΏΡΠΎΡΠΎΠΊΠΎΠ» th dport : ΠΏΡΠΈΡΡΠ΄Π° ;}
ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: opennet.ru