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

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

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