
ΠΡΠΎΡΠ»Π΅Π΄ΡΠ²Π°Π½Π΅ΡΠΎ Π½Π° ΡΡΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡΡΠ° (βconntrackβ) Π΅ ΠΎΡΠ½ΠΎΠ²Π½Π° ΡΡΠ½ΠΊΡΠΈΡ Π½Π° ΠΌΡΠ΅ΠΆΠΎΠ²ΠΈΡ ΡΡΠ΅ΠΊ Π½Π° ΡΠ΄ΡΠΎΡΠΎ Π½Π° Linux. Π’Ρ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° Π½Π° ΡΠ΄ΡΠΎΡΠΎ Π΄Π° ΡΠ»Π΅Π΄ΠΈ Π²ΡΠΈΡΠΊΠΈ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈ ΠΌΡΠ΅ΠΆΠΎΠ²ΠΈ ΡΡΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ ΠΈΠ»ΠΈ ΠΏΠΎΡΠΎΡΠΈ ΠΈ ΠΏΠΎ ΡΠΎΠ·ΠΈ Π½Π°ΡΠΈΠ½ Π΄Π° ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΡΠΈΡΠ° Π²ΡΠΈΡΠΊΠΈ ΠΏΠ°ΠΊΠ΅ΡΠΈ, ΠΊΠΎΠΈΡΠΎ ΡΡΡΡΠ°Π²ΡΡ Π²ΡΠ΅ΠΊΠΈ ΠΏΠΎΡΠΎΠΊ, Π·Π° Π΄Π° ΠΌΠΎΠ³Π°Ρ ΡΠ΅ Π΄Π° Π±ΡΠ΄Π°Ρ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»Π½ΠΎ ΠΎΠ±ΡΠ°Π±ΠΎΡΠ²Π°Π½ΠΈ Π·Π°Π΅Π΄Π½ΠΎ.
Conntrack Π΅ Π²Π°ΠΆΠ½Π° ΡΡΠ½ΠΊΡΠΈΡ Π½Π° ΡΠ΄ΡΠΎΡΠΎ, ΠΊΠΎΡΡΠΎ ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π² Π½ΡΠΊΠΎΠΈ ΠΎΡΠ½ΠΎΠ²Π½ΠΈ ΡΠ»ΡΡΠ°ΠΈ:
- NAT ΡΠ°Π·ΡΠΈΡΠ° Π½Π° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎΡ conntrack, ΡΠ°ΠΊΠ° ΡΠ΅ ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΎΠ±ΡΠ°Π±ΠΎΡΠ²Π° Π΅Π΄ΠΈΠ½ΠΊΡΠ°ΡΠ½ΠΎ Π²ΡΠΈΡΠΊΠΈ ΠΏΠ°ΠΊΠ΅ΡΠΈ ΠΎΡ Π΅Π΄ΠΈΠ½ ΠΏΠΎΡΠΎΠΊ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΊΠΎΠ³Π°ΡΠΎ pod ΡΠ΅ ΡΠ²ΡΡΠ·Π²Π° ΡΡΡ service Kubernetes, Π±Π°Π»Π°Π½ΡΠΈΡΠΎΠ²ΡΠΈΠΊΡΡ Π½Π° Π½Π°ΡΠΎΠ²Π°ΡΠ²Π°Π½Π΅ kube-proxy ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° NAT, Π·Π° Π΄Π° Π½Π°ΡΠΎΡΠΈ ΡΡΠ°ΡΠΈΠΊΠ° ΠΊΡΠΌ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ΅Π½ pod Π² ΠΊΠ»Π°ΡΡΠ΅ΡΠ°. Conntrack Π·Π°ΠΏΠΈΡΠ²Π°, ΡΠ΅ Π·Π° ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΎ ΡΡΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅ Π²ΡΠΈΡΠΊΠΈ ΠΏΠ°ΠΊΠ΅ΡΠΈ ΠΊΡΠΌ IP Π°Π΄ΡΠ΅Ρ Π½Π° service ΡΡΡΠ±Π²Π° Π΄Π° ΡΠ΅ ΠΈΠ·ΠΏΡΠ°ΡΠ°Ρ Π² Π΅Π΄ΠΈΠ½ ΠΈ ΡΡΡ pod, Π° ΠΏΠ°ΠΊΠ΅ΡΠΈΡΠ΅, Π²ΡΡΡΠ°Π½ΠΈ ΠΎΡ pod-a Π½Π° backend, ΡΡΡΠ±Π²Π° Π΄Π° Π±ΡΠ΄Π°Ρ Π½Π°ΡΠΎΡΠ²Π°Π½ΠΈ ΠΎΠ±ΡΠ°ΡΠ½ΠΎ ΠΊΡΠΌ pod-Π°, ΠΎΡ ΠΊΠΎΠΉΡΠΎ Π΅ Π΄ΠΎΡΡΠ» Π·Π°ΠΏΠΈΡΠ²Π°Π½Π΅ΡΠΎ.
- Firewall-ΠΎΠ²Π΅ Ρ ΠΏΡΠΎΡΠ»Π΅Π΄ΡΠ²Π°Π½Π΅ Π½Π° ΡΡΡΡΠΎΡΠ½ΠΈΠ΅ΡΠΎ, ΠΊΠ°ΡΠΎ Calico, ΡΠ°Π·ΡΠΈΡΠ°Ρ Π½Π° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎΡ conntrack, Π·Π° Π΄Π° Π΄ΠΎΠ±Π°Π²ΡΡ βΠΎΡΠ³ΠΎΠ²ΠΎΡΠ΅Π½β ΡΡΠ°ΡΠΈΠΊ Π² Π±Π΅Π»ΠΈΡ ΡΠΏΠΈΡΡΠΊ. Π’ΠΎΠ²Π° Π²ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° Π΄Π° Π½Π°ΠΏΠΈΡΠ΅ΡΠ΅ ΠΌΡΠ΅ΠΆΠΎΠ²Π° ΠΏΠΎΠ»ΠΈΡΠΈΠΊΠ°, ΠΊΠΎΡΡΠΎ ΠΊΠ°Π·Π²Π°: βΠΠΎΠ·Π²ΠΎΠ»Π΅ΡΠ΅ Π½Π° ΠΌΠΎΡΡ pod Π΄Π° ΡΠ΅ ΡΠ²ΡΡΠ·Π²Π° Ρ Π²ΡΠ΅ΠΊΠΈ ΠΎΡΠ΄Π°Π»Π΅ΡΠ΅Π½ IP Π°Π΄ΡΠ΅Ρβ Π±Π΅Π· Π΄Π° Π΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π΄Π° ΠΏΠΈΡΠ΅ΡΠ΅ ΠΏΠΎΠ»ΠΈΡΠΈΠΊΠ° Π·Π° ΡΠ²Π½ΠΎ ΡΠ°Π·ΡΠ΅ΡΠ°Π²Π°Π½Π΅ Π½Π° ΠΎΡΠ³ΠΎΠ²ΠΎΡΠ½ΠΈΡ ΡΡΠ°ΡΠΈΠΊ. (ΠΠ΅Π· ΡΠΎΠ²Π°, Π²ΠΈΠ΅ ΡΠ΅ ΡΡΡΠ±Π²Π° Π΄Π° Π΄ΠΎΠ±Π°Π²ΠΈΡΠ΅ Π·Π½Π°ΡΠΈΡΠ΅Π»Π½ΠΎ ΠΏΠΎ-ΠΌΠ°Π»ΠΊΠΎ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎ ΠΏΡΠ°Π²ΠΈΠ»ΠΎ βΠ΄Π° ΡΠ°Π·ΡΠ΅ΡΠ°Π²Π°ΡΠ΅ ΠΏΠ°ΠΊΠ΅ΡΠΈ Π² ΠΌΠΎΡ pod ΠΎΡ Π²ΡΠ΅ΠΊΠΈ IPβ.)
ΠΡΠ²Π΅Π½ ΡΠΎΠ²Π°, conntrack ΠΎΠ±ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΎ ΠΏΠΎΠ²ΠΈΡΠ°Π²Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡΡΠ° Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ°ΡΠ° (Π½Π°ΠΌΠ°Π»ΡΠ²Π° ΠΊΠΎΠ½ΡΡΠΌΠ°ΡΠΈΡΡΠ° Π½Π° ΠΏΡΠΎΡΠ΅ΡΠΎΡΠ½ΠΎ Π²ΡΠ΅ΠΌΠ΅ ΠΈ Π²ΡΠ΅ΠΌΠ΅ΡΠΎ Π·Π° Π·Π°Π±Π°Π²ΡΠ½Π΅ Π½Π° ΠΏΠ°ΠΊΠ΅ΡΠΈΡΠ΅), ΡΡΠΉ ΠΊΠ°ΡΠΎ ΡΠ°ΠΌΠΎ ΠΏΡΡΠ²ΠΈΡΡ ΠΏΠ°ΠΊΠ΅Ρ Π² ΠΏΠΎΡΠΎΠΊΠ°
ΡΡΡΠ±Π²Π° Π΄Π° ΠΏΡΠ΅ΠΌΠΈΠ½Π΅ ΠΏΡΠ΅Π· ΠΏΡΠ»Π½Π°ΡΠ° ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° Π½Π° ΠΌΡΠ΅ΠΆΠΎΠ²ΠΈΡ ΡΡΠ΅ΠΊ, Π·Π° Π΄Π° ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈ ΠΊΠ°ΠΊΠ²ΠΎ Π΄Π° ΠΏΡΠ°Π²ΠΈ Ρ Π½Π΅Π³ΠΎ. ΠΠΈΠΆΡΠ΅ ΠΏΠΎΡΡΠ° ββ Π·Π° ΠΏΡΠΈΠΌΠ΅Ρ ΠΊΠ°ΠΊ ΡΠ°Π±ΠΎΡΠΈ ΡΠΎΠ²Π°.
ΠΡΠΏΡΠ΅ΠΊΠΈ ΡΠΎΠ²Π°, conntrack ΠΈΠΌΠ° ΡΠ²ΠΎΠΈΡΠ΅ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ...
Π ΡΠ°ΠΊΠ°, ΠΊΡΠ΄Π΅ Π²ΡΠΈΡΠΊΠΎ ΡΡΡΠ³Π½Π° Π½Π΅ ΡΠ°ΠΊΠ°?
Π’Π°Π±Π»ΠΈΡΠ°ΡΠ° conntrack ΠΈΠΌΠ° Π½Π°ΡΡΡΠ°ΠΈΠ²Π°Π΅ΠΌ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»Π΅Π½ ΡΠ°Π·ΠΌΠ΅Ρ, ΠΈ Π°ΠΊΠΎ ΡΠ΅ Π·Π°ΠΏΡΠ»Π½ΠΈ, ΡΡΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡΡΠ° ΠΎΠ±ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΎ Π·Π°ΠΏΠΎΡΠ²Π°Ρ Π΄Π° ΡΠ΅ ΠΎΡΠΊΠ°Π·Π²Π°Ρ ΠΈΠ»ΠΈ ΠΏΡΠ΅ΠΊΡΡΠ²Π°Ρ. ΠΠ° ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° Π½Π° ΡΡΠ°ΡΠΈΠΊΠ° Π½Π° ΠΏΠΎΠ²Π΅ΡΠ΅ΡΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π² ΡΠ°Π±Π»ΠΈΡΠ°ΡΠ° ΠΎΠ±ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΎ ΠΈΠΌΠ° Π΄ΠΎΡΡΠ°ΡΡΡΠ½ΠΎ ΡΠ²ΠΎΠ±ΠΎΠ΄Π½ΠΎ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²ΠΎ, ΠΈ ΡΠΎΠ²Π° Π½ΠΈΠΊΠΎΠ³Π° Π½ΡΠΌΠ° Π΄Π° ΡΠ΅ ΠΏΡΠ΅Π²ΡΡΠ½Π΅ Π² ΠΏΡΠΎΠ±Π»Π΅ΠΌ. ΠΡΠΏΡΠ΅ΠΊΠΈ ΡΠΎΠ²Π°, ΠΈΠΌΠ° Π½ΡΠΊΠΎΠ»ΠΊΠΎ ΡΡΠ΅Π½Π°ΡΠΈΡ, ΠΏΡΠΈ ΠΊΠΎΠΈΡΠΎ ΡΠΈ ΡΡΡΡΠ²Π° Π΄Π° ΠΎΠ±ΠΌΠΈΡΠ»ΠΈΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ΡΠΎ Π½Π° ΡΠ°Π±Π»ΠΈΡΠ°ΡΠ° conntrack:
- ΠΠ°ΠΉ-ΠΎΡΠ΅Π²ΠΈΠ΄Π½ΠΈΡΡ ΡΠ»ΡΡΠ°ΠΉ Π΅, Π°ΠΊΠΎ Π²Π°ΡΠΈΡΡ ΡΡΡΠ²ΡΡ ΠΎΠ±ΡΠ°Π±ΠΎΡΠ²Π° ΠΈΠ·ΠΊΠ»ΡΡΠΈΡΠ΅Π»Π½ΠΎ Π³ΠΎΠ»ΡΠΌΠΎ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π°ΠΊΡΠΈΠ²Π½ΠΈ Π²ΡΡΠ·ΠΊΠΈ Π΅Π΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π°ΠΊΠΎ Π²Π°ΡΠ°ΡΠ° ΡΠ°Π±Π»ΠΈΡΠ° conntrack Π΅ Π½Π°ΡΡΡΠΎΠ΅Π½Π° Π½Π° 128k Π·Π°ΠΏΠΈΡΠ°, Π½ΠΎ ΠΈΠΌΠ°ΡΠ΅ > 128k Π°ΠΊΡΠΈΠ²Π½ΠΈ Π²ΡΡΠ·ΠΊΠΈ, ΡΡΡ ΡΠΈΠ³ΡΡΠ½ΠΎΡΡ ΡΠ΅ ΡΡΠ΅ΡΠ½Π΅ΡΠ΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌ!
- ΠΡΠΊΠΎΠ»ΠΊΠΎ ΠΏΠΎ-ΠΌΠ°Π»ΠΊΠΎ ΠΎΡΠ΅Π²ΠΈΠ΄Π΅Π½ ΡΠ»ΡΡΠ°ΠΉ: Π°ΠΊΠΎ Π²Π°ΡΠΈΡΡ ΡΡΡΠ²ΡΡ ΠΎΠ±ΡΠ°Π±ΠΎΡΠ²Π° ΠΌΠ½ΠΎΠ³ΠΎ Π³ΠΎΠ»ΡΠΌΠΎ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π²ΡΡΠ·ΠΊΠΈ Π² ΡΠ΅ΠΊΡΠ½Π΄Π°. ΠΠΎΡΠΈ Π°ΠΊΠΎ Π²ΡΡΠ·ΠΊΠΈΡΠ΅ ΡΠ° ΠΊΡΠ°ΡΠΊΠΎΡΡΠ°ΠΉΠ½ΠΈ, Linux Π²ΡΠ΅ ΠΎΡΠ΅ Π³ΠΈ ΡΠ»Π΅Π΄ΠΈ Π·Π° ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ ΠΏΠ΅ΡΠΈΠΎΠ΄ ΠΎΡ Π²ΡΠ΅ΠΌΠ΅ (ΠΏΠΎ ΠΏΠΎΠ΄ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅ 120 ΡΠ΅ΠΊ). ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π°ΠΊΠΎ Π²Π°ΡΠ°ΡΠ° ΡΠ°Π±Π»ΠΈΡΠ° conntrack Π΅ Π½Π°ΡΡΡΠΎΠ΅Π½Π° Π½Π° 128 Ρ ΠΈΠ»ΡΠ΄ΠΈ Π·Π°ΠΏΠΈΡΠ° ΠΈ ΡΠ΅ ΠΎΠΏΠΈΡΠ°ΡΠ΅ Π΄Π° ΠΎΠ±ΡΠ°Π±ΠΎΡΠΈΡΠ΅ 1100 Π²ΡΡΠ·ΠΊΠΈ Π² ΡΠ΅ΠΊΡΠ½Π΄Π°, ΡΠ΅ ΡΠ΅ Π½Π°Π΄Ρ Π²ΡΡΠ»ΡΡ ΡΠ°Π·ΠΌΠ΅ΡΠ° Π½Π° ΡΠ°Π±Π»ΠΈΡΠ°ΡΠ° conntrack, Π΄ΠΎΡΠΈ Π°ΠΊΠΎ Π²ΡΡΠ·ΠΊΠΈΡΠ΅ ΡΠ° ΠΌΠ½ΠΎΠ³ΠΎ ΠΊΡΠ°ΡΠΊΠΎΡΡΠ°ΠΉΠ½ΠΈ (128k / 120 ΡΠ΅ΠΊ = 1092 Π²ΡΡΠ·ΠΊΠΈ / ΡΠ΅ΠΊ).
ΠΠΌΠ° Π½ΡΠΊΠΎΠ»ΠΊΠΎ Π½ΠΈΡΠΎΠ²ΠΈ ΡΠΈΠΏΠ° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΠΊΠΎΠΈΡΠΎ ΠΏΠΎΠΏΠ°Π΄Π°Ρ Π² ΡΠ΅Π·ΠΈ ΠΊΠ°ΡΠ΅Π³ΠΎΡΠΈΠΈ. ΠΡΠ²Π΅Π½ ΡΠΎΠ²Π°, Π°ΠΊΠΎ ΠΈΠΌΠ°ΡΠ΅ ΠΌΠ½ΠΎΠ³ΠΎ Π·Π»ΠΎΠ½Π°ΠΌΠ΅ΡΠ΅Π½ΠΈ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΠΈ, Π·Π°ΠΏΡΠ»Π²Π°Π½Π΅ΡΠΎ Π½Π° ΡΠ°Π±Π»ΠΈΡΠ°ΡΠ° conntrack Π½Π° Π²Π°ΡΠΈΡ ΡΡΡΠ²ΡΡ Ρ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΠΏΠΎΠ»ΡΠ·Π°ΡΠ²ΠΎΡΠ΅Π½ΠΈ Π²ΡΡΠ·ΠΊΠΈ ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π·Π° Π°ΡΠ°ΠΊΠ° ΡΠΈΠΏ "ΠΎΡΠΊΠ°Π· Π½Π° ΡΡΠ»ΡΠ³Π°" (DOS). Π Π΄Π²Π°ΡΠ° ΡΠ»ΡΡΠ°Ρ conntrack ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΡΠ°Π½Π΅ ΠΎΠ³ΡΠ°Π½ΠΈΡΠΈΡΠ΅Π»Π½ΠΎ ΡΡΡΠ½ΠΎ ΠΌΡΡΡΠΎ Π² ΡΠΈΡΡΠ΅ΠΌΠ°ΡΠ° Π²ΠΈ. Π Π½ΡΠΊΠΎΠΈ ΡΠ»ΡΡΠ°ΠΈ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈΡΠ΅ Π½Π° ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈΡΠ΅ Π½Π° ΡΠ°Π±Π»ΠΈΡΠ°ΡΠ° conntrack ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ° Π΄ΠΎΡΡΠ°ΡΡΡΠ½ΠΈ, Π·Π° Π΄Π° Π·Π°Π΄ΠΎΠ²ΠΎΠ»ΡΡ Π½ΡΠΆΠ΄ΠΈΡΠ΅ Π²ΠΈ β ΡΡΠ΅Π· ΡΠ²Π΅Π»ΠΈΡΠ°Π²Π°Π½Π΅ Π½Π° ΡΠ°Π·ΠΌΠ΅ΡΠ° ΠΈΠ»ΠΈ Π½Π°ΠΌΠ°Π»ΡΠ²Π°Π½Π΅ Π½Π° Π²ΡΠ΅ΠΌΠ΅ΡΠΎ Π·Π° ΠΈΠ·ΡΠ°ΠΊΠ²Π°Π½Π΅ Π½Π° conntrack (Π½ΠΎ Π°ΠΊΠΎ Π½Π°ΠΏΡΠ°Π²ΠΈΡΠ΅ ΡΠΎΠ²Π° Π½Π΅ΠΏΡΠ°Π²ΠΈΠ»Π½ΠΎ, ΡΠ΅ ΡΡΠ΅ΡΠ½Π΅ΡΠ΅ ΡΠ΅ΡΠΈΠΎΠ·Π½ΠΈ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈ). ΠΠ° Π΄ΡΡΠ³ΠΈ ΡΠ»ΡΡΠ°ΠΈ ΡΠ΅ Π΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π΄Π° Π·Π°ΠΎΠ±ΠΈΠΊΠΎΠ»ΠΈΡΠ΅ conntrack Π·Π° Π°Π³ΡΠ΅ΡΠΈΠ²Π΅Π½ ΡΡΠ°ΡΠΈΠΊ.
Π Π΅Π°Π»Π΅Π½ ΠΏΡΠΈΠΌΠ΅Ρ
ΠΠ΅ΠΊΠ° Π΄Π°ΠΌ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ΅Π½ ΠΏΡΠΈΠΌΠ΅Ρ: Π΅Π΄ΠΈΠ½ Π³ΠΎΠ»ΡΠΌ SaaS Π΄ΠΎΡΡΠ°Π²ΡΠΈΠΊ, Ρ ΠΊΠΎΠΉΡΠΎ ΡΠ°Π±ΠΎΡΠΈΡ ΠΌΠ΅, ΠΈΠΌΠ°ΡΠ΅ ΡΠ΅Π΄ΠΈΡΠ° memcached ΡΡΡΠ²ΡΡΠΈ Π½Π° Ρ ΠΎΡΡΠΎΠ²Π΅ (Π½Π΅ Π²ΠΈΡΡΡΠ°Π»Π½ΠΈ ΠΌΠ°ΡΠΈΠ½ΠΈ), Π²ΡΠ΅ΠΊΠΈ ΠΎΡ ΠΊΠΎΠΈΡΠΎ ΠΎΠ±ΡΠ°Π±ΠΎΡΠ²Π°ΡΠ΅ 50Π+ ΠΊΡΠ°ΡΠΊΠΎΡΡΠ°ΠΉΠ½ΠΈ Π²ΡΡΠ·ΠΊΠΈ Π² ΡΠ΅ΠΊΡΠ½Π΄Π°.
Π’Π΅ Π΅ΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΠΈΡΠ°Ρ Π° Ρ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡΡΠ° Π½Π° conntrack, ΡΠ²Π΅Π»ΠΈΡΠ°Π²Π°Ρ Π° ΡΠ°Π·ΠΌΠ΅ΡΠΈΡΠ΅ Π½Π° ΡΠ°Π±Π»ΠΈΡΠΈΡΠ΅ ΠΈ Π½Π°ΠΌΠ°Π»ΡΠ²Π°Ρ Π° Π²ΡΠ΅ΠΌΠ΅ΡΠΎ Π·Π° ΠΏΡΠΎΡΠ»Π΅Π΄ΡΠ²Π°Π½Π΅, Π½ΠΎ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡΡΠ° Π±Π΅ΡΠ΅ Π½Π΅Π½Π°Π΄Π΅ΠΆΠ΄Π½Π°, ΠΏΠΎΡΡΠ΅Π±Π»Π΅Π½ΠΈΠ΅ΡΠΎ Π½Π° RAM Π·Π½Π°ΡΠΈΡΠ΅Π»Π½ΠΎ Π½Π°ΡΠ°ΡΠ½Π°, ΠΊΠΎΠ΅ΡΠΎ Π±Π΅ΡΠ΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌ (Π² ΠΏΠΎΡΡΠ΄ΡΠΊΠ° Π½Π° ΠΠ!), Π° Π²ΡΡΠ·ΠΊΠΈΡΠ΅ Π±ΡΡ Π° ΡΠΎΠ»ΠΊΠΎΠ²Π° ΠΊΡΠ°ΡΠΊΠΈ, ΡΠ΅ conntrack Π½Π΅ ΠΎΡΠΈΠ³ΡΡΡΠ²Π°ΡΠ΅ ΠΎΠ±ΠΈΡΠ°ΠΉΠ½ΠΎΡΠΎ ΡΠΈ ΠΏΡΠ΅Π΄ΠΈΠΌΡΡΠ²ΠΎ Π² ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡΡΠ° (Π½Π°ΠΌΠ°Π»Π΅Π½ΠΈΠ΅ Π½Π° ΠΏΠΎΡΡΠ΅Π±Π»Π΅Π½ΠΈΠ΅ΡΠΎ Π½Π° CPU ΠΈΠ»ΠΈ Π·Π°ΠΊΡΡΠ½Π΅Π½ΠΈΡ Π½Π° ΠΏΠ°ΠΊΠ΅ΡΠΈΡΠ΅).
ΠΠ°ΡΠΎ Π°Π»ΡΠ΅ΡΠ½Π°ΡΠΈΠ²Π° ΡΠ΅ ΡΠ΅ ΠΎΠ±ΡΡΠ½Π°Ρ Π° ΠΊΡΠΌ Calico. ΠΡΠ΅ΠΆΠΎΠ²ΠΈΡΠ΅ ΠΏΠΎΠ»ΠΈΡΠΈΠΊΠΈ Π½Π° Calico ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π°Ρ Π΄Π° Π½Π΅ ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° conntrack Π·Π° ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ Π²ΠΈΠ΄ ΡΡΠ°ΡΠΈΠΊ (ΡΡΠ΅Π· ΠΎΠΏΡΠΈΡΡΠ° doNotTrack Π² ΠΏΠΎΠ»ΠΈΡΠΈΠΊΠΈΡΠ΅). Π’ΠΎΠ²Π° ΠΈΠΌ ΠΎΡΠΈΠ³ΡΡΠΈ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΠΎ Π½ΠΈΠ²ΠΎ Π½Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡ ΠΏΠ»ΡΡ Π΄ΠΎΠΏΡΠ»Π½ΠΈΡΠ΅Π»Π΅Π½ ΡΠ»ΠΎΠΉ ΡΠΈΠ³ΡΡΠ½ΠΎΡΡ, ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π΅Π½ ΠΎΡ Calico.
ΠΠ° ΠΊΠ°ΠΊΠ²ΠΎ ΡΠ΅ ΡΠ΅ Π½Π°Π»ΠΎΠΆΠΈ Π΄Π° ΡΠ΅ ΠΏΡΠΈΠ±Π΅Π³Π½Π΅, Π·Π° Π΄Π° ΡΠ΅ Π·Π°ΠΎΠ±ΠΈΠΊΠΎΠ»ΠΈ conntrack?
- ΠΠΎΠ»ΠΈΡΠΈΠΊΠΈΡΠ΅ do-not-track ΠΎΠ±ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΎ ΡΡΡΠ±Π²Π° Π΄Π° Π±ΡΠ΄Π°Ρ ΡΠΈΠΌΠ΅ΡΡΠΈΡΠ½ΠΈ. Π ΡΠ»ΡΡΠ°Ρ Π½Π° SaaS Π΄ΠΎΡΡΠ°Π²ΡΠΈΠΊ: ΡΠ΅Ρ Π½ΠΈΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΡΠ°Π±ΠΎΡΠ΅Ρ Π° Π² Π·Π°ΡΠΈΡΠ΅Π½Π° Π·ΠΎΠ½Π° ΠΈ Π·Π°ΡΠΎΠ²Π° Ρ ΠΏΠΎΠΌΠΎΡΡΠ° Π½Π° ΠΌΡΠ΅ΠΆΠΎΠ²Π°ΡΠ° ΠΏΠΎΠ»ΠΈΡΠΈΠΊΠ° ΡΠ΅ ΠΌΠΎΠ³Π°Ρ Π΄Π° Π΄ΠΎΠ±Π°Π²ΡΡ Π² Π±ΡΠ» ΡΠΏΠΈΡΡΠΊ ΡΡΠ°ΡΠΈΠΊΠ° ΠΎΡ Π΄ΡΡΠ³ΠΈ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, Π½Π° ΠΊΠΎΠΈΡΠΎ ΠΈΠΌ Π΅ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ Π΄ΠΎΡΡΡΠΏ Π΄ΠΎ memcached.
- ΠΠΎΠ»ΠΈΡΠΈΠΊΠ°ΡΠ° do-not-track Π½Π΅ ΠΎΡΡΠΈΡΠ° ΠΏΠΎΡΠΎΠΊΠ°ΡΠ° Π½Π° ΡΠ²ΡΡΠ·Π²Π°Π½Π΅. Π’Π°ΠΊΠ° ΡΠ΅, Π² ΡΠ»ΡΡΠ°ΠΉ Π½Π° Ρ Π°ΠΊΠ΅ΡΡΡΠ²ΠΎ Π½Π° memcached ΡΡΡΠ²ΡΡ, ΡΠ΅ΠΎΡΠ΅ΡΠΈΡΠ½ΠΎ ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΎΠΏΠΈΡΠ° ΡΠ²ΡΡΠ·Π²Π°Π½Π΅ ΠΊΡΠΌ Π²ΡΠ΅ΠΊΠΈ ΠΎΡ memcached ΠΊΠ»ΠΈΠ΅Π½ΡΠΈΡΠ΅, Π°ΠΊΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΠΏΡΠ°Π²ΠΈΠ»Π½ΠΈΡ ΠΈΠ·Ρ ΠΎΠ΄ΡΡ ΠΏΠΎΡΡ. ΠΡΠΏΡΠ΅ΠΊΠΈ ΡΠΎΠ²Π°, Π°ΠΊΠΎ ΠΏΡΠ°Π²ΠΈΠ»Π½ΠΎ ΡΡΠ΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΠ»ΠΈ ΠΌΡΠ΅ΠΆΠΎΠ²Π°ΡΠ° ΠΏΠΎΠ»ΠΈΡΠΈΠΊΠ° Π·Π° Π²Π°ΡΠΈΡΠ΅ memcached ΠΊΠ»ΠΈΠ΅Π½ΡΠΈ, ΠΎΠΏΠΈΡΠΈΡΠ΅ Π·Π° ΡΠ²ΡΡΠ·Π²Π°Π½Π΅ Π²ΡΠ΅ ΠΎΡΠ΅ ΡΠ΅ Π±ΡΠ΄Π°Ρ ΠΎΡΡ Π²ΡΡΠ»Π΅Π½ΠΈ ΠΎΡ ΡΡΡΠ°Π½Π° Π½Π° ΠΊΠ»ΠΈΠ΅Π½ΡΠ°.
- ΠΠΎΠ»ΠΈΡΠΈΠΊΠ°ΡΠ° do-not-track ΡΠ΅ ΠΏΡΠΈΠ»Π°Π³Π° Π·Π° Π²ΡΠ΅ΠΊΠΈ ΠΏΠ°ΠΊΠ΅Ρ, Π·Π° ΡΠ°Π·Π»ΠΈΠΊΠ° ΠΎΡ ΠΎΠ±ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΡΠ΅ ΠΏΠΎΠ»ΠΈΡΠΈΠΊΠΈ, ΠΊΠΎΠΈΡΠΎ ΡΠ΅ ΠΏΡΠΈΠ»Π°Π³Π°Ρ ΡΠ°ΠΌΠΎ Π·Π° ΠΏΡΡΠ²ΠΈΡ ΠΏΠ°ΠΊΠ΅Ρ ΠΎΡ ΠΏΠΎΡΠΎΠΊΠ°. Π’ΠΎΠ²Π° ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ²Π΅Π»ΠΈΡΠΈ ΡΠ°Π·Ρ ΠΎΠ΄Π° Π½Π° CPU ΡΠ΅ΡΡΡΡΠΈ Π½Π° ΠΏΠ°ΠΊΠ΅Ρ, ΡΡΠΉ ΠΊΠ°ΡΠΎ Π·Π° Π²ΡΠ΅ΠΊΠΈ ΠΏΠ°ΠΊΠ΅Ρ ΡΠ΅ Π½Π°Π»Π°Π³Π° Π΄Π° ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠΈ ΠΏΠΎΠ»ΠΈΡΠΈΠΊΠ°. ΠΠΎ Π·Π° ΠΊΡΠ°ΡΠΊΠΎΡΡΠ°ΠΉΠ½ΠΈ ΡΠ²ΡΡΠ·Π²Π°Π½ΠΈΡ ΡΠΎΠ·ΠΈ ΡΠ°Π·Ρ ΠΎΠ΄ ΡΠ΅ ΠΊΠΎΠΌΠΏΠ΅Π½ΡΠΈΡΠ° ΠΎΡ Π½Π°ΠΌΠ°Π»ΡΠ²Π°Π½Π΅ΡΠΎ Π½Π° ΡΠ°Π·Ρ ΠΎΠ΄Π° Π½Π° ΡΠ΅ΡΡΡΡΠΈ Π·Π° ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° Π½Π° conntrack. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π² ΡΠ»ΡΡΠ°Ρ Π½Π° SaaS Π΄ΠΎΡΡΠ°Π²ΡΠΈΠΊ, Π±ΡΠΎΡΡ Π½Π° ΠΏΠ°ΠΊΠ΅ΡΠΈΡΠ΅ Π·Π° Π²ΡΡΠΊΠΎ ΡΠ²ΡΡΠ·Π²Π°Π½Π΅ Π±Π΅ΡΠ΅ ΠΌΠ½ΠΎΠ³ΠΎ ΠΌΠ°Π»ΡΠΊ, ΡΠ°ΠΊΠ° ΡΠ΅ Π΄ΠΎΠΏΡΠ»Π½ΠΈΡΠ΅Π»Π½ΠΈΡΡ ΡΠ°Π·Ρ ΠΎΠ΄ Π½Π° CPU ΡΠ΅ΡΡΡΡΠΈ ΠΏΡΠΈ ΠΏΡΠΈΠ»Π°Π³Π°Π½Π΅ΡΠΎ Π½Π° ΠΏΠΎΠ»ΠΈΡΠΈΠΊΠΈΡΠ΅ Π·Π° Π²ΡΠ΅ΠΊΠΈ ΠΏΠ°ΠΊΠ΅Ρ Π±Π΅ΡΠ΅ ΠΎΠΏΡΠ°Π²Π΄Π°Π½.
ΠΠ° ΠΏΡΠ΅ΠΌΠΈΠ½Π΅ΠΌ ΠΊΡΠΌ ΡΠ΅ΡΡΠΎΠ²Π΅ΡΠ΅
ΠΡΠΎΠ²Π΅Π΄ΠΎΡ
ΠΌΠ΅ ΡΠ΅ΡΡ Π½Π° Π΅Π΄ΠΈΠ½ pod Ρ memcached ΡΡΡΠ²ΡΡ ΠΈ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ pod-ΠΎΠ²Π΅ memcached ΠΊΠ»ΠΈΠ΅Π½ΡΠΈ, ΡΡΠ°ΡΡΠΈΡΠ°Π½ΠΈ Π½Π° ΠΎΡΠ΄Π°Π»Π΅ΡΠ΅Π½ΠΈ Π²ΡΠ·Π»ΠΈ, ΡΠ°ΠΊΠ° ΡΠ΅ Π΄Π° ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° ΠΈΠ·Π²ΡΡΡΠ²Π°ΠΌΠ΅ ΠΌΠ½ΠΎΠ³ΠΎ Π³ΠΎΠ»ΡΠΌΠΎ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΠ²ΡΡΠ·Π²Π°Π½ΠΈΡ Π² ΡΠ΅ΠΊΡΠ½Π΄Π°. Π‘ΡΡΠ²ΡΡΡΡ Ρ pod-a Π½Π° memcached ΡΡΡΠ²ΡΡΠ° ΠΈΠΌΠ°ΡΠ΅ 8 ΡΠ΄ΡΠ° ΠΈ 512k Π·Π°ΠΏΠΈΡΠ° Π² conntrack ΡΠ°Π±Π»ΠΈΡΠ°ΡΠ° (ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎ Π½Π°ΡΡΡΠΎΠ΅Π½ ΡΠ°Π·ΠΌΠ΅Ρ Π½Π° ΡΠ°Π±Π»ΠΈΡΠ°ΡΠ° Π·Π° Ρ
ΠΎΡΡΠ°).
ΠΠ·ΠΌΠ΅ΡΠ²Π°Ρ
ΠΌΠ΅ ΡΠ°Π·Π»ΠΈΠΊΠ°ΡΠ° Π² ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡΡΠ° ΠΌΠ΅ΠΆΠ΄Ρ: Π±Π΅Π· ΠΌΡΠ΅ΠΆΠΎΠ²Π° ΠΏΠΎΠ»ΠΈΡΠΈΠΊΠ°; Ρ ΠΎΠ±ΠΈΠΊΠ½ΠΎΠ²Π΅Π½Π° Calico ΠΏΠΎΠ»ΠΈΡΠΈΠΊΠ°; ΠΈ Calico do-not-track ΠΏΠΎΠ»ΠΈΡΠΈΠΊΠ°.
ΠΠ° ΠΏΡΡΠ²ΠΈΡ ΡΠ΅ΡΡ Π·Π°Π΄Π°Π΄ΠΎΡ ΠΌΠ΅ Π±ΡΠΎΠΉ Π½Π° ΡΠ²ΡΡΠ·Π²Π°Π½ΠΈΡΡΠ° Π΄ΠΎ 4000 Π² ΡΠ΅ΠΊΡΠ½Π΄Π°, ΡΠ°ΠΊΠ° ΡΠ΅ ΠΌΠΎΠΆΠ΅Ρ ΠΌΠ΅ Π΄Π° ΡΠ΅ ΡΠΎΠΊΡΡΠΈΡΠ°ΠΌΠ΅ Π²ΡΡΡ Ρ ΡΠ°Π·Π»ΠΈΠΊΠ°ΡΠ° Π² ΠΏΠΎΡΡΠ΅Π±Π»Π΅Π½ΠΈΠ΅ΡΠΎ Π½Π° CPU. ΠΠ΅ Π½Π°ΠΌΠ΅ΡΠΈΡ ΠΌΠ΅ ΡΡΡΠ΅ΡΡΠ²Π΅Π½ΠΈ ΡΠ°Π·Π»ΠΈΡΠΈΡ ΠΌΠ΅ΠΆΠ΄Ρ ΠΎΡΡΡΡΡΠ²ΠΈΠ΅ΡΠΎ Π½Π° ΠΏΠΎΠ»ΠΈΡΠΈΠΊΠ° ΠΈ ΡΡΠ°Π½Π΄Π°ΡΡΠ½Π°ΡΠ° ΠΏΠΎΠ»ΠΈΡΠΈΠΊΠ°, Π½ΠΎ do-not-track ΡΠ²Π΅Π»ΠΈΡΠΈ ΠΏΠΎΡΡΠ΅Π±Π»Π΅Π½ΠΈΠ΅ΡΠΎ Π½Π° CPU Ρ ΠΎΠΊΠΎΠ»ΠΎ 20%.

