แƒฅแƒกแƒ”แƒšแƒ˜แƒก แƒžแƒแƒšแƒ˜แƒขแƒ˜แƒ™แƒ˜แƒก แƒ•แƒแƒ แƒ˜แƒแƒœแƒขแƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒแƒ–แƒ แƒ”แƒ‘แƒ Calico-แƒกแƒ—แƒแƒœ แƒ”แƒ แƒ—แƒแƒ“

แƒฅแƒกแƒ”แƒšแƒ˜แƒก แƒžแƒแƒšแƒ˜แƒขแƒ˜แƒ™แƒ˜แƒก แƒ•แƒแƒ แƒ˜แƒแƒœแƒขแƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒแƒ–แƒ แƒ”แƒ‘แƒ Calico-แƒกแƒ—แƒแƒœ แƒ”แƒ แƒ—แƒแƒ“

Calico แƒฅแƒกแƒ”แƒšแƒ˜แƒก แƒ›แƒแƒ“แƒฃแƒšแƒ˜ แƒฃแƒ–แƒ แƒฃแƒœแƒ•แƒ”แƒšแƒงแƒแƒคแƒก แƒฅแƒกแƒ”แƒšแƒ˜แƒก แƒžแƒแƒšแƒ˜แƒขแƒ˜แƒ™แƒ˜แƒก แƒคแƒแƒ แƒ—แƒ แƒกแƒžแƒ”แƒฅแƒขแƒ แƒก แƒ”แƒ แƒ—แƒ˜แƒแƒœแƒ˜ แƒกแƒ˜แƒœแƒขแƒแƒฅแƒกแƒ˜แƒ—, แƒ แƒแƒ—แƒ แƒ“แƒแƒ˜แƒชแƒ•แƒแƒœ แƒขแƒ”แƒฅแƒœแƒ˜แƒ™แƒ˜แƒก แƒฐแƒแƒกแƒขแƒ”แƒ‘แƒ˜, แƒ•แƒ˜แƒ แƒขแƒฃแƒแƒšแƒฃแƒ แƒ˜ แƒ›แƒแƒœแƒฅแƒแƒœแƒ”แƒ‘แƒ˜ แƒ“แƒ แƒžแƒแƒ“แƒ˜. แƒ”แƒก แƒฌแƒ”แƒกแƒ”แƒ‘แƒ˜ แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒฃแƒš แƒ˜แƒฅแƒœแƒแƒก แƒกแƒแƒฎแƒ”แƒšแƒ—แƒ แƒกแƒ˜แƒ•แƒ แƒชแƒ”แƒจแƒ˜ แƒแƒœ แƒ˜แƒงแƒแƒก แƒ’แƒšแƒแƒ‘แƒแƒšแƒฃแƒ แƒ˜ แƒฅแƒกแƒ”แƒšแƒ˜แƒก แƒžแƒแƒšแƒ˜แƒขแƒ˜แƒ™แƒ, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒ•แƒ แƒชแƒ”แƒšแƒ“แƒ”แƒ‘แƒ แƒ›แƒแƒกแƒžแƒ˜แƒœแƒซแƒšแƒ˜แƒก แƒกแƒแƒ‘แƒแƒšแƒแƒ แƒฌแƒ”แƒ แƒขแƒ˜แƒšแƒ˜ (แƒžแƒ˜แƒ แƒ“แƒแƒžแƒ˜แƒ  แƒฐแƒแƒกแƒขแƒ–แƒ” แƒ’แƒแƒจแƒ•แƒ”แƒ‘แƒฃแƒšแƒ˜ แƒแƒžแƒšแƒ˜แƒ™แƒแƒชแƒ˜แƒ”แƒ‘แƒ˜แƒก แƒ“แƒแƒกแƒแƒชแƒแƒ•แƒแƒ“ - แƒฐแƒแƒกแƒขแƒ˜ แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒ˜แƒงแƒแƒก แƒกแƒ”แƒ แƒ•แƒ”แƒ แƒ˜ แƒแƒœ แƒ•แƒ˜แƒ แƒขแƒฃแƒแƒšแƒฃแƒ แƒ˜ แƒ›แƒแƒœแƒฅแƒแƒœแƒ) แƒแƒœ แƒกแƒแƒ›แƒฃแƒจแƒแƒ แƒ“แƒแƒขแƒ•แƒ˜แƒ แƒ—แƒ•แƒ˜แƒก แƒกแƒแƒ‘แƒแƒšแƒแƒ แƒฌแƒ”แƒ แƒขแƒ˜แƒšแƒ˜ (แƒ™แƒแƒœแƒขแƒ”แƒ˜แƒœแƒ”แƒ แƒ”แƒ‘แƒจแƒ˜ แƒแƒœ แƒ›แƒแƒกแƒžแƒ˜แƒœแƒซแƒ”แƒš แƒ•แƒ˜แƒ แƒขแƒฃแƒแƒšแƒฃแƒ  แƒ›แƒแƒœแƒฅแƒแƒœแƒ”แƒ‘แƒจแƒ˜ แƒ’แƒแƒจแƒ•แƒ”แƒ‘แƒฃแƒšแƒ˜ แƒแƒžแƒšแƒ˜แƒ™แƒแƒชแƒ˜แƒ”แƒ‘แƒ˜แƒก แƒ“แƒแƒกแƒแƒชแƒแƒ•แƒแƒ“). Calico-แƒก แƒžแƒแƒšแƒ˜แƒขแƒ˜แƒ™แƒ แƒกแƒแƒจแƒฃแƒแƒšแƒ”แƒ‘แƒแƒก แƒ’แƒแƒซแƒšแƒ”แƒ•แƒ— แƒ’แƒแƒ›แƒแƒ˜แƒงแƒ”แƒœแƒแƒ— แƒฃแƒกแƒแƒคแƒ แƒ—แƒฎแƒแƒ”แƒ‘แƒ˜แƒก แƒ–แƒแƒ›แƒ”แƒ‘แƒ˜ แƒžแƒแƒ™แƒ”แƒขแƒ˜แƒก แƒ’แƒ–แƒ˜แƒก แƒกแƒฎแƒ•แƒแƒ“แƒแƒกแƒฎแƒ•แƒ แƒฌแƒ”แƒ แƒขแƒ˜แƒšแƒจแƒ˜ แƒ˜แƒกแƒ”แƒ—แƒ˜ แƒ•แƒแƒ แƒ˜แƒแƒœแƒขแƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒ—, แƒ แƒแƒ’แƒแƒ แƒ˜แƒชแƒแƒ preDNAT, unraracked แƒ“แƒ applyOnForward. แƒ˜แƒ›แƒ˜แƒก แƒ’แƒแƒ’แƒ”แƒ‘แƒ, แƒ—แƒฃ แƒ แƒแƒ’แƒแƒ  แƒ›แƒฃแƒจแƒแƒแƒ‘แƒก แƒ”แƒก แƒžแƒแƒ แƒแƒ›แƒ”แƒขแƒ แƒ”แƒ‘แƒ˜, แƒ“แƒแƒ’แƒ”แƒฎแƒ›แƒแƒ แƒ”แƒ‘แƒแƒ— แƒ’แƒแƒแƒฃแƒ›แƒฏแƒแƒ‘แƒ”แƒกแƒแƒ— แƒ—แƒฅแƒ•แƒ”แƒœแƒ˜ แƒ›แƒ—แƒšแƒ˜แƒแƒœแƒ˜ แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒ˜แƒก แƒฃแƒกแƒแƒคแƒ แƒ—แƒฎแƒแƒ”แƒ‘แƒ แƒ“แƒ แƒจแƒ”แƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒ. แƒ”แƒก แƒกแƒขแƒแƒขแƒ˜แƒ แƒ’แƒแƒœแƒ›แƒแƒ แƒขแƒแƒ•แƒก แƒแƒ› Calico-แƒก แƒžแƒแƒšแƒ˜แƒขแƒ˜แƒ™แƒ˜แƒก แƒ•แƒแƒ แƒ˜แƒแƒœแƒขแƒ”แƒ‘แƒ˜แƒก แƒแƒ แƒกแƒก (preDNAT, unraracked แƒ“แƒ applyOnForward), แƒ แƒแƒ›แƒšแƒ”แƒ‘แƒ˜แƒช แƒ’แƒแƒ›แƒแƒ˜แƒงแƒ”แƒœแƒ”แƒ‘แƒ แƒฐแƒแƒกแƒขแƒ˜แƒก แƒ‘แƒแƒšแƒ แƒฌแƒ”แƒ แƒขแƒ˜แƒšแƒ”แƒ‘แƒ–แƒ”, แƒแƒฅแƒชแƒ”แƒœแƒขแƒ˜แƒ— แƒ˜แƒ›แƒแƒ–แƒ”, แƒ—แƒฃ แƒ แƒ แƒฎแƒ“แƒ”แƒ‘แƒ แƒžแƒแƒ™แƒ”แƒขแƒ˜แƒก แƒ“แƒแƒ›แƒฃแƒจแƒแƒ•แƒ”แƒ‘แƒ˜แƒก แƒ‘แƒ˜แƒšแƒ˜แƒ™แƒ”แƒ‘แƒจแƒ˜ (iptabels แƒฏแƒแƒญแƒ•แƒ”แƒ‘แƒ˜).

แƒ”แƒก แƒกแƒขแƒแƒขแƒ˜แƒ แƒ•แƒแƒ แƒแƒฃแƒ“แƒแƒ‘แƒก, แƒ แƒแƒ› แƒ—แƒฅแƒ•แƒ”แƒœ แƒ’แƒแƒฅแƒ•แƒ— แƒซแƒ˜แƒ แƒ˜แƒ—แƒแƒ“แƒ˜ แƒ’แƒแƒ’แƒ”แƒ‘แƒ, แƒ—แƒฃ แƒ แƒแƒ’แƒแƒ  แƒ›แƒฃแƒจแƒแƒแƒ‘แƒก Kubernetes แƒ“แƒ Calico แƒฅแƒกแƒ”แƒšแƒ˜แƒก แƒžแƒแƒšแƒ˜แƒขแƒ˜แƒ™แƒ. แƒ—แƒฃ แƒแƒ แƒ, แƒ’แƒ˜แƒ แƒฉแƒ”แƒ•แƒ— แƒกแƒชแƒแƒ“แƒแƒ— แƒซแƒ˜แƒ แƒ˜แƒ—แƒแƒ“แƒ˜ แƒฅแƒกแƒ”แƒšแƒ˜แƒก แƒžแƒแƒšแƒ˜แƒขแƒ˜แƒ™แƒ˜แƒก แƒ’แƒแƒ™แƒ•แƒ”แƒ—แƒ˜แƒšแƒ˜ ะธ แƒ›แƒแƒกแƒžแƒ˜แƒœแƒซแƒšแƒ˜แƒก แƒ“แƒแƒชแƒ•แƒ˜แƒก แƒ’แƒแƒ™แƒ•แƒ”แƒ—แƒ˜แƒšแƒ˜ Calico-แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ แƒแƒ› แƒกแƒขแƒแƒขแƒ˜แƒ˜แƒก แƒฌแƒแƒ™แƒ˜แƒ—แƒฎแƒ•แƒแƒ›แƒ“แƒ”. แƒฉแƒ•แƒ”แƒœ แƒแƒกแƒ”แƒ•แƒ” แƒ•แƒ”แƒšแƒ˜แƒ—, แƒ แƒแƒ› แƒ’แƒฅแƒแƒœแƒ“แƒ”แƒ— แƒœแƒแƒฌแƒแƒ แƒ›แƒแƒ”แƒ‘แƒ˜แƒก แƒซแƒ˜แƒ แƒ˜แƒ—แƒแƒ“แƒ˜ แƒ’แƒแƒ’แƒ”แƒ‘แƒ iptables แƒšแƒ˜แƒœแƒฃแƒฅแƒกแƒจแƒ˜.