ΠΡΠ² Π²ΡΠΎΡΠΈΡ ΡΠ΅ΡΡ ΡΡΠ°ΡΡΠΈΡΠ°Ρ ΠΌΠ΅ ΡΠΎΠ»ΠΊΠΎΠ²Π° ΡΠ²ΡΡΠ·Π²Π°Π½ΠΈΡ, ΠΊΠΎΠ»ΠΊΠΎΡΠΎ ΠΌΠΎΠΆΠ΅Ρ Π° Π΄Π° Π³Π΅Π½Π΅ΡΠΈΡΠ°Ρ Π½Π°ΡΠΈΡΠ΅ ΠΊΠ»ΠΈΠ΅Π½ΡΠΈ, ΠΈ ΠΈΠ·ΠΌΠ΅ΡΠΈΡ ΠΌΠ΅ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»Π½ΠΎΡΠΎ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΠ²ΡΡΠ·Π²Π°Π½ΠΈΡ Π² ΡΠ΅ΠΊΡΠ½Π΄Π°, ΠΊΠΎΠ΅ΡΠΎ Π½Π°ΡΠΈΡΡ memcached-ΡΠ΅ΡΠ²Π΅Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΠΎΠ±ΡΠ°Π±ΠΎΡΠΈ. ΠΠ°ΠΊΡΠΎ ΠΎΡΠ°ΠΊΠ²Π°Ρ ΠΌΠ΅, Π² ΡΠ»ΡΡΠ°Ρ Π½Π° "Π±Π΅Π· ΠΏΠΎΠ»ΠΈΡΠΈΠΊΠΈ" ΠΈ "ΡΡΠ°Π½Π΄Π°ΡΡΠ½Π° ΠΏΠΎΠ»ΠΈΡΠΈΠΊΠ°" ΠΈ Π΄Π²Π°ΡΠ° Π΄ΠΎΡΡΠΈΠ³Π½Π°Ρ Π° Π»ΠΈΠΌΠΈΡΠ° Π½Π° conntrack ΠΎΡ Π½Π°Π΄ 4000 ΡΠ²ΡΡΠ·Π²Π°Π½ΠΈΡ Π² ΡΠ΅ΠΊΡΠ½Π΄Π° (512k / 120s = 4369 ΡΠ²ΡΡΠ·Π²Π°Π½ΠΈΡ/Ρ). Π‘ ΠΏΠΎΠ»ΠΈΡΠΈΠΊΠ°ΡΠ° do-not-track Π½Π°ΡΠΈΡΠ΅ ΠΊΠ»ΠΈΠ΅Π½ΡΠΈ ΠΈΠ·ΠΏΡΠ°ΡΠ°Ρ Π° 60000 ΡΠ²ΡΡΠ·Π²Π°Π½ΠΈΡ Π² ΡΠ΅ΠΊΡΠ½Π΄Π° Π±Π΅Π· Π½ΠΈΠΊΠ°ΠΊΠ²ΠΈ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈ. Π£Π±Π΅Π΄Π΅Π½ΠΈ ΡΠΌΠ΅, ΡΠ΅ ΠΌΠΎΠΆΠ΅Ρ ΠΌΠ΅ Π΄Π° ΡΠ²Π΅Π»ΠΈΡΠΈΠΌ ΡΠΎΠ²Π° ΡΠΈΡΠ»ΠΎ, ΡΠ²ΡΡΠ·Π²Π°ΠΉΠΊΠΈ ΠΏΠΎΠ²Π΅ΡΠ΅ ΠΊΠ»ΠΈΠ΅Π½ΡΠΈ, Π½ΠΎ ΡΠΌΡΡΠ°ΠΌΠ΅, ΡΠ΅ ΡΠ΅Π·ΠΈ ΡΠΈΡΡΠΈ ΡΠ° Π΄ΠΎΡΡΠ°ΡΡΡΠ½ΠΈ, Π·Π° Π΄Π° ΠΈΠ»ΡΡΡΡΠΈΡΠ°Ρ ΠΏΠΎΡΠ»Π°Π½ΠΈΠ΅ΡΠΎ Π½Π° ΡΠ°Π·ΠΈ ΡΡΠ°ΡΠΈΡ!