แƒ™แƒแƒšแƒ˜แƒ™แƒ แƒ’แƒšแƒแƒ‘แƒแƒšแƒฃแƒ แƒ˜ แƒฅแƒกแƒ”แƒšแƒ˜แƒก แƒžแƒแƒšแƒ˜แƒขแƒ˜แƒ™แƒ แƒกแƒแƒจแƒฃแƒแƒšแƒ”แƒ‘แƒแƒก แƒ’แƒแƒซแƒšแƒ”แƒ•แƒ— แƒ’แƒแƒ›แƒแƒ˜แƒงแƒ”แƒœแƒแƒ— แƒฌแƒ•แƒ“แƒแƒ›แƒ˜แƒก แƒฌแƒ”แƒกแƒ”แƒ‘แƒ˜ แƒ”แƒขแƒ˜แƒ™แƒ”แƒขแƒ”แƒ‘แƒ˜แƒก แƒ›แƒ˜แƒฎแƒ”แƒ“แƒ•แƒ˜แƒ— (แƒฐแƒแƒกแƒขแƒ”แƒ‘แƒ˜แƒก แƒฏแƒ’แƒฃแƒคแƒ”แƒ‘แƒ–แƒ” แƒ“แƒ แƒกแƒแƒ›แƒฃแƒจแƒแƒ แƒ“แƒแƒขแƒ•แƒ˜แƒ แƒ—แƒ•แƒ”แƒ‘แƒ–แƒ”/แƒžแƒแƒ“แƒ”แƒ‘แƒ–แƒ”). แƒ”แƒก แƒซแƒแƒšแƒ˜แƒแƒœ แƒกแƒแƒกแƒแƒ แƒ’แƒ”แƒ‘แƒšแƒแƒ, แƒ—แƒฃ แƒ”แƒ แƒ—แƒแƒ“ แƒ˜แƒงแƒ”แƒœแƒ”แƒ‘แƒ— แƒฐแƒ”แƒขแƒ”แƒ แƒแƒ’แƒ”แƒœแƒฃแƒš แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒ”แƒ‘แƒก - แƒ•แƒ˜แƒ แƒขแƒฃแƒแƒšแƒฃแƒ  แƒ›แƒแƒœแƒฅแƒแƒœแƒ”แƒ‘แƒก, แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒแƒก แƒฃแƒจแƒฃแƒแƒšแƒแƒ“ แƒแƒžแƒแƒ แƒแƒขแƒฃแƒ แƒแƒ–แƒ” แƒแƒœ แƒ™แƒฃแƒ‘แƒ”แƒ แƒœแƒ”แƒขแƒ˜แƒก แƒ˜แƒœแƒคแƒ แƒแƒกแƒขแƒ แƒฃแƒฅแƒขแƒฃแƒ แƒแƒ–แƒ”. แƒ’แƒแƒ แƒ“แƒ แƒแƒ›แƒ˜แƒกแƒ, แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒ“แƒแƒ˜แƒชแƒ•แƒแƒ— แƒ—แƒฅแƒ•แƒ”แƒœแƒ˜ แƒ™แƒšแƒแƒกแƒขแƒ”แƒ แƒ˜ (แƒ™แƒ•แƒแƒœแƒซแƒ”แƒ‘แƒ˜) แƒ“แƒ”แƒ™แƒšแƒแƒ แƒแƒชแƒ˜แƒฃแƒšแƒ˜ แƒžแƒแƒšแƒ˜แƒขแƒ˜แƒ™แƒ˜แƒก แƒœแƒแƒ™แƒ แƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒ— แƒ“แƒ แƒ’แƒแƒ›แƒแƒ˜แƒงแƒ”แƒœแƒแƒ— แƒฅแƒกแƒ”แƒšแƒ˜แƒก แƒžแƒแƒšแƒ˜แƒขแƒ˜แƒ™แƒ แƒจแƒ”แƒ›แƒแƒ›แƒแƒ•แƒแƒš แƒขแƒ แƒแƒคแƒ˜แƒ™แƒ–แƒ” (แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒแƒ“, NodePorts แƒแƒœ แƒ’แƒแƒ แƒ” IP-แƒ”แƒ‘แƒ˜แƒก แƒกแƒ”แƒ แƒ•แƒ˜แƒกแƒ˜แƒก แƒ›แƒ”แƒจแƒ•แƒ”แƒแƒ‘แƒ˜แƒ—).

แƒคแƒฃแƒœแƒ“แƒแƒ›แƒ”แƒœแƒขแƒฃแƒ  แƒ“แƒแƒœแƒ”แƒ–แƒ”, แƒ แƒแƒ“แƒ”แƒกแƒแƒช Calico แƒแƒ™แƒแƒ•แƒจแƒ˜แƒ แƒ”แƒ‘แƒก แƒžแƒแƒ“แƒก แƒฅแƒกแƒ”แƒšแƒ—แƒแƒœ (แƒ˜แƒฎแƒ˜แƒšแƒ”แƒ— แƒ“แƒ˜แƒแƒ’แƒ แƒแƒ›แƒ แƒฅแƒ•แƒ”แƒ›แƒแƒ—), แƒ˜แƒก แƒแƒ™แƒแƒ•แƒจแƒ˜แƒ แƒ”แƒ‘แƒก แƒ›แƒแƒก แƒฐแƒแƒกแƒขแƒ—แƒแƒœ แƒ•แƒ˜แƒ แƒขแƒฃแƒแƒšแƒฃแƒ แƒ˜ Ethernet แƒ˜แƒœแƒขแƒ”แƒ แƒคแƒ”แƒ˜แƒกแƒ˜แƒก (veth) แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒ—. แƒžแƒแƒ“แƒ˜แƒก แƒ›แƒ˜แƒ”แƒ  แƒ’แƒแƒ’แƒ–แƒแƒ•แƒœแƒ˜แƒšแƒ˜ แƒขแƒ แƒแƒคแƒ˜แƒ™แƒ˜ แƒฐแƒแƒกแƒขแƒจแƒ˜ แƒ›แƒแƒ“แƒ˜แƒก แƒแƒ› แƒ•แƒ˜แƒ แƒขแƒฃแƒแƒšแƒฃแƒ แƒ˜ แƒ˜แƒœแƒขแƒ”แƒ แƒคแƒ”แƒ˜แƒกแƒ˜แƒ“แƒแƒœ แƒ“แƒ แƒ›แƒฃแƒจแƒแƒ•แƒ“แƒ”แƒ‘แƒ แƒ˜แƒกแƒ”, แƒ แƒแƒ’แƒแƒ แƒช แƒคแƒ˜แƒ–แƒ˜แƒ™แƒฃแƒ แƒ˜ แƒฅแƒกแƒ”แƒšแƒ˜แƒก แƒ˜แƒœแƒขแƒ”แƒ แƒคแƒ”แƒ˜แƒกแƒ˜แƒ“แƒแƒœ. แƒœแƒแƒ’แƒฃแƒšแƒ˜แƒกแƒฎแƒ›แƒ”แƒ•แƒแƒ“, Calico แƒแƒกแƒแƒฎแƒ”แƒšแƒ”แƒ‘แƒก แƒแƒ› แƒ˜แƒœแƒขแƒ”แƒ แƒคแƒ”แƒ˜แƒกแƒ”แƒ‘แƒก caliXXX. แƒ•แƒ˜แƒœแƒแƒ˜แƒ“แƒแƒœ แƒขแƒ แƒแƒคแƒ˜แƒ™แƒ˜ แƒ•แƒ˜แƒ แƒขแƒฃแƒแƒšแƒฃแƒ แƒ˜ แƒ˜แƒœแƒขแƒ”แƒ แƒคแƒ”แƒ˜แƒกแƒ˜แƒก แƒ›แƒ”แƒจแƒ•แƒ”แƒแƒ‘แƒ˜แƒ— แƒ›แƒแƒ“แƒ˜แƒก, แƒ˜แƒก แƒ’แƒแƒ“แƒ˜แƒก iptables-แƒจแƒ˜, แƒ—แƒ˜แƒ—แƒฅแƒแƒก pod แƒ”แƒ แƒ—แƒ˜ แƒฐแƒแƒžแƒ˜แƒก แƒ“แƒแƒจแƒแƒ แƒ”แƒ‘แƒ˜แƒ— แƒ˜แƒงแƒแƒก. แƒแƒ›แƒ˜แƒขแƒแƒ›, แƒ แƒแƒ“แƒ”แƒกแƒแƒช แƒขแƒ แƒแƒคแƒ˜แƒ™แƒ˜ แƒ›แƒแƒ“แƒ˜แƒก/แƒžแƒแƒ“แƒ˜แƒ“แƒแƒœ แƒ›แƒแƒ“แƒ˜แƒก, แƒ˜แƒก แƒ’แƒแƒ“แƒแƒ›แƒ˜แƒกแƒแƒ›แƒแƒ แƒ—แƒ”แƒ‘แƒฃแƒšแƒ˜แƒ แƒ›แƒแƒกแƒžแƒ˜แƒœแƒซแƒšแƒ˜แƒก แƒ—แƒ•แƒแƒšแƒกแƒแƒ–แƒ แƒ˜แƒกแƒ˜แƒ—.

Kubernetes-แƒ˜แƒก แƒ™แƒ•แƒแƒœแƒซแƒ–แƒ”, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒ›แƒฃแƒจแƒแƒแƒ‘แƒก Calico-แƒ–แƒ”, แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒ•แƒ˜แƒ แƒขแƒฃแƒแƒšแƒฃแƒ แƒ˜ แƒ˜แƒœแƒขแƒ”แƒ แƒคแƒ”แƒ˜แƒกแƒ˜ (veth) แƒกแƒแƒ›แƒฃแƒจแƒแƒ แƒ“แƒแƒขแƒ•แƒ˜แƒ แƒ—แƒ•แƒแƒ–แƒ”, แƒจแƒ”แƒ›แƒ“แƒ”แƒ’แƒœแƒแƒ˜แƒ แƒแƒ“. แƒฅแƒ•แƒ”แƒ›แƒแƒ— แƒ›แƒแƒชแƒ”แƒ›แƒฃแƒš แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒจแƒ˜ แƒฎแƒ”แƒ“แƒแƒ•แƒ—, แƒ แƒแƒ› veth#10 (calic1cbf1ca0f8) แƒ“แƒแƒ™แƒแƒ•แƒจแƒ˜แƒ แƒ”แƒ‘แƒฃแƒšแƒ˜แƒ cnx-manager-*-แƒ—แƒแƒœ calico-monitoring แƒกแƒแƒฎแƒ”แƒšแƒ”แƒ‘แƒ˜แƒก แƒกแƒ˜แƒ•แƒ แƒชแƒ”แƒจแƒ˜.

[centos@ip-172-31-31-46 K8S]$ sudo ip a
...
10: calic1cbf1ca0f8@if4: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1440 qdisc noqueue state UP group default
    link/ether ee:ee:ee:ee:ee:ee brd ff:ff:ff:ff:ff:ff link-netnsid 5
    inet6 fe80::ecee:eeff:feee:eeee/64 scope link
       valid_lft forever preferred_lft forever
...

[centos@ip-172-31-31-46 K8S]$ calicoctl get wep --all-namespaces
...
calico-monitoring cnx-manager-8f778bd66-lz45m                            ip-172-31-31-46.ec2.internal 192.168.103.134/32
calic1cbf1ca0f8
...

แƒฅแƒกแƒ”แƒšแƒ˜แƒก แƒžแƒแƒšแƒ˜แƒขแƒ˜แƒ™แƒ˜แƒก แƒ•แƒแƒ แƒ˜แƒแƒœแƒขแƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒแƒ–แƒ แƒ”แƒ‘แƒ Calico-แƒกแƒ—แƒแƒœ แƒ”แƒ แƒ—แƒแƒ“

แƒ˜แƒ›แƒ˜แƒก แƒ’แƒแƒ—แƒ•แƒแƒšแƒ˜แƒกแƒฌแƒ˜แƒœแƒ”แƒ‘แƒ˜แƒ—, แƒ แƒแƒ› Calico แƒฅแƒ›แƒœแƒ˜แƒก veth แƒ˜แƒœแƒขแƒ”แƒ แƒคแƒ”แƒ˜แƒกแƒก แƒ—แƒ˜แƒ—แƒแƒ”แƒฃแƒšแƒ˜ แƒ“แƒแƒขแƒ•แƒ˜แƒ แƒ—แƒ•แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก, แƒ แƒแƒ’แƒแƒ  แƒแƒฎแƒแƒ แƒชแƒ˜แƒ”แƒšแƒ”แƒ‘แƒก แƒ˜แƒก แƒžแƒแƒšแƒ˜แƒขแƒ˜แƒ™แƒแƒก? แƒแƒ›แƒ˜แƒกแƒแƒ—แƒ•แƒ˜แƒก Calico แƒฅแƒ›แƒœแƒ˜แƒก แƒ™แƒแƒ™แƒ•แƒ”แƒ‘แƒก แƒžแƒแƒ™แƒ”แƒขแƒ˜แƒก แƒ“แƒแƒ›แƒฃแƒจแƒแƒ•แƒ”แƒ‘แƒ˜แƒก แƒ’แƒ–แƒ˜แƒก แƒกแƒฎแƒ•แƒแƒ“แƒแƒกแƒฎแƒ•แƒ แƒฏแƒแƒญแƒ•แƒ”แƒ‘แƒจแƒ˜ iptables-แƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒ—.

แƒฅแƒ•แƒ”แƒ›แƒแƒ— แƒ›แƒแƒชแƒ”แƒ›แƒฃแƒš แƒ“แƒ˜แƒแƒ’แƒ แƒแƒ›แƒแƒ–แƒ” แƒœแƒแƒฉแƒ•แƒ”แƒœแƒ”แƒ‘แƒ˜แƒ แƒฏแƒแƒญแƒ•แƒ”แƒ‘แƒ˜, แƒ แƒแƒ›แƒšแƒ”แƒ‘แƒ˜แƒช แƒฉแƒแƒ แƒ—แƒฃแƒšแƒ˜แƒ แƒžแƒแƒ™แƒ”แƒขแƒ˜แƒก แƒ“แƒแƒ›แƒฃแƒจแƒแƒ•แƒ”แƒ‘แƒแƒจแƒ˜ iptables-แƒจแƒ˜ (แƒแƒœ netfilter แƒฅแƒ•แƒ”แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒแƒจแƒ˜). แƒ แƒแƒ“แƒ”แƒกแƒแƒช แƒžแƒแƒ™แƒ”แƒขแƒ˜ แƒฉแƒแƒ›แƒแƒ“แƒ˜แƒก แƒฅแƒกแƒ”แƒšแƒ˜แƒก แƒ˜แƒœแƒขแƒ”แƒ แƒคแƒ”แƒ˜แƒกแƒ˜แƒก แƒ›แƒ”แƒจแƒ•แƒ”แƒแƒ‘แƒ˜แƒ—, แƒ˜แƒก แƒฏแƒ”แƒ  แƒ’แƒแƒ“แƒ˜แƒก PREROUTING แƒฏแƒแƒญแƒ•แƒจแƒ˜. แƒจแƒ”แƒ›แƒ“แƒ”แƒ’ แƒ›แƒ˜แƒ˜แƒฆแƒ”แƒ‘แƒ แƒ›แƒแƒ แƒจแƒ แƒฃแƒขแƒ˜แƒ–แƒแƒชแƒ˜แƒ˜แƒก แƒ’แƒแƒ“แƒแƒฌแƒงแƒ•แƒ”แƒขแƒ˜แƒšแƒ”แƒ‘แƒ แƒ“แƒ แƒแƒ›แƒ˜แƒก แƒกแƒแƒคแƒฃแƒซแƒ•แƒ”แƒšแƒ–แƒ” แƒžแƒแƒ™แƒ”แƒขแƒ˜ แƒ’แƒแƒ“แƒ˜แƒก INPUT-แƒ–แƒ” (แƒ›แƒ˜แƒ›แƒแƒ แƒ—แƒฃแƒšแƒ˜ แƒฐแƒแƒกแƒขแƒ˜แƒก แƒžแƒ แƒแƒชแƒ”แƒกแƒ”แƒ‘แƒ–แƒ”) แƒแƒœ FORWARD-แƒ–แƒ” (แƒ›แƒ˜แƒ›แƒแƒ แƒ—แƒฃแƒšแƒ˜แƒ แƒžแƒแƒ“แƒ–แƒ” แƒแƒœ แƒฅแƒกแƒ”แƒšแƒ˜แƒก แƒกแƒฎแƒ•แƒ แƒ™แƒ•แƒแƒœแƒซแƒ–แƒ”). แƒšแƒแƒ™แƒแƒšแƒฃแƒ แƒ˜ แƒžแƒ แƒแƒชแƒ”แƒกแƒ˜แƒ“แƒแƒœ, แƒžแƒแƒ™แƒ”แƒขแƒ˜ แƒ’แƒแƒ“แƒ˜แƒก OUTPUT แƒ“แƒ แƒจแƒ”แƒ›แƒ“แƒ”แƒ’ POSTROUTING แƒฏแƒแƒญแƒ•แƒจแƒ˜, แƒกแƒแƒœแƒแƒ› แƒ™แƒแƒ‘แƒ”แƒšแƒ–แƒ” แƒ’แƒแƒ˜แƒ’แƒ–แƒแƒ•แƒœแƒ”แƒ‘แƒ.

แƒ’แƒแƒ˜แƒ—แƒ•แƒแƒšแƒ˜แƒกแƒฌแƒ˜แƒœแƒ”แƒ—, แƒ แƒแƒ› pod แƒแƒ แƒ˜แƒก แƒแƒกแƒ”แƒ•แƒ” แƒ’แƒแƒ แƒ” แƒ”แƒ แƒ—แƒ”แƒฃแƒšแƒ˜ (แƒ“แƒแƒ™แƒแƒ•แƒจแƒ˜แƒ แƒ”แƒ‘แƒฃแƒšแƒ˜ veth-แƒ—แƒแƒœ) iptables แƒ“แƒแƒ›แƒฃแƒจแƒแƒ•แƒ”แƒ‘แƒ˜แƒก แƒ—แƒ•แƒแƒšแƒกแƒแƒ–แƒ แƒ˜แƒกแƒ˜แƒ—. แƒ›แƒแƒ“แƒ˜แƒ— แƒจแƒ”แƒ•แƒแƒฏแƒแƒ›แƒแƒ—:

  • แƒ’แƒแƒ“แƒแƒ’แƒ–แƒแƒ•แƒœแƒ˜แƒšแƒ˜ แƒขแƒ แƒแƒคแƒ˜แƒ™แƒ˜ (แƒœแƒแƒขแƒ˜, แƒ›แƒแƒ แƒจแƒ แƒฃแƒขแƒ˜แƒ แƒ”แƒ‘แƒฃแƒšแƒ˜ แƒแƒœ แƒžแƒแƒ“แƒ˜แƒ“แƒแƒœ/แƒžแƒแƒ“แƒ˜แƒ“แƒแƒœ) แƒ’แƒแƒ“แƒ˜แƒก PREROUTING - FORWARD - POSTROUTING แƒฏแƒแƒญแƒ•แƒ”แƒ‘แƒจแƒ˜.
  • แƒขแƒ แƒแƒคแƒ˜แƒ™แƒ˜ แƒšแƒแƒ™แƒแƒšแƒฃแƒ  แƒ›แƒแƒกแƒžแƒ˜แƒœแƒซแƒ”แƒš แƒžแƒ แƒแƒชแƒ”แƒกแƒแƒ›แƒ“แƒ” แƒ’แƒแƒ“แƒ˜แƒก PREROUTING - INPUT แƒฏแƒแƒญแƒ•แƒจแƒ˜.
  • แƒแƒ“แƒ’แƒ˜แƒšแƒแƒ‘แƒ แƒ˜แƒ•แƒ˜ แƒ›แƒแƒกแƒžแƒ˜แƒœแƒซแƒšแƒ˜แƒก แƒžแƒ แƒแƒชแƒ”แƒกแƒ˜แƒ“แƒแƒœ แƒขแƒ แƒแƒคแƒ˜แƒ™แƒ˜ แƒ’แƒแƒ“แƒ˜แƒก OUTPUT - POSTROUTING แƒฏแƒแƒญแƒ•แƒ˜แƒก แƒ›แƒ”แƒจแƒ•แƒ”แƒแƒ‘แƒ˜แƒ—.

แƒฅแƒกแƒ”แƒšแƒ˜แƒก แƒžแƒแƒšแƒ˜แƒขแƒ˜แƒ™แƒ˜แƒก แƒ•แƒแƒ แƒ˜แƒแƒœแƒขแƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒแƒ–แƒ แƒ”แƒ‘แƒ Calico-แƒกแƒ—แƒแƒœ แƒ”แƒ แƒ—แƒแƒ“

Calico แƒ’แƒ—แƒแƒ•แƒแƒ–แƒแƒ‘แƒ— แƒžแƒแƒšแƒ˜แƒขแƒ˜แƒ™แƒ˜แƒก แƒ•แƒแƒ แƒ˜แƒแƒœแƒขแƒ”แƒ‘แƒก, แƒ แƒแƒ›แƒšแƒ”แƒ‘แƒ˜แƒช แƒกแƒแƒจแƒฃแƒแƒšแƒ”แƒ‘แƒแƒก แƒ’แƒแƒซแƒšแƒ”แƒ•แƒ— แƒ’แƒแƒ›แƒแƒ˜แƒงแƒ”แƒœแƒแƒ— แƒžแƒแƒšแƒ˜แƒขแƒ˜แƒ™แƒ แƒงแƒ•แƒ”แƒšแƒ แƒฅแƒกแƒ”แƒšแƒจแƒ˜. แƒแƒ›แƒ˜แƒก แƒ’แƒแƒ—แƒ•แƒแƒšแƒ˜แƒกแƒฌแƒ˜แƒœแƒ”แƒ‘แƒ˜แƒ—, แƒ›แƒแƒ“แƒ˜แƒ— แƒ’แƒแƒ“แƒแƒ•แƒฎแƒ”แƒ“แƒแƒ— แƒžแƒแƒšแƒ˜แƒขแƒ˜แƒ™แƒ˜แƒก แƒ™แƒแƒœแƒคแƒ˜แƒ’แƒฃแƒ แƒแƒชแƒ˜แƒ˜แƒก แƒกแƒฎแƒ•แƒแƒ“แƒแƒกแƒฎแƒ•แƒ แƒ•แƒแƒ แƒ˜แƒแƒœแƒขแƒ”แƒ‘แƒก, แƒ แƒแƒ›แƒšแƒ”แƒ‘แƒ˜แƒช แƒฎแƒ”แƒšแƒ›แƒ˜แƒกแƒแƒฌแƒ•แƒ“แƒแƒ›แƒ˜แƒ Calico-แƒจแƒ˜. แƒฅแƒ•แƒ”แƒ›แƒแƒ— แƒ›แƒแƒชแƒ”แƒ›แƒฃแƒšแƒ˜ แƒ•แƒแƒ แƒ˜แƒแƒœแƒขแƒ”แƒ‘แƒ˜แƒก แƒฉแƒแƒ›แƒแƒœแƒแƒ—แƒ•แƒแƒšแƒจแƒ˜ แƒ แƒ˜แƒชแƒฎแƒ•แƒ”แƒ‘แƒ˜ แƒจแƒ”แƒ”แƒกแƒแƒ‘แƒแƒ›แƒ”แƒ‘แƒ แƒ–แƒ”แƒ›แƒแƒ— แƒ›แƒแƒชแƒ”แƒ›แƒฃแƒš แƒ“แƒ˜แƒแƒ’แƒ แƒแƒ›แƒแƒจแƒ˜ แƒ›แƒแƒชแƒ”แƒ›แƒฃแƒš แƒชแƒ˜แƒคแƒ แƒ”แƒ‘แƒก.

  1. แƒกแƒแƒ›แƒฃแƒจแƒแƒ แƒ“แƒแƒขแƒ•แƒ˜แƒ แƒ—แƒ•แƒ˜แƒก แƒกแƒแƒ‘แƒแƒšแƒแƒ แƒฌแƒ”แƒ แƒขแƒ˜แƒšแƒ˜แƒก (แƒžแƒแƒ“) แƒžแƒแƒšแƒ˜แƒขแƒ˜แƒ™แƒ
  2. แƒฐแƒแƒกแƒขแƒ˜แƒก แƒกแƒแƒ‘แƒแƒšแƒแƒ แƒฌแƒ”แƒ แƒขแƒ˜แƒšแƒ˜แƒก แƒžแƒแƒšแƒ˜แƒขแƒ˜แƒ™แƒ
  3. ApplyOnForward แƒ•แƒแƒ แƒ˜แƒแƒœแƒขแƒ˜
  4. PreDNAT แƒžแƒแƒšแƒ˜แƒขแƒ˜แƒ™แƒ
  5. แƒ’แƒแƒฃแƒ—แƒ•แƒแƒšแƒ˜แƒกแƒฌแƒ˜แƒœแƒ”แƒ‘แƒ”แƒšแƒ˜ แƒžแƒแƒšแƒ˜แƒขแƒ˜แƒ™แƒ

แƒ“แƒแƒ•แƒ˜แƒฌแƒงแƒแƒ— แƒ˜แƒ›แƒ˜แƒ—, แƒ—แƒฃ แƒ แƒแƒ’แƒแƒ  แƒ’แƒแƒ›แƒแƒ˜แƒงแƒ”แƒœแƒ”แƒ‘แƒ แƒฌแƒ”แƒกแƒ”แƒ‘แƒ˜ แƒกแƒแƒ›แƒฃแƒจแƒแƒ แƒ“แƒแƒขแƒ•แƒ˜แƒ แƒ—แƒ•แƒ˜แƒก แƒ‘แƒแƒšแƒ แƒฌแƒ”แƒ แƒขแƒ˜แƒšแƒ”แƒ‘แƒ–แƒ” (Kubernetes pods แƒแƒœ OpenStack VMs) แƒ“แƒ แƒจแƒ”แƒ›แƒ“แƒ”แƒ’ แƒ’แƒแƒ“แƒแƒ•แƒฎแƒ”แƒ“แƒแƒ— แƒžแƒแƒšแƒ˜แƒขแƒ˜แƒ™แƒ˜แƒก แƒ•แƒแƒ แƒ˜แƒแƒœแƒขแƒ”แƒ‘แƒก แƒฐแƒแƒกแƒขแƒ˜แƒก แƒ‘แƒแƒšแƒ แƒฌแƒ”แƒ แƒขแƒ˜แƒšแƒ”แƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก.