ΠΠ°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅
Conntrack Π΅ Π²Π°ΠΆΠ½Π° ΡΡΠ½ΠΊΡΠΈΡ Π½Π° ΡΠ΄ΡΠΎΡΠΎ. Π’ΠΎΠΉ ΠΈΠ·ΠΏΡΠ»Π½ΡΠ²Π° ΠΎΡΠ»ΠΈΡΠ½ΠΎ Π·Π°Π΄Π°ΡΠ°ΡΠ° ΡΠΈ. Π§Π΅ΡΡΠΎ ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΠΎΡ ΠΊΠ»ΡΡΠΎΠ²ΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΈ Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ°ΡΠ°. ΠΡΠΏΡΠ΅ΠΊΠΈ ΡΠΎΠ²Π°, Π² ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈ ΡΡΠ΅Π½Π°ΡΠΈΠΈ, Π½Π°ΡΠΎΠ²Π°ΡΠ²Π°Π½Π΅ΡΠΎ ΠΎΡ conntrack Π½Π°Π΄Π²ΠΈΡΠ°Π²Π° ΠΎΠ±ΠΈΡΠ°ΠΉΠ½ΠΈΡΠ΅ ΠΏΡΠ΅Π΄ΠΈΠΌΡΡΠ²Π°, ΠΊΠΎΠΈΡΠΎ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Ρ. Π ΡΠΎΠ·ΠΈ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡ ΠΌΡΠ΅ΠΆΠΎΠ²ΠΈΡΠ΅ ΠΏΠΎΠ»ΠΈΡΠΈΠΊΠΈ Π½Π° Calico ΠΌΠΎΠ³Π°Ρ Π΄Π° Π±ΡΠ΄Π°Ρ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½ΠΈ, Π·Π° Π΄Π° ΡΠ΅ ΠΈΠ·ΠΊΠ»ΡΡΠΈ selectively ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ΡΠΎ Π½Π° conntrack, ΠΊΠ°ΡΠΎ ΡΡΡΠ΅Π²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ ΡΠ΅ ΠΏΠΎΠ²ΠΈΡΠΈ Π½ΠΈΠ²ΠΎΡΠΎ Π½Π° ΠΌΡΠ΅ΠΆΠΎΠ²Π°ΡΠ° ΡΠΈΠ³ΡΡΠ½ΠΎΡΡ. ΠΠ° ΡΠ΅Π»ΠΈΡ Π΄ΡΡΠ³ ΡΡΠ°ΡΠΈΠΊ conntrack ΠΏΡΠΎΠ΄ΡΠ»ΠΆΠ°Π²Π° Π΄Π° Π±ΡΠ΄Π΅ Π²Π°Ρ ΠΏΡΠΈΡΡΠ΅Π»!
Π‘ΡΡΠΎ ΡΠ°ΠΊΠ° ΠΏΡΠΎΡΠ΅ΡΠ΅ΡΠ΅ ΠΈ Π΄ΡΡΠ³ΠΈ ΡΡΠ°ΡΠΈΠΈ Π² Π½Π°ΡΠΈΡ Π±Π»ΠΎΠ³:
ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: habr.com