แƒกแƒแƒ›แƒฃแƒจแƒแƒ แƒ“แƒแƒขแƒ•แƒ˜แƒ แƒ—แƒ•แƒ˜แƒก แƒกแƒแƒ‘แƒแƒšแƒแƒ แƒฌแƒ”แƒ แƒขแƒ˜แƒšแƒ”แƒ‘แƒ˜

แƒกแƒแƒ›แƒฃแƒจแƒแƒ แƒ“แƒแƒขแƒ•แƒ˜แƒ แƒ—แƒ•แƒ˜แƒก แƒกแƒแƒ‘แƒแƒšแƒแƒ แƒฌแƒ”แƒ แƒขแƒ˜แƒšแƒ˜แƒก แƒžแƒแƒšแƒ˜แƒขแƒ˜แƒ™แƒ (1)

แƒ”แƒก แƒแƒ แƒ˜แƒก แƒ—แƒฅแƒ•แƒ”แƒœแƒ˜ kubernetes pods แƒ“แƒแƒกแƒแƒชแƒแƒ•แƒแƒ“. Calico แƒ›แƒฎแƒแƒ แƒก แƒฃแƒญแƒ”แƒ แƒก Kubernetes NetworkPolicy-แƒ—แƒแƒœ แƒ›แƒฃแƒจแƒแƒแƒ‘แƒแƒก, แƒ›แƒแƒ’แƒ แƒแƒ› แƒแƒกแƒ”แƒ•แƒ” แƒฃแƒ–แƒ แƒฃแƒœแƒ•แƒ”แƒšแƒงแƒแƒคแƒก แƒ“แƒแƒ›แƒแƒขแƒ”แƒ‘แƒ˜แƒ— แƒžแƒแƒšแƒ˜แƒขแƒ˜แƒ™แƒแƒก - Calico NetworkPolicy แƒ“แƒ GlobalNetworkPolicy. Calico แƒฅแƒ›แƒœแƒ˜แƒก แƒฏแƒแƒญแƒ•แƒก แƒ—แƒ˜แƒ—แƒแƒ”แƒฃแƒšแƒ˜ แƒžแƒแƒ“แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก (แƒกแƒแƒ›แƒฃแƒจแƒแƒ แƒ“แƒแƒขแƒ•แƒ˜แƒ แƒ—แƒ•แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก) แƒ“แƒ แƒแƒ›แƒแƒ’แƒ แƒ”แƒ‘แƒก INPUT แƒ“แƒ OUTPUT แƒฏแƒแƒญแƒ•แƒ”แƒ‘แƒก แƒ“แƒแƒขแƒ•แƒ˜แƒ แƒ—แƒ•แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก FORWARD แƒฏแƒแƒญแƒ•แƒ˜แƒก แƒคแƒ˜แƒšแƒขแƒ แƒ˜แƒก แƒชแƒฎแƒ แƒ˜แƒšแƒ–แƒ”.

แƒฐแƒแƒกแƒขแƒ˜แƒก แƒกแƒแƒ‘แƒแƒšแƒแƒ แƒฌแƒ”แƒ แƒขแƒ˜แƒšแƒ”แƒ‘แƒ˜

แƒฐแƒแƒกแƒขแƒ˜แƒก แƒกแƒแƒ‘แƒแƒšแƒแƒ แƒฌแƒ”แƒ แƒขแƒ˜แƒšแƒ˜แƒก แƒžแƒแƒšแƒ˜แƒขแƒ˜แƒ™แƒ (2)

CNI-แƒก (แƒ™แƒแƒœแƒขแƒ”แƒ˜แƒœแƒ”แƒ แƒ˜แƒก แƒฅแƒกแƒ”แƒšแƒ˜แƒก แƒ˜แƒœแƒขแƒ”แƒ แƒคแƒ”แƒ˜แƒกแƒ˜แƒก) แƒ’แƒแƒ แƒ“แƒ, Calico แƒžแƒแƒšแƒ˜แƒขแƒ˜แƒ™แƒ แƒฃแƒ–แƒ แƒฃแƒœแƒ•แƒ”แƒšแƒงแƒแƒคแƒก แƒ—แƒแƒ•แƒแƒ“ แƒฐแƒแƒกแƒขแƒ˜แƒก แƒ“แƒแƒชแƒ•แƒ˜แƒก แƒจแƒ”แƒกแƒแƒซแƒšแƒ”แƒ‘แƒšแƒแƒ‘แƒแƒก. Calico-แƒจแƒ˜ แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒจแƒ”แƒฅแƒ›แƒœแƒแƒ— แƒฐแƒแƒกแƒขแƒ˜แƒก แƒกแƒแƒ‘แƒแƒšแƒแƒ แƒฌแƒ”แƒ แƒขแƒ˜แƒšแƒ˜ แƒฐแƒแƒกแƒขแƒ˜แƒก แƒ˜แƒœแƒขแƒ”แƒ แƒคแƒ”แƒ˜แƒกแƒ˜แƒก แƒ™แƒแƒ›แƒ‘แƒ˜แƒœแƒแƒชแƒ˜แƒ˜แƒก แƒ“แƒ, แƒกแƒแƒญแƒ˜แƒ แƒแƒ”แƒ‘แƒ˜แƒก แƒจแƒ”แƒ›แƒ—แƒฎแƒ•แƒ”แƒ•แƒแƒจแƒ˜, แƒžแƒแƒ แƒขแƒ˜แƒก แƒœแƒแƒ›แƒ แƒ”แƒ‘แƒ˜แƒก แƒ›แƒ˜แƒ—แƒ˜แƒ—แƒ”แƒ‘แƒ˜แƒ—. แƒแƒ› แƒ”แƒ แƒ—แƒ”แƒฃแƒšแƒ˜แƒกแƒ—แƒ•แƒ˜แƒก แƒžแƒแƒšแƒ˜แƒขแƒ˜แƒ™แƒ˜แƒก แƒแƒฆแƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒ แƒ›แƒ˜แƒ˜แƒฆแƒฌแƒ”แƒ•แƒ แƒคแƒ˜แƒšแƒขแƒ แƒ˜แƒก แƒชแƒฎแƒ แƒ˜แƒšแƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒ— INPUT แƒ“แƒ OUTPUT แƒฏแƒแƒญแƒ•แƒ”แƒ‘แƒจแƒ˜. แƒ แƒแƒ’แƒแƒ แƒช แƒ“แƒ˜แƒแƒ’แƒ แƒแƒ›แƒ˜แƒ“แƒแƒœ แƒฎแƒ”แƒ“แƒแƒ•แƒ—, (2) แƒ˜แƒกแƒ˜แƒœแƒ˜ แƒ›แƒ˜แƒ›แƒแƒ แƒ—แƒแƒ•แƒ”แƒœ แƒšแƒแƒ™แƒแƒšแƒฃแƒ  แƒžแƒ แƒแƒชแƒ”แƒกแƒ”แƒ‘แƒก แƒ™แƒ•แƒแƒœแƒซแƒ–แƒ”/แƒฐแƒแƒกแƒขแƒ–แƒ”. แƒแƒœแƒฃ, แƒ—แƒฃ แƒ—แƒฅแƒ•แƒ”แƒœ แƒจแƒ”แƒฅแƒ›แƒœแƒ˜แƒ— แƒžแƒแƒšแƒ˜แƒขแƒ˜แƒ™แƒแƒก, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒ”แƒฎแƒ”แƒ‘แƒ แƒ›แƒแƒกแƒžแƒ˜แƒœแƒซแƒšแƒ˜แƒก แƒกแƒแƒ‘แƒแƒšแƒแƒ แƒฌแƒ”แƒ แƒขแƒ˜แƒšแƒก, แƒ”แƒก แƒแƒ  แƒ˜แƒ›แƒแƒฅแƒ›แƒ”แƒ“แƒ”แƒ‘แƒก แƒขแƒ แƒแƒคแƒ˜แƒ™แƒ–แƒ”, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒ›แƒ˜แƒ“แƒ˜แƒก แƒ—แƒฅแƒ•แƒ”แƒœแƒก แƒžแƒแƒ“แƒ”แƒ‘แƒจแƒ˜. แƒ›แƒแƒ’แƒ แƒแƒ› แƒ˜แƒก แƒฃแƒ–แƒ แƒฃแƒœแƒ•แƒ”แƒšแƒงแƒแƒคแƒก แƒ”แƒ แƒ— แƒ˜แƒœแƒขแƒ”แƒ แƒคแƒ”แƒ˜แƒกแƒก/แƒกแƒ˜แƒœแƒขแƒแƒฅแƒกแƒก แƒ—แƒฅแƒ•แƒ”แƒœแƒ˜ แƒ›แƒแƒกแƒžแƒ˜แƒœแƒซแƒšแƒ˜แƒกแƒ แƒ“แƒ แƒžแƒแƒ“แƒ”แƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก แƒขแƒ แƒแƒคแƒ˜แƒ™แƒ˜แƒก แƒ“แƒแƒกแƒแƒ‘แƒšแƒแƒ™แƒแƒ“ Calico-แƒก แƒžแƒแƒšแƒ˜แƒขแƒ˜แƒ™แƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒ—. แƒ”แƒก แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ•แƒœแƒแƒ“ แƒแƒ›แƒแƒ แƒขแƒ˜แƒ•แƒ”แƒ‘แƒก แƒฐแƒ”แƒขแƒ”แƒ แƒแƒ’แƒ”แƒœแƒฃแƒšแƒ˜ แƒฅแƒกแƒ”แƒšแƒ˜แƒก แƒžแƒแƒšแƒ˜แƒขแƒ˜แƒ™แƒ˜แƒก แƒ›แƒแƒ แƒ—แƒ•แƒ˜แƒก แƒžแƒ แƒแƒชแƒ”แƒกแƒก. แƒฐแƒแƒกแƒขแƒ˜แƒก แƒกแƒแƒ‘แƒแƒšแƒแƒ แƒฌแƒ”แƒ แƒขแƒ˜แƒšแƒ˜แƒก แƒžแƒแƒšแƒ˜แƒขแƒ˜แƒ™แƒ˜แƒก แƒ™แƒแƒœแƒคแƒ˜แƒ’แƒฃแƒ แƒแƒชแƒ˜แƒ แƒ™แƒšแƒแƒกแƒขแƒ”แƒ แƒ”แƒ‘แƒ˜แƒก แƒฃแƒกแƒแƒคแƒ แƒ—แƒฎแƒแƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒกแƒแƒซแƒšแƒ˜แƒ”แƒ แƒ”แƒ‘แƒšแƒแƒ“ แƒแƒ แƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒก แƒ™แƒ˜แƒ“แƒ”แƒ• แƒ”แƒ แƒ—แƒ˜ แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ•แƒแƒœแƒ˜ แƒจแƒ”แƒ›แƒ—แƒฎแƒ•แƒ”แƒ•แƒ.

ApplyOnForward แƒžแƒแƒšแƒ˜แƒขแƒ˜แƒ™แƒ (3)

ApplyOnForward แƒ•แƒแƒ แƒ˜แƒแƒœแƒขแƒ˜ แƒฎแƒ”แƒšแƒ›แƒ˜แƒกแƒแƒฌแƒ•แƒ“แƒแƒ›แƒ˜แƒ Calico-แƒก แƒ’แƒšแƒแƒ‘แƒแƒšแƒฃแƒ แƒ˜ แƒฅแƒกแƒ”แƒšแƒ˜แƒก แƒžแƒแƒšแƒ˜แƒขแƒ˜แƒ™แƒแƒจแƒ˜, แƒ แƒแƒ—แƒ แƒ“แƒแƒฃแƒจแƒ•แƒแƒก แƒžแƒแƒšแƒ˜แƒขแƒ˜แƒ™แƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ แƒฐแƒแƒกแƒขแƒ˜แƒก แƒ‘แƒแƒšแƒ แƒฌแƒ”แƒ แƒขแƒ˜แƒšแƒ˜แƒก แƒ’แƒแƒ•แƒšแƒ˜แƒ— แƒ’แƒแƒ›แƒแƒ•แƒแƒšแƒ˜ แƒขแƒ แƒแƒคแƒ˜แƒ™แƒ˜แƒก แƒ›แƒ˜แƒ›แƒแƒ แƒ—, แƒ›แƒแƒ— แƒจแƒแƒ แƒ˜แƒก แƒขแƒ แƒแƒคแƒ˜แƒ™แƒ–แƒ”, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒ’แƒแƒ“แƒแƒ›แƒ˜แƒกแƒแƒ›แƒแƒ แƒ—แƒ“แƒ”แƒ‘แƒ แƒ›แƒแƒกแƒžแƒ˜แƒœแƒซแƒšแƒ˜แƒก แƒ›แƒ˜แƒ”แƒ . แƒ”แƒก แƒ›แƒแƒ˜แƒชแƒแƒ•แƒก แƒขแƒ แƒแƒคแƒ˜แƒ™แƒก, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒ’แƒแƒ“แƒแƒ›แƒ˜แƒกแƒแƒ›แƒแƒ แƒ—แƒ”แƒ‘แƒฃแƒšแƒ˜แƒ แƒแƒ“แƒ’แƒ˜แƒšแƒแƒ‘แƒ แƒ˜แƒ• แƒžแƒแƒ“แƒจแƒ˜ แƒแƒœ แƒฅแƒกแƒ”แƒšแƒ˜แƒก แƒกแƒฎแƒ•แƒแƒ’แƒแƒœ. Calico แƒ›แƒแƒ˜แƒ—แƒฎแƒแƒ•แƒก แƒแƒ› แƒžแƒแƒ แƒแƒ›แƒ”แƒขแƒ แƒ˜แƒก แƒฉแƒแƒ แƒ—แƒ•แƒแƒก แƒžแƒแƒšแƒ˜แƒขแƒ˜แƒ™แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒ˜แƒงแƒ”แƒœแƒ”แƒ‘แƒก PreDNAT-แƒก แƒ“แƒ แƒแƒ  แƒแƒ แƒ˜แƒก แƒ—แƒ•แƒแƒšแƒงแƒฃแƒ แƒ˜แƒก แƒ“แƒ”แƒ•แƒœแƒ”แƒ‘แƒ, แƒ˜แƒฎแƒ˜แƒšแƒ”แƒ— แƒจแƒ”แƒ›แƒ“แƒ”แƒ’แƒ˜ แƒกแƒ”แƒฅแƒชแƒ˜แƒ”แƒ‘แƒ˜. แƒ’แƒแƒ แƒ“แƒ แƒแƒ›แƒ˜แƒกแƒ, ApplyOnForward แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒฃแƒš แƒ˜แƒฅแƒœแƒแƒก แƒฐแƒแƒกแƒขแƒ˜แƒก แƒขแƒ แƒแƒคแƒ˜แƒ™แƒ˜แƒก แƒ›แƒแƒœแƒ˜แƒขแƒแƒ แƒ˜แƒœแƒ’แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก แƒ˜แƒ› แƒจแƒ”แƒ›แƒ—แƒฎแƒ•แƒ”แƒ•แƒ”แƒ‘แƒจแƒ˜, แƒ แƒแƒ“แƒ”แƒกแƒแƒช แƒ’แƒแƒ›แƒแƒ˜แƒงแƒ”แƒœแƒ”แƒ‘แƒ แƒ•แƒ˜แƒ แƒขแƒฃแƒแƒšแƒฃแƒ แƒ˜ แƒ แƒแƒฃแƒขแƒ”แƒ แƒ˜ แƒแƒœ แƒžแƒ แƒแƒ’แƒ แƒแƒ›แƒฃแƒšแƒ˜ แƒฃแƒ–แƒ แƒฃแƒœแƒ•แƒ”แƒšแƒงแƒแƒคแƒ NAT.

แƒ’แƒแƒ˜แƒ—แƒ•แƒแƒšแƒ˜แƒกแƒฌแƒ˜แƒœแƒ”แƒ—, แƒ แƒแƒ› แƒ—แƒฃ แƒ—แƒฅแƒ•แƒ”แƒœ แƒ’แƒญแƒ˜แƒ แƒ“แƒ”แƒ‘แƒแƒ— แƒ˜แƒ’แƒ˜แƒ•แƒ” แƒฅแƒกแƒ”แƒšแƒ˜แƒก แƒžแƒแƒšแƒ˜แƒขแƒ˜แƒ™แƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ แƒ แƒแƒ’แƒแƒ แƒช แƒฐแƒแƒกแƒขแƒ˜แƒก แƒžแƒ แƒแƒชแƒ”แƒกแƒ”แƒ‘แƒ–แƒ”, แƒแƒกแƒ”แƒ•แƒ” แƒžแƒแƒ“แƒ”แƒ‘แƒ–แƒ”, แƒ›แƒแƒจแƒ˜แƒœ แƒแƒ  แƒ’แƒญแƒ˜แƒ แƒ“แƒ”แƒ‘แƒแƒ— ApplyOnForward แƒแƒคแƒชแƒ˜แƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ. แƒงแƒ•แƒ”แƒšแƒแƒคแƒ”แƒ แƒ˜ แƒ แƒแƒช แƒ—แƒฅแƒ•แƒ”แƒœ แƒฃแƒœแƒ“แƒ แƒ’แƒแƒแƒ™แƒ”แƒ—แƒแƒ— แƒแƒ แƒ˜แƒก แƒšแƒ”แƒ˜แƒ‘แƒšแƒ˜แƒก แƒจแƒ”แƒฅแƒ›แƒœแƒ แƒกแƒแƒญแƒ˜แƒ แƒ แƒฐแƒแƒกแƒขแƒ”แƒœแƒ“แƒ˜แƒก แƒฌแƒ”แƒ แƒขแƒ˜แƒšแƒ˜แƒกแƒ แƒ“แƒ แƒกแƒแƒ›แƒฃแƒจแƒแƒ แƒ“แƒแƒขแƒ•แƒ˜แƒ แƒ—แƒ•แƒ˜แƒก แƒ‘แƒแƒšแƒ แƒฌแƒ”แƒ แƒขแƒ˜แƒšแƒ˜แƒกแƒ—แƒ•แƒ˜แƒก (pod). Calico แƒกแƒแƒ™แƒ›แƒแƒ แƒ˜แƒกแƒแƒ“ แƒญแƒ™แƒ•แƒ˜แƒแƒœแƒ˜แƒ แƒ˜แƒ›แƒ˜แƒกแƒแƒ—แƒ•แƒ˜แƒก, แƒ แƒแƒ› แƒ’แƒแƒœแƒแƒฎแƒแƒ แƒชแƒ˜แƒ”แƒšแƒแƒก แƒžแƒแƒšแƒ˜แƒขแƒ˜แƒ™แƒ แƒšแƒ”แƒ˜แƒ‘แƒšแƒ”แƒ‘แƒ–แƒ” แƒ“แƒแƒคแƒฃแƒซแƒœแƒ”แƒ‘แƒฃแƒšแƒ˜, แƒ’แƒแƒœแƒฃแƒ แƒฉแƒ”แƒ•แƒšแƒแƒ“ แƒกแƒแƒ‘แƒแƒšแƒแƒ แƒฌแƒ”แƒ แƒขแƒ˜แƒšแƒ˜แƒก แƒขแƒ˜แƒžแƒ˜แƒกแƒ (แƒฐแƒแƒกแƒขแƒ”แƒœแƒ“แƒ˜แƒก แƒฌแƒ”แƒ แƒขแƒ˜แƒšแƒ˜ แƒแƒœ แƒกแƒแƒ›แƒฃแƒจแƒแƒ แƒ“แƒแƒขแƒ•แƒ˜แƒ แƒ—แƒ•แƒ).

PreDNAT แƒžแƒแƒšแƒ˜แƒขแƒ˜แƒ™แƒ (4)

Kubernetes-แƒจแƒ˜, แƒกแƒ”แƒ แƒ•แƒ˜แƒกแƒฃแƒšแƒ˜ แƒ”แƒ แƒ—แƒ”แƒฃแƒšแƒ˜แƒก แƒžแƒแƒ แƒขแƒ”แƒ‘แƒ˜ แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒ’แƒแƒ›แƒแƒฉแƒœแƒ“แƒ”แƒก แƒ’แƒแƒ แƒ”แƒ“แƒแƒœ NodePorts แƒแƒคแƒชแƒ˜แƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒ— แƒแƒœ แƒกแƒฃแƒ แƒ•แƒ˜แƒšแƒ˜แƒกแƒแƒ›แƒ”แƒ‘แƒ  (Calico-แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒกแƒแƒก), แƒ™แƒšแƒแƒกแƒขแƒ”แƒ แƒฃแƒšแƒ˜ IP-แƒ”แƒ‘แƒ˜แƒก แƒแƒœ แƒ’แƒแƒ แƒ” IP-แƒ”แƒ‘แƒ˜แƒก แƒแƒคแƒชแƒ˜แƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒ— แƒ›แƒแƒ—แƒ˜ แƒ แƒ”แƒ™แƒšแƒแƒ›แƒ˜แƒ แƒ”แƒ‘แƒ˜แƒ—. Kube-แƒžแƒ แƒแƒฅแƒกแƒ˜ แƒแƒ‘แƒแƒšแƒแƒœแƒกแƒ”แƒ‘แƒก แƒจแƒ”แƒ›แƒแƒ›แƒแƒ•แƒแƒš แƒขแƒ แƒแƒคแƒ˜แƒ™แƒก, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒฃแƒ™แƒแƒ•แƒจแƒ˜แƒ แƒ“แƒ”แƒ‘แƒ แƒกแƒ”แƒ แƒ•แƒ˜แƒกแƒก แƒจแƒ”แƒกแƒแƒ‘แƒแƒ›แƒ˜แƒกแƒ˜ แƒกแƒ”แƒ แƒ•แƒ˜แƒกแƒ˜แƒก แƒžแƒแƒ“แƒ”แƒ‘แƒจแƒ˜ DNAT-แƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒ—. แƒแƒ›แƒ˜แƒก แƒ’แƒแƒ—แƒ•แƒแƒšแƒ˜แƒกแƒฌแƒ˜แƒœแƒ”แƒ‘แƒ˜แƒ—, แƒ แƒแƒ’แƒแƒ  แƒแƒฎแƒแƒ แƒชแƒ˜แƒ”แƒšแƒ”แƒ‘แƒ— แƒžแƒแƒšแƒ˜แƒขแƒ˜แƒ™แƒแƒก NodePorts-แƒ˜แƒ— แƒจแƒ”แƒ›แƒแƒกแƒฃแƒšแƒ˜ แƒขแƒ แƒแƒคแƒ˜แƒ™แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก? แƒ˜แƒ›แƒ˜แƒก แƒฃแƒ–แƒ แƒฃแƒœแƒ•แƒ”แƒšแƒกแƒแƒงแƒแƒคแƒแƒ“, แƒ แƒแƒ› แƒ”แƒก แƒฌแƒ”แƒกแƒ”แƒ‘แƒ˜ แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒฃแƒšแƒ˜ แƒ˜แƒฅแƒœแƒ”แƒ‘แƒ แƒขแƒ แƒแƒคแƒ˜แƒ™แƒ˜แƒก แƒ“แƒแƒ›แƒฃแƒจแƒแƒ•แƒ”แƒ‘แƒแƒ›แƒ“แƒ” DNAT-แƒ˜แƒก แƒ›แƒ˜แƒ”แƒ  (แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒแƒ แƒ˜แƒก แƒ แƒฃแƒฅแƒ แƒฐแƒแƒกแƒข:แƒžแƒแƒ แƒขแƒกแƒ แƒ“แƒ แƒจแƒ”แƒกแƒแƒ‘แƒแƒ›แƒ˜แƒก แƒกแƒ”แƒ แƒ•แƒ˜แƒกแƒก แƒจแƒแƒ แƒ˜แƒก), Calico แƒฃแƒ–แƒ แƒฃแƒœแƒ•แƒ”แƒšแƒงแƒแƒคแƒก แƒžแƒแƒ แƒแƒ›แƒ”แƒขแƒ แƒก globalNetworkPolicy-แƒกแƒ—แƒ•แƒ˜แƒก, แƒกแƒแƒฎแƒ”แƒšแƒฌแƒแƒ“แƒ”แƒ‘แƒ˜แƒ— "preDNAT: true".

แƒ แƒแƒ“แƒ”แƒกแƒแƒช แƒฉแƒแƒ แƒ—แƒฃแƒšแƒ˜แƒ pre-DNAT, แƒ”แƒก แƒžแƒแƒšแƒ˜แƒขแƒ˜แƒ™แƒ”แƒ‘แƒ˜ แƒ’แƒแƒœแƒฎแƒแƒ แƒชแƒ˜แƒ”แƒšแƒ“แƒ”แƒ‘แƒ (4) แƒ“แƒ˜แƒแƒ’แƒ แƒแƒ›แƒแƒจแƒ˜ - PREROUTING แƒฏแƒแƒญแƒ•แƒ˜แƒก mangle แƒชแƒฎแƒ แƒ˜แƒšแƒจแƒ˜ - DNAT-แƒ›แƒ“แƒ” แƒฃแƒจแƒฃแƒแƒšแƒแƒ“. แƒฌแƒ”แƒกแƒ”แƒ‘แƒ˜แƒก แƒฉแƒ•แƒ”แƒฃแƒšแƒ˜ แƒ—แƒแƒœแƒ›แƒ˜แƒ›แƒ“แƒ”แƒ•แƒ แƒแƒ‘แƒ แƒแƒฅ แƒแƒ  แƒแƒ แƒ˜แƒก แƒ“แƒแƒชแƒฃแƒšแƒ˜, แƒ แƒแƒ“แƒ’แƒแƒœ แƒแƒ› แƒžแƒแƒšแƒ˜แƒขแƒ˜แƒ™แƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ แƒ’แƒแƒชแƒ˜แƒšแƒ”แƒ‘แƒ˜แƒ— แƒแƒ“แƒ แƒ” แƒฎแƒ“แƒ”แƒ‘แƒ แƒขแƒ แƒแƒคแƒ˜แƒ™แƒ˜แƒก แƒ“แƒแƒ›แƒฃแƒจแƒแƒ•แƒ”แƒ‘แƒ˜แƒก แƒ’แƒ–แƒแƒ–แƒ”. แƒ—แƒฃแƒ›แƒชแƒ, preDNAT แƒžแƒแƒšแƒ˜แƒขแƒ˜แƒ™แƒ แƒžแƒแƒขแƒ˜แƒ•แƒก แƒกแƒชแƒ”แƒ›แƒก แƒ’แƒแƒœแƒแƒชแƒฎแƒแƒ“แƒ˜แƒก แƒ—แƒแƒœแƒ›แƒ˜แƒ›แƒ“แƒ”แƒ•แƒ แƒแƒ‘แƒแƒก แƒ”แƒ แƒ—แƒ›แƒแƒœแƒ”แƒ—แƒจแƒ˜.

DNAT-แƒ›แƒ“แƒ” แƒžแƒแƒšแƒ˜แƒขแƒ˜แƒ™แƒ˜แƒก แƒจแƒ”แƒฅแƒ›แƒœแƒ˜แƒกแƒแƒก แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ•แƒแƒœแƒ˜แƒ แƒ˜แƒงแƒแƒ— แƒคแƒ แƒ—แƒฎแƒ˜แƒšแƒแƒ“ แƒ˜แƒ› แƒขแƒ แƒแƒคแƒ˜แƒ™แƒ˜แƒก แƒ›แƒ˜แƒ›แƒแƒ แƒ—, แƒ แƒแƒ›แƒšแƒ˜แƒก แƒ“แƒแƒ›แƒฃแƒจแƒแƒ•แƒ”แƒ‘แƒแƒช แƒ’แƒกแƒฃแƒ แƒ— แƒ“แƒ แƒ“แƒแƒฃแƒจแƒ•แƒแƒ— แƒฃแƒ›แƒ แƒแƒ•แƒšแƒ”แƒกแƒแƒ‘แƒ˜แƒก แƒฃแƒแƒ แƒงแƒแƒคแƒ. แƒขแƒ แƒแƒคแƒ˜แƒ™แƒ˜, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒ›แƒแƒœแƒ˜แƒจแƒœแƒฃแƒšแƒ˜แƒ, แƒ แƒแƒ’แƒแƒ แƒช โ€žแƒ“แƒแƒจแƒ•แƒ”แƒ‘แƒโ€œ แƒฌแƒ˜แƒœแƒ-DNAT แƒžแƒแƒšแƒ˜แƒขแƒ˜แƒ™แƒแƒจแƒ˜ แƒแƒฆแƒแƒ  แƒจแƒ”แƒ›แƒแƒฌแƒ›แƒ“แƒ”แƒ‘แƒ แƒฐแƒแƒกแƒขแƒ˜แƒœแƒ’แƒ˜แƒก แƒฌแƒ”แƒ แƒขแƒ˜แƒšแƒ˜แƒก แƒžแƒแƒšแƒ˜แƒขแƒ˜แƒ™แƒ˜แƒ—, แƒฎแƒแƒšแƒ แƒขแƒ แƒแƒคแƒ˜แƒ™แƒ˜, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒแƒ  แƒจแƒ”แƒ”แƒกแƒแƒ‘แƒแƒ›แƒ”แƒ‘แƒ DNAT-แƒ›แƒ“แƒ” แƒžแƒแƒšแƒ˜แƒขแƒ˜แƒ™แƒแƒก, แƒ’แƒแƒ’แƒ แƒซแƒ”แƒšแƒ“แƒ”แƒ‘แƒ แƒ“แƒแƒ แƒฉแƒ”แƒœแƒ˜แƒšแƒ˜ แƒฏแƒแƒญแƒ•แƒ”แƒ‘แƒ˜แƒก แƒ›แƒ”แƒจแƒ•แƒ”แƒแƒ‘แƒ˜แƒ—.
Calico-แƒ› แƒกแƒแƒ•แƒแƒšแƒ“แƒ”แƒ‘แƒฃแƒšแƒ แƒ’แƒแƒฎแƒแƒ“แƒ ApplyOnForward แƒแƒคแƒชแƒ˜แƒ˜แƒก แƒฉแƒแƒ แƒ—แƒ•แƒ preDNAT-แƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒกแƒแƒก, แƒ แƒแƒ“แƒ’แƒแƒœ แƒ’แƒแƒœแƒกแƒแƒ–แƒฆแƒ•แƒ แƒ”แƒ‘แƒ˜แƒ— แƒขแƒ แƒแƒคแƒ˜แƒ™แƒ˜แƒก แƒ“แƒแƒœแƒ˜แƒจแƒœแƒฃแƒšแƒ”แƒ‘แƒ แƒฏแƒ”แƒ  แƒแƒ  แƒแƒ แƒ˜แƒก แƒจแƒ”แƒ แƒฉแƒ”แƒฃแƒšแƒ˜. แƒขแƒ แƒแƒคแƒ˜แƒ™แƒ˜ แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒ˜แƒงแƒแƒก แƒ›แƒ˜แƒ›แƒแƒ แƒ—แƒฃแƒšแƒ˜ แƒ›แƒแƒกแƒžแƒ˜แƒœแƒซแƒ”แƒš แƒžแƒ แƒแƒชแƒ”แƒกแƒ–แƒ”, แƒแƒœ แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒ’แƒแƒ“แƒแƒ›แƒ˜แƒกแƒแƒ›แƒแƒ แƒ—แƒ“แƒ”แƒก แƒžแƒแƒ“แƒจแƒ˜ แƒแƒœ แƒกแƒฎแƒ•แƒ แƒ™แƒ•แƒแƒœแƒซแƒจแƒ˜.

แƒ—แƒ•แƒแƒšแƒ—แƒ•แƒแƒšแƒ˜แƒก แƒ’แƒแƒ แƒ”แƒจแƒ” แƒžแƒแƒšแƒ˜แƒขแƒ˜แƒ™แƒ (5)

แƒฅแƒกแƒ”แƒšแƒ”แƒ‘แƒกแƒ แƒ“แƒ แƒแƒžแƒšแƒ˜แƒ™แƒแƒชแƒ˜แƒ”แƒ‘แƒก แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒฐแƒฅแƒแƒœแƒ“แƒ”แƒ— แƒ“แƒ˜แƒ“แƒ˜ แƒ’แƒแƒœแƒกแƒฎแƒ•แƒแƒ•แƒ”แƒ‘แƒ”แƒ‘แƒ˜ แƒฅแƒชแƒ”แƒ•แƒแƒจแƒ˜. แƒ–แƒแƒ’แƒ˜แƒ”แƒ แƒ— แƒ”แƒฅแƒกแƒขแƒ แƒ”แƒ›แƒแƒšแƒฃแƒ  แƒจแƒ”แƒ›แƒ—แƒฎแƒ•แƒ”แƒ•แƒแƒจแƒ˜, แƒแƒžแƒšแƒ˜แƒ™แƒแƒชแƒ˜แƒ”แƒ‘แƒ›แƒ แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒฌแƒแƒ แƒ›แƒแƒฅแƒ›แƒœแƒแƒœ แƒ›แƒ แƒแƒ•แƒแƒšแƒ˜ แƒฎแƒแƒœแƒ›แƒแƒ™แƒšแƒ” แƒ™แƒแƒ•แƒจแƒ˜แƒ แƒ˜. แƒแƒ›แƒแƒœ แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒ’แƒแƒ›แƒแƒ˜แƒฌแƒ•แƒ˜แƒแƒก conntrack-แƒ˜แƒก (Linux แƒฅแƒกแƒ”แƒšแƒ˜แƒก แƒกแƒขแƒ”แƒ™แƒ˜แƒก แƒซแƒ˜แƒ แƒ˜แƒ—แƒแƒ“แƒ˜ แƒ™แƒแƒ›แƒžแƒแƒœแƒ”แƒœแƒขแƒ˜) แƒ›แƒ”แƒฎแƒกแƒ˜แƒ”แƒ แƒ”แƒ‘แƒ˜แƒก แƒแƒ›แƒแƒฌแƒฃแƒ แƒ•แƒ. แƒขแƒ แƒแƒ“แƒ˜แƒชแƒ˜แƒฃแƒšแƒแƒ“, Linux-แƒ–แƒ” แƒแƒ› แƒขแƒ˜แƒžแƒ˜แƒก แƒแƒžแƒšแƒ˜แƒ™แƒแƒชแƒ˜แƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒกแƒแƒจแƒ•แƒ”แƒ‘แƒแƒ“, แƒ—แƒฅแƒ•แƒ”แƒœ แƒ›แƒแƒ’แƒ˜แƒฌแƒ”แƒ•แƒ— แƒฎแƒ”แƒšแƒ˜แƒ— แƒ“แƒแƒแƒ™แƒแƒœแƒคแƒ˜แƒ’แƒฃแƒ แƒ˜แƒ แƒแƒ— แƒแƒœ แƒ’แƒแƒ›แƒแƒ แƒ—แƒแƒ— contrack, แƒแƒœ แƒ“แƒแƒฌแƒ”แƒ แƒแƒ— iptables แƒฌแƒ”แƒกแƒ”แƒ‘แƒ˜ แƒ™แƒแƒœแƒขแƒ แƒแƒฅแƒขแƒ˜แƒก แƒ’แƒ•แƒ”แƒ แƒ“แƒ˜แƒก แƒแƒ•แƒšแƒ˜แƒ—. แƒฃแƒ™แƒแƒœแƒขแƒ แƒแƒšแƒ แƒžแƒแƒšแƒ˜แƒขแƒ˜แƒ™แƒ Calico-แƒจแƒ˜ แƒฃแƒคแƒ แƒ แƒ›แƒแƒ แƒขแƒ˜แƒ•แƒ˜ แƒ“แƒ แƒ”แƒคแƒ”แƒฅแƒขแƒฃแƒ แƒ˜ แƒ•แƒแƒ แƒ˜แƒแƒœแƒขแƒ˜แƒ, แƒ—แƒฃ แƒ’แƒกแƒฃแƒ แƒ— แƒ™แƒแƒ•แƒจแƒ˜แƒ แƒ”แƒ‘แƒ˜แƒก แƒ แƒแƒช แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒกแƒฌแƒ แƒแƒคแƒแƒ“ แƒ“แƒแƒ›แƒฃแƒจแƒแƒ•แƒ”แƒ‘แƒ. แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒแƒ“, แƒ—แƒฃ แƒ˜แƒงแƒ”แƒœแƒ”แƒ‘แƒ— แƒ›แƒแƒกแƒ˜แƒฃแƒ แƒก แƒ›แƒ”แƒ›แƒฅแƒ”แƒจแƒ˜ แƒแƒœ แƒ“แƒแƒชแƒ•แƒ˜แƒก แƒ“แƒแƒ›แƒแƒขแƒ”แƒ‘แƒ˜แƒ—แƒ˜ แƒฆแƒแƒœแƒ˜แƒกแƒซแƒ˜แƒ”แƒ‘แƒ DDoS.

แฒฌแƒแƒ˜แƒ™แƒ˜แƒ—แƒฎแƒ” แƒ”แƒก แƒ“แƒฆแƒ˜แƒฃแƒ แƒจแƒ˜ แƒจแƒ”แƒขแƒงแƒแƒ‘แƒ˜แƒœแƒ”แƒ‘แƒ (แƒแƒœ แƒฉแƒ•แƒ”แƒœแƒ˜ แƒ—แƒแƒ แƒ’แƒ›แƒแƒœแƒ˜) แƒ“แƒแƒ›แƒแƒขแƒ”แƒ‘แƒ˜แƒ—แƒ˜ แƒ˜แƒœแƒคแƒแƒ แƒ›แƒแƒชแƒ˜แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก, แƒจแƒ”แƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒ˜แƒก แƒขแƒ”แƒกแƒขแƒ”แƒ‘แƒ˜แƒก แƒฉแƒแƒ—แƒ•แƒšแƒ˜แƒ—, แƒฃแƒ™แƒแƒœแƒขแƒ แƒแƒšแƒ แƒžแƒแƒšแƒ˜แƒขแƒ˜แƒ™แƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒ—.

แƒ แƒแƒ“แƒ”แƒกแƒแƒช Calico globalNetworkPolicy-แƒจแƒ˜ โ€ždoNotTrack: trueโ€œ แƒแƒคแƒชแƒ˜แƒแƒก แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ—, แƒ˜แƒก แƒ˜แƒฅแƒชแƒ”แƒ•แƒ **แƒ›แƒ˜แƒฃแƒฌแƒ•แƒ“แƒแƒ›แƒ”แƒš** แƒžแƒแƒšแƒ˜แƒขแƒ˜แƒ™แƒแƒ“ แƒ“แƒ แƒ’แƒแƒ›แƒแƒ˜แƒงแƒ”แƒœแƒ”แƒ‘แƒ แƒซแƒแƒšแƒ˜แƒแƒœ แƒแƒ“แƒ แƒ” Linux-แƒ˜แƒก แƒžแƒแƒ™แƒ”แƒขแƒ”แƒ‘แƒ˜แƒก แƒ“แƒแƒ›แƒฃแƒจแƒแƒ•แƒ”แƒ‘แƒ˜แƒก แƒ›แƒ˜แƒšแƒกแƒแƒ“แƒ”แƒœแƒจแƒ˜. แƒ–แƒ”แƒ›แƒแƒ— แƒ›แƒแƒชแƒ”แƒ›แƒฃแƒš แƒ“แƒ˜แƒแƒ’แƒ แƒแƒ›แƒแƒก แƒ แƒแƒ› แƒ’แƒแƒ“แƒแƒ•แƒฎแƒ”แƒ“แƒแƒ—, แƒ“แƒแƒฃแƒ“แƒ”แƒ•แƒ แƒ”แƒ‘แƒ”แƒšแƒ˜ แƒžแƒแƒšแƒ˜แƒขแƒ˜แƒ™แƒ แƒ’แƒแƒ›แƒแƒ˜แƒงแƒ”แƒœแƒ”แƒ‘แƒ PREROUTING แƒ“แƒ OUTPUT แƒฏแƒแƒญแƒ•แƒ”แƒ‘แƒจแƒ˜ แƒœแƒ”แƒ“แƒšแƒ”แƒฃแƒš แƒชแƒฎแƒ แƒ˜แƒšแƒจแƒ˜, แƒกแƒแƒœแƒแƒ› แƒ“แƒแƒ˜แƒฌแƒงแƒ”แƒ‘แƒ แƒ™แƒแƒ•แƒจแƒ˜แƒ แƒ˜แƒก แƒ—แƒ•แƒแƒšแƒงแƒฃแƒ แƒ˜แƒก แƒ“แƒ”แƒ•แƒœแƒ”แƒ‘แƒ (conntrack). แƒ แƒแƒ“แƒ”แƒกแƒแƒช แƒžแƒแƒ™แƒ”แƒขแƒ˜ แƒœแƒ”แƒ‘แƒแƒ“แƒแƒ แƒ—แƒฃแƒšแƒ˜แƒ แƒฃแƒ™แƒแƒœแƒขแƒ แƒแƒšแƒ แƒžแƒแƒšแƒ˜แƒขแƒ˜แƒ™แƒ˜แƒ—, แƒ˜แƒ’แƒ˜ แƒแƒฆแƒ˜แƒœแƒ˜แƒจแƒœแƒ”แƒ‘แƒ แƒแƒ› แƒžแƒแƒ™แƒ”แƒขแƒ˜แƒกแƒ—แƒ•แƒ˜แƒก แƒ™แƒแƒ•แƒจแƒ˜แƒ แƒ˜แƒก แƒ—แƒ•แƒแƒšแƒ—แƒ•แƒแƒšแƒ˜แƒก แƒ’แƒแƒ—แƒ˜แƒจแƒ•แƒ˜แƒก แƒ›แƒ˜แƒ–แƒœแƒ˜แƒ—. แฒ”แƒก แƒœแƒ˜แƒจแƒœแƒแƒ•แƒก:

  • แƒฃแƒ™แƒแƒœแƒขแƒ แƒแƒšแƒ แƒžแƒแƒšแƒ˜แƒขแƒ˜แƒ™แƒ แƒ’แƒแƒ›แƒแƒ˜แƒงแƒ”แƒœแƒ”แƒ‘แƒ แƒ—แƒ˜แƒ—แƒ แƒžแƒแƒ™แƒ”แƒขแƒ–แƒ”. แƒ™แƒแƒ•แƒจแƒ˜แƒ แƒ˜แƒก (แƒแƒœ แƒ“แƒ˜แƒœแƒ”แƒ‘แƒ˜แƒก) แƒชแƒœแƒ”แƒ‘แƒ แƒแƒ  แƒแƒ แƒกแƒ”แƒ‘แƒแƒ‘แƒก. แƒ™แƒแƒ•แƒจแƒ˜แƒ แƒ”แƒ‘แƒ˜แƒก แƒœแƒแƒ™แƒšแƒ”แƒ‘แƒแƒ‘แƒแƒก แƒแƒฅแƒ•แƒก แƒ แƒแƒ›แƒ“แƒ”แƒœแƒ˜แƒ›แƒ” แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ•แƒแƒœแƒ˜ แƒจแƒ”แƒ“แƒ”แƒ’แƒ˜:
  • แƒ—แƒฃ แƒ’แƒกแƒฃแƒ แƒ— แƒ“แƒแƒฃแƒจแƒ•แƒแƒ— แƒ แƒแƒ’แƒแƒ แƒช แƒ›แƒแƒ—แƒฎแƒแƒ•แƒœแƒ˜แƒก, แƒแƒกแƒ”แƒ•แƒ” แƒžแƒแƒกแƒฃแƒฎแƒ”แƒ‘แƒ˜แƒก แƒขแƒ แƒแƒคแƒ˜แƒ™แƒ˜, แƒ’แƒญแƒ˜แƒ แƒ“แƒ”แƒ‘แƒแƒ— แƒฌแƒ”แƒกแƒ˜ แƒ แƒแƒ’แƒแƒ แƒช แƒจแƒ”แƒ›แƒแƒ›แƒแƒ•แƒแƒšแƒ˜, แƒแƒกแƒ”แƒ•แƒ” แƒ’แƒแƒ›แƒแƒ•แƒแƒšแƒ˜ (แƒ แƒแƒ“แƒ’แƒแƒœ Calico แƒฉแƒ•แƒ”แƒฃแƒšแƒ”แƒ‘แƒ แƒ˜แƒ• แƒ˜แƒงแƒ”แƒœแƒ”แƒ‘แƒก แƒ™แƒแƒœแƒขแƒ แƒแƒฅแƒขแƒก แƒกแƒแƒžแƒแƒกแƒฃแƒฎแƒ แƒขแƒ แƒแƒคแƒ˜แƒ™แƒ˜แƒก แƒ“แƒแƒกแƒแƒจแƒ•แƒ”แƒ‘แƒแƒ“ แƒแƒฆแƒกแƒแƒœแƒ˜แƒจแƒœแƒแƒ•แƒแƒ“).
  • แƒฃแƒ™แƒแƒœแƒขแƒ แƒแƒšแƒ แƒžแƒแƒšแƒ˜แƒขแƒ˜แƒ™แƒ แƒแƒ  แƒ›แƒฃแƒจแƒแƒแƒ‘แƒก Kubernetes-แƒ˜แƒก แƒ“แƒแƒขแƒ•แƒ˜แƒ แƒ—แƒ•แƒ”แƒ‘แƒ–แƒ” (pods), แƒ แƒแƒ“แƒ’แƒแƒœ แƒแƒ› แƒจแƒ”แƒ›แƒ—แƒฎแƒ•แƒ”แƒ•แƒแƒจแƒ˜ แƒแƒ  แƒแƒ แƒกแƒ”แƒ‘แƒแƒ‘แƒก แƒ’แƒ–แƒ แƒžแƒแƒ“แƒ˜แƒ“แƒแƒœ แƒ’แƒแƒ›แƒแƒ•แƒแƒšแƒ˜ แƒ™แƒแƒ•แƒจแƒ˜แƒ แƒ˜แƒก แƒ—แƒ•แƒแƒšแƒงแƒฃแƒ แƒ˜แƒก แƒ“แƒ”แƒ•แƒœแƒ”แƒ‘แƒ.
  • NAT แƒแƒ  แƒ›แƒฃแƒจแƒแƒแƒ‘แƒก แƒ’แƒแƒ›แƒแƒ แƒ—แƒฃแƒšแƒแƒ“ แƒฃแƒ™แƒแƒœแƒขแƒ แƒแƒšแƒ แƒžแƒแƒ™แƒ”แƒขแƒ”แƒ‘แƒ—แƒแƒœ (แƒ แƒแƒ“แƒ’แƒแƒœ แƒ‘แƒ˜แƒ แƒ—แƒ•แƒ˜ แƒ˜แƒœแƒแƒฎแƒแƒ•แƒก NAT แƒ แƒฃแƒ™แƒ”แƒ‘แƒก conntrack-แƒจแƒ˜).
  • แƒฃแƒ™แƒแƒœแƒขแƒ แƒแƒšแƒ แƒžแƒแƒšแƒ˜แƒขแƒ˜แƒ™แƒแƒจแƒ˜ โ€žแƒงแƒ•แƒ”แƒšแƒแƒก แƒ“แƒแƒจแƒ•แƒ”แƒ‘แƒ˜แƒกโ€œ แƒฌแƒ”แƒกแƒ˜แƒก แƒ’แƒแƒ•แƒšแƒ˜แƒกแƒแƒก, แƒงแƒ•แƒ”แƒšแƒ แƒžแƒแƒ™แƒ”แƒขแƒ˜ แƒ›แƒแƒœแƒ˜แƒจแƒœแƒฃแƒšแƒ˜ แƒ˜แƒฅแƒœแƒ”แƒ‘แƒ, แƒ แƒแƒ’แƒแƒ แƒช แƒ›แƒ˜แƒฃแƒฌแƒ•แƒ“แƒแƒ›แƒ”แƒšแƒ˜. แƒ”แƒก แƒ—แƒ˜แƒ—แƒฅแƒ›แƒ˜แƒก แƒงแƒแƒ•แƒ”แƒšแƒ—แƒ•แƒ˜แƒก แƒแƒ  แƒแƒ แƒ˜แƒก แƒ˜แƒก, แƒ แƒแƒช แƒ—แƒฅแƒ•แƒ”แƒœ แƒ’แƒ˜แƒœแƒ“แƒแƒ—, แƒแƒ›แƒ˜แƒขแƒแƒ› แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ•แƒแƒœแƒ˜แƒ แƒ˜แƒงแƒแƒ— แƒซแƒแƒšแƒ˜แƒแƒœ แƒจแƒ”แƒ แƒฉแƒ”แƒ•แƒ˜แƒ—แƒ˜ แƒžแƒแƒ™แƒ”แƒขแƒ”แƒ‘แƒ˜แƒก แƒ›แƒ˜แƒ›แƒแƒ แƒ—, แƒ แƒแƒ›แƒšแƒ”แƒ‘แƒ˜แƒช แƒ“แƒแƒจแƒ•แƒ”แƒ‘แƒฃแƒšแƒ˜แƒ แƒฃแƒ™แƒแƒœแƒขแƒ แƒแƒšแƒ แƒžแƒแƒšแƒ˜แƒขแƒ˜แƒ™แƒ˜แƒ— (แƒ“แƒ แƒ›แƒ˜แƒ”แƒชแƒ˜แƒ— แƒกแƒแƒจแƒฃแƒแƒšแƒ”แƒ‘แƒ แƒขแƒ แƒแƒคแƒ˜แƒ™แƒ˜แƒก แƒฃแƒ›แƒ”แƒขแƒ”แƒกแƒแƒ‘แƒแƒก แƒ’แƒแƒ˜แƒแƒ แƒแƒก แƒœแƒแƒ แƒ›แƒแƒšแƒฃแƒ แƒ˜ แƒ—แƒ•แƒแƒšแƒ—แƒ•แƒแƒšแƒ˜แƒก แƒžแƒแƒšแƒ˜แƒขแƒ˜แƒ™แƒ).
  • แƒฃแƒ™แƒแƒœแƒขแƒ แƒแƒšแƒ แƒžแƒแƒšแƒ˜แƒขแƒ˜แƒ™แƒ แƒ’แƒแƒ›แƒแƒ˜แƒงแƒ”แƒœแƒ”แƒ‘แƒ แƒžแƒแƒ™แƒ”แƒขแƒ˜แƒก แƒ“แƒแƒ›แƒฃแƒจแƒแƒ•แƒ”แƒ‘แƒ˜แƒก แƒ›แƒ˜แƒšแƒกแƒแƒ“แƒ”แƒœแƒ˜แƒก แƒ“แƒแƒกแƒแƒฌแƒงแƒ˜แƒกแƒจแƒ˜แƒ•แƒ”. แƒแƒ›แƒ˜แƒก แƒ’แƒแƒ’แƒ”แƒ‘แƒ แƒซแƒแƒšแƒ˜แƒแƒœ แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ•แƒแƒœแƒ˜แƒ Calico-แƒก แƒžแƒแƒšแƒ˜แƒขแƒ˜แƒ™แƒ˜แƒก แƒจแƒ”แƒฅแƒ›แƒœแƒ˜แƒกแƒแƒก. แƒ—แƒฅแƒ•แƒ”แƒœ แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒ’แƒฅแƒแƒœแƒ“แƒ”แƒ— แƒžแƒแƒ“ แƒžแƒแƒšแƒ˜แƒขแƒ˜แƒ™แƒ แƒจแƒ”แƒ™แƒ•แƒ”แƒ—แƒ˜แƒ—:1 แƒ“แƒ แƒ“แƒแƒฃแƒ“แƒ”แƒ•แƒ แƒ”แƒ‘แƒ”แƒšแƒ˜ แƒžแƒแƒšแƒ˜แƒขแƒ˜แƒ™แƒ แƒจแƒ”แƒ™แƒ•แƒ”แƒ—แƒ˜แƒ—:1000. แƒแƒ›แƒแƒก แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ‘แƒ แƒแƒ  แƒ”แƒฅแƒœแƒ”แƒ‘แƒ. Untracked แƒžแƒแƒšแƒ˜แƒขแƒ˜แƒ™แƒ แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒฃแƒšแƒ˜ แƒ˜แƒฅแƒœแƒ”แƒ‘แƒ แƒžแƒแƒ“แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก แƒžแƒแƒšแƒ˜แƒขแƒ˜แƒ™แƒแƒ›แƒ“แƒ”. แƒฃแƒ™แƒแƒœแƒขแƒ แƒแƒšแƒ แƒžแƒแƒšแƒ˜แƒขแƒ˜แƒ™แƒ แƒžแƒแƒขแƒ˜แƒ•แƒก แƒกแƒชแƒ”แƒ›แƒก แƒแƒฆแƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒ˜แƒก แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒแƒก แƒ›แƒฎแƒแƒšแƒแƒ“ แƒ”แƒ แƒ—แƒ›แƒแƒœแƒ”แƒ—แƒ—แƒแƒœ.

แƒ˜แƒ›แƒ˜แƒก แƒ’แƒแƒ›แƒ, แƒ แƒแƒ› doNotTrack แƒžแƒแƒšแƒ˜แƒขแƒ˜แƒ™แƒ˜แƒก แƒ”แƒ แƒ—-แƒ”แƒ แƒ—แƒ˜ แƒ›แƒ˜แƒ–แƒแƒœแƒ˜แƒ แƒžแƒแƒšแƒ˜แƒขแƒ˜แƒ™แƒ˜แƒก แƒแƒฆแƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒ Linux-แƒ˜แƒก แƒžแƒแƒ™แƒ”แƒขแƒ”แƒ‘แƒ˜แƒก แƒ“แƒแƒ›แƒฃแƒจแƒแƒ•แƒ”แƒ‘แƒ˜แƒก แƒ›แƒ˜แƒšแƒกแƒแƒ“แƒ”แƒœแƒ˜แƒก แƒซแƒแƒšแƒ˜แƒแƒœ แƒแƒ“แƒ แƒ”แƒฃแƒš แƒžแƒ”แƒ แƒ˜แƒแƒ“แƒจแƒ˜, Calico แƒกแƒแƒ•แƒแƒšแƒ“แƒ”แƒ‘แƒฃแƒšแƒ แƒ’แƒแƒฎแƒ“แƒ˜แƒก doNotTrack-แƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒกแƒแƒก applicationOnForward แƒแƒคแƒชแƒ˜แƒ˜แƒก แƒ›แƒ˜แƒ—แƒ˜แƒ—แƒ”แƒ‘แƒแƒก. แƒžแƒแƒ™แƒ”แƒขแƒ”แƒ‘แƒ˜แƒก แƒ“แƒแƒ›แƒฃแƒจแƒแƒ•แƒ”แƒ‘แƒ˜แƒก แƒ“แƒ˜แƒแƒ’แƒ แƒแƒ›แƒแƒ–แƒ” แƒ›แƒ˜แƒ—แƒ˜แƒ—แƒ”แƒ‘แƒ˜แƒ—, แƒ’แƒแƒ˜แƒ—แƒ•แƒแƒšแƒ˜แƒกแƒฌแƒ˜แƒœแƒ”แƒ—, แƒ แƒแƒ› แƒฃแƒ™แƒแƒœแƒขแƒ แƒแƒšแƒ(5) แƒžแƒแƒšแƒ˜แƒขแƒ˜แƒ™แƒ แƒ’แƒแƒ›แƒแƒ˜แƒงแƒ”แƒœแƒ”แƒ‘แƒ แƒ›แƒแƒ แƒจแƒ แƒฃแƒขแƒ˜แƒ–แƒแƒชแƒ˜แƒ˜แƒก แƒœแƒ”แƒ‘แƒ˜แƒกแƒ›แƒ˜แƒ”แƒ  แƒ’แƒแƒ“แƒแƒฌแƒงแƒ•แƒ”แƒขแƒ˜แƒšแƒ”แƒ‘แƒแƒ›แƒ“แƒ”. แƒขแƒ แƒแƒคแƒ˜แƒ™แƒ˜ แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒ˜แƒงแƒแƒก แƒ›แƒ˜แƒ›แƒแƒ แƒ—แƒฃแƒšแƒ˜ แƒ›แƒแƒกแƒžแƒ˜แƒœแƒซแƒ”แƒš แƒžแƒ แƒแƒชแƒ”แƒกแƒ–แƒ”, แƒแƒœ แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒ’แƒแƒ“แƒแƒ›แƒ˜แƒกแƒแƒ›แƒแƒ แƒ—แƒ“แƒ”แƒก แƒžแƒแƒ“แƒจแƒ˜ แƒแƒœ แƒกแƒฎแƒ•แƒ แƒ™แƒ•แƒแƒœแƒซแƒจแƒ˜.

แƒจแƒ”แƒ“แƒ”แƒ’แƒ”แƒ‘แƒ˜

แƒฉแƒ•แƒ”แƒœ แƒ’แƒแƒ“แƒแƒ•แƒฎแƒ”แƒ“แƒ”แƒ— แƒžแƒแƒšแƒ˜แƒขแƒ˜แƒ™แƒ˜แƒก แƒกแƒฎแƒ•แƒแƒ“แƒแƒกแƒฎแƒ•แƒ แƒ•แƒแƒ แƒ˜แƒแƒœแƒขแƒก (Host endpoint, ApplyOnForward, preDNAT แƒ“แƒ Untracked) Calico-แƒจแƒ˜ แƒ“แƒ แƒ แƒแƒ’แƒแƒ  แƒ’แƒแƒ›แƒแƒ˜แƒงแƒ”แƒœแƒ”แƒ‘แƒ แƒ˜แƒกแƒ˜แƒœแƒ˜ แƒžแƒแƒ™แƒ”แƒขแƒ˜แƒก แƒ“แƒแƒ›แƒฃแƒจแƒแƒ•แƒ”แƒ‘แƒ˜แƒก แƒ’แƒ–แƒแƒ–แƒ”. แƒ˜แƒ›แƒ˜แƒก แƒ’แƒแƒ’แƒ”แƒ‘แƒ, แƒ—แƒฃ แƒ แƒแƒ’แƒแƒ  แƒ›แƒฃแƒจแƒแƒแƒ‘แƒ”แƒœ แƒ˜แƒกแƒ˜แƒœแƒ˜, แƒ’แƒ•แƒ”แƒฎแƒ›แƒแƒ แƒ”แƒ‘แƒ แƒ”แƒคแƒ”แƒฅแƒขแƒฃแƒ แƒ˜ แƒ“แƒ แƒฃแƒกแƒแƒคแƒ แƒ—แƒฎแƒ แƒžแƒแƒšแƒ˜แƒขแƒ˜แƒ™แƒ˜แƒก แƒจแƒ”แƒ›แƒฃแƒจแƒแƒ•แƒ”แƒ‘แƒแƒจแƒ˜. Calico-แƒก แƒกแƒแƒจแƒฃแƒแƒšแƒ”แƒ‘แƒ˜แƒ— แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒ’แƒแƒ›แƒแƒ˜แƒงแƒ”แƒœแƒแƒ— แƒ’แƒšแƒแƒ‘แƒแƒšแƒฃแƒ แƒ˜ แƒฅแƒกแƒ”แƒšแƒ˜แƒก แƒžแƒแƒšแƒ˜แƒขแƒ˜แƒ™แƒ, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒ”แƒฎแƒ”แƒ‘แƒ แƒšแƒ”แƒ˜แƒ‘แƒšแƒก (แƒ™แƒ•แƒแƒœแƒซแƒ”แƒ‘แƒ˜แƒกแƒ แƒ“แƒ แƒ™แƒ•แƒแƒœแƒซแƒ”แƒ‘แƒ˜แƒก แƒฏแƒ’แƒฃแƒคแƒก) แƒ“แƒ แƒ’แƒแƒ›แƒแƒ˜แƒงแƒ”แƒœแƒแƒ— แƒžแƒแƒšแƒ˜แƒขแƒ˜แƒ™แƒ”แƒ‘แƒ˜ แƒกแƒฎแƒ•แƒแƒ“แƒแƒกแƒฎแƒ•แƒ แƒžแƒแƒ แƒแƒ›แƒ”แƒขแƒ แƒ˜แƒ—. แƒ”แƒก แƒกแƒแƒจแƒฃแƒแƒšแƒ”แƒ‘แƒแƒก แƒแƒซแƒšแƒ”แƒ•แƒก แƒฃแƒกแƒแƒคแƒ แƒ—แƒฎแƒแƒ”แƒ‘แƒ˜แƒกแƒ แƒ“แƒ แƒฅแƒกแƒ”แƒšแƒ˜แƒก แƒ“แƒ˜แƒ–แƒแƒ˜แƒœแƒ˜แƒก แƒžแƒ แƒแƒคแƒ”แƒกแƒ˜แƒแƒœแƒแƒšแƒ”แƒ‘แƒก, แƒ›แƒแƒฎแƒ”แƒ แƒฎแƒ”แƒ‘แƒฃแƒšแƒแƒ“ แƒ“แƒแƒ˜แƒชแƒ•แƒแƒœ โ€žแƒงแƒ•แƒ”แƒšแƒแƒคแƒ”แƒ แƒ˜โ€œ (แƒ‘แƒแƒšแƒ แƒฌแƒ”แƒ แƒขแƒ˜แƒšแƒ”แƒ‘แƒ˜แƒก แƒขแƒ˜แƒžแƒ”แƒ‘แƒ˜) แƒ”แƒ แƒ—แƒ“แƒ แƒแƒฃแƒšแƒแƒ“ Calico-แƒก แƒžแƒแƒšแƒ˜แƒขแƒ˜แƒ™แƒ˜แƒก แƒ”แƒ แƒ—แƒ˜ แƒžแƒแƒšแƒ˜แƒขแƒ˜แƒ™แƒ˜แƒก แƒ”แƒœแƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒ—.

แƒแƒฆแƒ˜แƒแƒ แƒ”แƒ‘แƒ: แƒ›แƒ˜แƒœแƒ“แƒ แƒ›แƒแƒ“แƒšแƒแƒ‘แƒ แƒ’แƒแƒ“แƒแƒ•แƒฃแƒฎแƒแƒ“แƒ แƒจแƒแƒœ แƒ™แƒ แƒ”แƒ›แƒžแƒขแƒแƒœแƒ˜ ะธ แƒแƒšแƒ”แƒฅแƒกแƒ แƒžแƒแƒšแƒ˜แƒขแƒ แƒ›แƒแƒ—แƒ˜ แƒ’แƒแƒœแƒฎแƒ˜แƒšแƒ•แƒ˜แƒกแƒ แƒ“แƒ แƒฆแƒ˜แƒ แƒ”แƒ‘แƒฃแƒšแƒ˜ แƒ˜แƒœแƒคแƒแƒ แƒ›แƒแƒชแƒ˜แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก.

แƒฌแƒงแƒแƒ แƒ: www.habr.com

แƒแƒฎแƒแƒšแƒ˜ แƒ™แƒแƒ›แƒ”แƒœแƒขแƒแƒ แƒ˜แƒก แƒ“แƒแƒ›แƒแƒขแƒ”แƒ‘แƒ