
āĻā§āϝāĻžāϞāĻŋāĻā§ āύā§āĻāĻāϝāĻŧāĻžāϰā§āĻ āĻĒā§āϞāĻžāĻāĻāύ āĻšāĻžāϰā§āĻĄāĻāϝāĻŧā§āϝāĻžāϰ āĻšā§āϏā§āĻ, āĻāĻžāϰā§āĻā§āϝāĻŧāĻžāϞ āĻŽā§āĻļāĻŋāύ āĻāĻŦāĻ āĻĒāĻĄāĻā§āϞāĻŋāĻā§ āϰāĻā§āώāĻž āĻāϰāĻžāϰ āĻāύā§āϝ āĻāĻāĻāĻŋ āĻāĻāύāĻŋāĻĢāĻžāĻāĻĄ āϏāĻŋāύāĻā§āϝāĻžāĻā§āϏ āϏāĻš āύā§āĻāĻāϝāĻŧāĻžāϰā§āĻ āύā§āϤāĻŋāĻā§āϞāĻŋāϰ āĻāĻāĻāĻŋ āĻŦāĻŋāϏā§āϤā§āϤ āĻĒāϰāĻŋāϏāϰ āĻĒā§āϰāĻĻāĻžāύ āĻāϰā§āĨ¤ āĻāĻ āύā§āϤāĻŋāĻā§āϞāĻŋ āĻāĻāĻāĻŋ āύāĻžāĻŽāϏā§āĻĨāĻžāύā§āϰ āĻŽāϧā§āϝ⧠āĻĒā§āϰāϝāĻŧā§āĻ āĻāϰāĻž āϝā§āϤ⧠āĻĒāĻžāϰ⧠āĻŦāĻž āĻŦāĻŋāĻļā§āĻŦāĻŦā§āϝāĻžāĻĒā§ āύā§āĻāĻāϝāĻŧāĻžāϰā§āĻ āύā§āϤāĻŋ āĻšāϤ⧠āĻĒāĻžāϰ⧠āϝāĻž āĻĒā§āϰāϝā§āĻā§āϝ (āϏāϰāĻžāϏāϰāĻŋ āĻšā§āϏā§āĻā§ āĻāϞāĻŽāĻžāύ āĻ
ā§āϝāĻžāĻĒā§āϞāĻŋāĻā§āĻļāύāĻā§āϞāĻŋāĻā§ āϰāĻā§āώāĻž āĻāϰāϤ⧠- āĻšā§āϏā§āĻ āĻāĻāĻāĻŋ āϏāĻžāϰā§āĻāĻžāϰ āĻŦāĻž āĻāĻžāϰā§āĻā§āϝāĻŧāĻžāϞ āĻŽā§āĻļāĻŋāύ āĻšāϤ⧠āĻĒāĻžāϰā§) āĻ
āĻĨāĻŦāĻž (āĻĒāĻžāϤā§āϰ⧠āĻŦāĻž āĻšā§āϏā§āĻ āĻāϰāĻž āĻāĻžāϰā§āĻā§āϝāĻŧāĻžāϞ āĻŽā§āĻļāĻŋāύ⧠āĻāϞāĻŽāĻžāύ āĻ
ā§āϝāĻžāĻĒā§āϞāĻŋāĻā§āĻļāύāĻā§āϞāĻŋāĻā§ āϰāĻā§āώāĻž āĻāϰāϤā§)āĨ¤ āĻā§āϝāĻžāϞāĻŋāĻā§ āύā§āϤāĻŋāĻā§āϞāĻŋ āĻāĻĒāύāĻžāĻā§ preDNAT, unracked, āĻāĻŦāĻ applyOnForward āĻāϰ āĻŽāϤ āĻŦāĻŋāĻāϞā§āĻĒāĻā§āϞāĻŋ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻāϰ⧠āĻĒā§āϝāĻžāĻā§āĻā§āϰ āĻĒāĻĨā§āϰ āĻŦāĻŋāĻāĻŋāύā§āύ āĻĒāϝāĻŧā§āύā§āĻā§ āύāĻŋāϰāĻžāĻĒāϤā§āϤāĻž āĻŦā§āϝāĻŦāϏā§āĻĨāĻž āĻĒā§āϰāϝāĻŧā§āĻ āĻāϰāĻžāϰ āĻ
āύā§āĻŽāϤāĻŋ āĻĻā§āϝāĻŧāĨ¤ āĻāĻ āĻŦāĻŋāĻāϞā§āĻĒāĻā§āϞāĻŋ āĻā§āĻāĻžāĻŦā§ āĻāĻžāĻ āĻāϰ⧠āϤāĻž āĻŦā§āĻāĻž āĻāĻĒāύāĻžāϰ āϏāĻžāĻŽāĻā§āϰāĻŋāĻ āϏāĻŋāϏā§āĻā§āĻŽā§āϰ āύāĻŋāϰāĻžāĻĒāϤā§āϤāĻž āĻāĻŦāĻ āĻāϰā§āĻŽāĻā§āώāĻŽāϤāĻž āĻāύā§āύāϤ āĻāϰāϤ⧠āϏāĻžāĻšāĻžāϝā§āϝ āĻāϰāϤ⧠āĻĒāĻžāϰā§āĨ¤ āĻāĻ āύāĻŋāĻŦāύā§āϧāĻāĻŋ āĻĒā§āϝāĻžāĻā§āĻ āĻĒā§āϰāϏā§āϏāĻŋāĻ āĻĒāĻžāĻĨāĻā§āϞāĻŋāϤ⧠(iptabels āĻā§āĻāύ) āĻā§ āĻāĻāĻŦā§ āϤāĻžāϰ āĻāĻĒāϰ āĻā§āϰ āĻĻāĻŋāϝāĻŧā§ āĻšā§āϏā§āĻ āĻāύā§āĻĄāĻĒāϝāĻŧā§āύā§āĻāĻā§āϞāĻŋāϤ⧠āĻĒā§āϰāϝāĻŧā§āĻ āĻāϰāĻž āĻāĻ āĻā§āϝāĻžāϞāĻŋāĻā§ āύā§āϤāĻŋ āĻŦāĻŋāĻāϞā§āĻĒāĻā§āϞāĻŋāϰ (preDNAT, unraracked āĻāĻŦāĻ applyOnForward) āϏāĻžāϰāĻžāĻāĻļ āĻŦā§āϝāĻžāĻā§āϝāĻž āĻāϰā§āĨ¤
āĻāĻ āύāĻŋāĻŦāύā§āϧāĻāĻŋ āĻ
āύā§āĻŽāĻžāύ āĻāϰ⧠āϝ⧠Kubernetes āĻāĻŦāĻ Calico āύā§āĻāĻāϝāĻŧāĻžāϰā§āĻ āύā§āϤāĻŋāĻā§āϞāĻŋ āĻā§āĻāĻžāĻŦā§ āĻāĻžāĻ āĻāϰ⧠āϏ⧠āϏāĻŽā§āĻĒāϰā§āĻā§ āĻāĻĒāύāĻžāϰ āĻāĻāĻāĻŋ āĻĒā§āϰāĻžāĻĨāĻŽāĻŋāĻ āϧāĻžāϰāĻŖāĻž āϰāϝāĻŧā§āĻā§ā§ˇ āϝāĻĻāĻŋ āύāĻž āĻšāϝāĻŧ, āĻāĻŽāϰāĻž āĻāĻāĻŋ āĻā§āώā§āĻāĻž āĻāϰāĻžāϰ āĻĒāϰāĻžāĻŽāϰā§āĻļ āĻĻāĻŋāĻ Đ¸ āĻāĻ āύāĻŋāĻŦāύā§āϧāĻāĻŋ āĻĒāĻĄāĻŧāĻžāϰ āĻāĻā§ āĻā§āϝāĻžāϞāĻŋāĻā§ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻāϰā§āύāĨ¤ āĻāĻāĻžāĻĄāĻŧāĻžāĻ āĻāĻŽāϰāĻž āĻāĻļāĻž āĻāϰāĻŋ āĻāĻĒāύāĻŋ āĻāĻžāĻ āϏāĻŽā§āĻĒāϰā§āĻā§ āĻāĻāĻāĻŋ āĻĒā§āϰāĻžāĻĨāĻŽāĻŋāĻ āϧāĻžāϰāĻŖāĻž āĻĒāĻžāĻŦā§āύ в Linux.
āĻŦāϏā§āϤā§āϰāĻŦāĻŋāĻļā§āώ āĻāĻĒāύāĻžāĻā§ āϞā§āĻŦā§āϞ āĻĻā§āĻŦāĻžāϰāĻž āĻ ā§āϝāĻžāĻā§āϏā§āϏā§āϰ āύāĻŋāϝāĻŧāĻŽāĻā§āϞāĻŋāϰ āĻāĻāĻāĻŋ āϏā§āĻ āĻĒā§āϰāϝāĻŧā§āĻ āĻāϰāϤ⧠āĻĻā§āϝāĻŧ (āĻšā§āϏā§āĻ āĻāĻŦāĻ āĻāϝāĻŧāĻžāϰā§āĻāϞā§āĻĄ/āĻĒāĻĄā§āϰ āĻā§āϰā§āĻĒāĻā§āϞāĻŋāϤā§)āĨ¤ āĻāĻāĻŋ āĻā§āĻŦāĻ āĻāĻĒāϝā§āĻā§ āϝāĻĻāĻŋ āĻāĻĒāύāĻŋ āĻāĻŋāύā§āύ āĻāĻŋāύā§āύ āϏāĻŋāϏā§āĻā§āĻŽāĻā§āϞāĻŋ āĻāĻāϏāĻžāĻĨā§ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻāϰā§āύ - āĻāĻžāϰā§āĻā§āϝāĻŧāĻžāϞ āĻŽā§āĻļāĻŋāύ, āϏāϰāĻžāϏāϰāĻŋ āĻšāĻžāϰā§āĻĄāĻāϝāĻŧā§āϝāĻžāϰā§āϰ āĻāĻāĻāĻŋ āϏāĻŋāϏā§āĻā§āĻŽ, āĻŦāĻž āĻāĻāĻāĻŋ āĻā§āĻŦāĻžāϰāύā§āĻāϏ āĻ āĻŦāĻāĻžāĻ āĻžāĻŽā§āĨ¤ āĻāĻĒāϰāύā§āϤā§, āĻāĻĒāύāĻŋ āĻā§āώāĻŖāĻžāĻŽā§āϞāĻ āύā§āϤāĻŋāϰ āĻāĻāĻāĻŋ āϏā§āĻ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻāϰ⧠āĻāĻĒāύāĻžāϰ āĻā§āϞāĻžāϏā§āĻāĻžāϰ (āύā§āĻĄ) āϰāĻā§āώāĻž āĻāϰāϤ⧠āĻĒāĻžāϰā§āύ āĻāĻŦāĻ āĻāĻāϤ āĻā§āϰā§āϝāĻžāĻĢāĻŋāĻā§āϰ āĻāύā§āϝ āύā§āĻāĻāϝāĻŧāĻžāϰā§āĻ āύā§āϤāĻŋ āĻĒā§āϰāϝāĻŧā§āĻ āĻāϰāϤ⧠āĻĒāĻžāϰā§āύ (āĻāĻĻāĻžāĻšāϰāĻŖāϏā§āĻŦāϰā§āĻĒ, āύā§āĻĄāĻĒā§āϰā§āĻāϏ āĻŦāĻž āĻāĻā§āϏāĻāĻžāϰā§āύāĻžāϞ āĻāĻāĻĒāĻŋ āĻĒāϰāĻŋāώā§āĻŦāĻžāϰ āĻŽāĻžāϧā§āϝāĻŽā§)āĨ¤
āĻāĻāĻāĻŋ āĻŽā§āϞāĻŋāĻ āϏā§āϤāϰā§, āϝāĻāύ āĻā§āϝāĻžāϞāĻŋāĻā§ āĻāĻāĻāĻŋ āĻĒāĻĄāĻā§ āύā§āĻāĻāϝāĻŧāĻžāϰā§āĻā§āϰ āϏāĻžāĻĨā§ āϏāĻāϝā§āĻā§āϤ āĻāϰ⧠(āύā§āĻā§āϰ āĻāĻŋāϤā§āϰ āĻĻā§āĻā§āύ), āĻāĻāĻŋ āĻāĻāĻāĻŋ āĻāĻžāϰā§āĻā§āϝāĻŧāĻžāϞ āĻāĻĨāĻžāϰāύā§āĻ āĻāύā§āĻāĻžāϰāĻĢā§āϏ (āĻā§āĻĨ) āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻāϰ⧠āĻšā§āϏā§āĻā§āϰ āϏāĻžāĻĨā§ āϏāĻāϝā§āĻā§āϤ āĻāϰā§āĨ¤ āĻĒāĻĄ āĻĻā§āĻŦāĻžāϰāĻž āĻĒā§āϰā§āϰāĻŋāϤ āĻā§āϰā§āϝāĻžāĻĢāĻŋāĻ āĻāĻ āĻāĻžāϰā§āĻā§āϝāĻŧāĻžāϞ āĻāύā§āĻāĻžāϰāĻĢā§āϏ āĻĨā§āĻā§ āĻšā§āϏā§āĻā§ āĻāϏ⧠āĻāĻŦāĻ āĻāĻāĻāĻāĻžāĻŦā§ āĻĒā§āϰāĻā§āϰāĻŋāϝāĻŧāĻž āĻāϰāĻž āĻšāϝāĻŧ āϝā§āύ āĻāĻāĻŋ āĻāĻāĻāĻŋ āĻļāĻžāϰā§āϰāĻŋāĻ āύā§āĻāĻāϝāĻŧāĻžāϰā§āĻ āĻāύā§āĻāĻžāϰāĻĢā§āϏ āĻĨā§āĻā§ āĻāϏā§āĻā§āĨ¤ āĻĄāĻŋāĻĢāϞā§āĻāϰā§āĻĒā§, āĻā§āϝāĻžāϞāĻŋāĻā§ āĻāĻ āĻāύā§āĻāĻžāϰāĻĢā§āϏā§āϰ āύāĻžāĻŽ āĻĻā§āϝāĻŧ āĻā§āϝāĻžāϞāĻŋāĻāĻā§āϏāĻāĻā§āϏāĻāĻā§āϏāĨ¤ āϝā§āĻšā§āϤ⧠āĻā§āϰā§āϝāĻžāĻĢāĻŋāĻ āĻāĻžāϰā§āĻā§āϝāĻŧāĻžāϞ āĻāύā§āĻāĻžāϰāĻĢā§āϏā§āϰ āĻŽāĻžāϧā§āϝāĻŽā§ āĻāϏā§, āĻāĻāĻŋ iptables āĻāϰ āĻŽāϧā§āϝ āĻĻāĻŋāϝāĻŧā§ āϝāĻžāϝāĻŧ āϝā§āύ āĻĒāĻĄāĻāĻŋ āĻāĻ āĻšāĻĒ āĻĻā§āϰā§āĨ¤ āĻ āϤāĻāĻŦ, āϝāĻāύ āĻā§āϰā§āϝāĻžāĻĢāĻŋāĻ āĻāĻāĻāĻŋ āĻĒāĻĄ āĻĨā§āĻā§/āĻĨā§āĻā§ āĻāϏā§, āϤāĻāύ āĻāĻāĻŋ āĻšā§āϏā§āĻā§āϰ āĻĻā§āώā§āĻāĻŋāĻā§āĻŖ āĻĨā§āĻā§ āĻĢāϰā§āϝāĻŧāĻžāϰā§āĻĄ āĻāϰāĻž āĻšāϝāĻŧāĨ¤
āĻā§āϝāĻžāϞāĻŋāĻā§ āĻāĻžāϞāĻŋāϤ āĻāĻāĻāĻŋ āĻā§āĻŦāĻžāϰāύā§āĻāϏ āύā§āĻĄā§, āĻāĻĒāύāĻŋ āĻāĻāĻāĻŋ āĻāĻžāϰā§āĻā§āϝāĻŧāĻžāϞ āĻāύā§āĻāĻžāϰāĻĢā§āϏ (āĻā§āĻĨ) āĻāĻāĻāĻŋ āĻāĻžāĻā§āϰ āĻāĻžāĻĒā§ āύāĻŋāĻŽā§āύāϰā§āĻĒ āĻŽā§āϝāĻžāĻĒ āĻāϰāϤ⧠āĻĒāĻžāϰā§āύāĨ¤ āύā§āĻā§āϰ āĻāĻĻāĻžāĻšāϰāĻŖā§, āĻāĻĒāύāĻŋ āĻĻā§āĻāϤ⧠āĻĒāĻžāĻā§āĻā§āύ āϝ⧠veth#10 (calic1cbf1ca0f8) āĻā§āϝāĻžāϞāĻŋāĻā§-āĻŽāύāĻŋāĻāϰāĻŋāĻ āύā§āĻŽāϏā§āĻĒā§āϏ⧠cnx-manager-* āĻāϰ āϏāĻžāĻĨā§ āϏāĻāϝā§āĻā§āϤāĨ¤
[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
... 
āĻĒā§āϰāĻĻāϤā§āϤ āϝ⧠āĻā§āϝāĻžāϞāĻŋāĻā§ āĻĒā§āϰāϤāĻŋāĻāĻŋ āĻāĻžāĻā§āϰ āĻāĻžāĻĒā§āϰ āĻāύā§āϝ āĻāĻāĻāĻŋ āĻā§āĻĨ āĻāύā§āĻāĻžāϰāĻĢā§āϏ āϤā§āϰāĻŋ āĻāϰā§, āĻāĻāĻŋ āĻā§āĻāĻžāĻŦā§ āύā§āϤāĻŋāĻā§āϞāĻŋ āĻĒā§āϰāϝāĻŧā§āĻ āĻāϰā§? āĻāĻāĻŋ āĻāϰāĻžāϰ āĻāύā§āϝ, āĻā§āϝāĻžāϞāĻŋāĻā§ iptables āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻāϰ⧠āĻĒā§āϝāĻžāĻā§āĻ āĻĒā§āϰāĻā§āϰāĻŋāϝāĻŧāĻžāĻāϰāĻŖ āĻĒāĻĨā§āϰ āĻŦāĻŋāĻāĻŋāύā§āύ āĻā§āĻāύ⧠āĻšā§āĻ āϤā§āϰāĻŋ āĻāϰā§āĨ¤
āύā§āĻā§āϰ āĻāĻŋāϤā§āϰāĻāĻŋ iptables (āĻŦāĻž āύā§āĻāĻĢāĻŋāϞā§āĻāĻžāϰ āϏāĻžāĻŦāϏāĻŋāϏā§āĻā§āĻŽ) āĻ āĻĒā§āϝāĻžāĻā§āĻ āĻĒā§āϰāĻā§āϰāĻŋāϝāĻŧāĻžāĻāϰāĻŖā§āϰ āϏāĻžāĻĨā§ āĻāĻĄāĻŧāĻŋāϤ āĻā§āĻāύāĻā§āϞāĻŋ āĻĻā§āĻāĻžāϝāĻŧāĨ¤ āϝāĻāύ āĻāĻāĻāĻŋ āĻĒā§āϝāĻžāĻā§āĻ āĻāĻāĻāĻŋ āύā§āĻāĻāϝāĻŧāĻžāϰā§āĻ āĻāύā§āĻāĻžāϰāĻĢā§āϏā§āϰ āĻŽāĻžāϧā§āϝāĻŽā§ āĻāϏā§, āĻāĻāĻŋ āĻĒā§āϰāĻĨāĻŽā§ PREROUTING āĻā§āĻāύā§āϰ āĻŽāϧā§āϝ āĻĻāĻŋāϝāĻŧā§ āϝāĻžāϝāĻŧāĨ¤ āϤāĻžāϰāĻĒāϰ⧠āĻāĻāĻāĻŋ āϰāĻžāĻāĻāĻŋāĻ āϏāĻŋāĻĻā§āϧāĻžāύā§āϤ āύā§āĻāϝāĻŧāĻž āĻšāϝāĻŧ, āĻāĻŦāĻ āĻāϰ āĻāĻĒāϰ āĻāĻŋāϤā§āϤāĻŋ āĻāϰā§, āĻĒā§āϝāĻžāĻā§āĻāĻāĻŋ āĻšāϝāĻŧ INPUT (āĻĒā§āϰāϏā§āϏ āĻšā§āϏā§āĻ āĻāϰāĻžāϰ āĻāύā§āϝ āύāĻŋāϰā§āĻĻā§āĻļāĻŋāϤ) āĻŦāĻž āĻĢāϰāĻāϝāĻŧāĻžāϰā§āĻĄ (āύā§āĻāĻāϝāĻŧāĻžāϰā§āĻā§āϰ āĻāĻāĻāĻŋ āĻĒāĻĄ āĻŦāĻž āĻ āύā§āϝ āύā§āĻĄā§ āύāĻŋāϰā§āĻĻā§āĻļāĻŋāϤ) āĻāϰ āĻŽāϧā§āϝ āĻĻāĻŋāϝāĻŧā§ āϝāĻžāϝāĻŧāĨ¤ āϏā§āĻĨāĻžāύā§āϝāĻŧ āĻĒā§āϰāĻā§āϰāĻŋāϝāĻŧāĻž āĻĨā§āĻā§, āĻĒā§āϝāĻžāĻā§āĻāĻāĻŋ āϤāĻžāϰā§āϰ āĻĒāĻžāĻ āĻžāύā§āϰ āĻāĻā§ OUTPUT āĻāĻŦāĻ āϤāĻžāϰāĻĒāϰ POSTROUTING āĻā§āĻāύā§āϰ āĻŽāϧā§āϝ āĻĻāĻŋāϝāĻŧā§ āϝāĻžāϝāĻŧāĨ¤
āĻāϞā§āϞā§āĻā§āϝ āϝ⧠iptables āĻĒā§āϰāĻā§āϰāĻŋāϝāĻŧāĻžāĻāϰāĻŖā§āϰ āĻā§āώā§āϤā§āϰ⧠āĻĒāĻĄ āĻāĻāĻāĻŋ āĻŦāĻžāĻšā§āϝāĻŋāĻ āϏāϤā§āϤāĻž (veth āĻāϰ āϏāĻžāĻĨā§ āϏāĻāϝā§āĻā§āϤ)āĨ¤ āĻāϏā§āύ āϏāĻāĻā§āώāĻŋāĻĒā§āϤ āĻāϰāĻž āϝāĻžāĻ:
- āĻĢāϰā§āϝāĻŧāĻžāϰā§āĻĄ āĻāϰāĻž āĻā§āϰāĻžāĻĢāĻŋāĻ (āύā§āϝāĻžāĻ, āϰā§āĻā§āĻĄ āĻŦāĻž āĻĒāĻĄ āĻĨā§āĻā§) āĻĒā§āϰāĻŋāϰāĻžāĻāĻāĻŋāĻ - āĻĢāϰāĻāϝāĻŧāĻžāϰā§āĻĄ - āĻĒā§āϏā§āĻāϰā§āĻāĻŋāĻ āĻā§āĻāύā§āϰ āĻŽāϧā§āϝ āĻĻāĻŋāϝāĻŧā§ āϝāĻžāϝāĻŧāĨ¤
- āϏā§āĻĨāĻžāύā§āϝāĻŧ āĻšā§āϏā§āĻ āĻĒā§āϰāĻā§āϰāĻŋāϝāĻŧāĻžāϰ āĻā§āϰā§āϝāĻžāĻĢāĻŋāĻ PREROUTING - INPUT āĻā§āĻāύā§āϰ āĻŽāϧā§āϝ āĻĻāĻŋāϝāĻŧā§ āϝāĻžāϝāĻŧāĨ¤
- āϏā§āĻĨāĻžāύā§āϝāĻŧ āĻšā§āϏā§āĻ āĻĒā§āϰāĻā§āϰāĻŋāϝāĻŧāĻž āĻĨā§āĻā§ āĻā§āϰāĻžāĻĢāĻŋāĻ OUTPUT - POSTROUTING āĻā§āĻāύā§āϰ āĻŽāϧā§āϝ āĻĻāĻŋāϝāĻŧā§ āϝāĻžāϝāĻŧāĨ¤

āĻā§āϝāĻžāϞāĻŋāĻā§ āύā§āϤāĻŋāϰ āĻŦāĻŋāĻāϞā§āĻĒāĻā§āϞāĻŋ āĻĒā§āϰāĻĻāĻžāύ āĻāϰ⧠āϝāĻž āĻāĻĒāύāĻžāĻā§ āϏāĻŽāϏā§āϤ āĻā§āĻāύ⧠āύā§āϤāĻŋ āĻĒā§āϰāϝāĻŧā§āĻ āĻāϰāϤ⧠āĻĻā§āϝāĻŧāĨ¤ āĻāĻāĻŋ āĻŽāĻžāĻĨāĻžāϝāĻŧ āϰā§āĻā§, āĻāϏā§āύ āĻā§āϝāĻžāϞāĻŋāĻā§āϤ⧠āĻāĻĒāϞāĻŦā§āϧ āĻŦāĻŋāĻāĻŋāύā§āύ āύā§āϤāĻŋ āĻāύāĻĢāĻŋāĻāĻžāϰā§āĻļāύ āĻŦāĻŋāĻāϞā§āĻĒāĻā§āϞāĻŋ āĻĻā§āĻāĻŋāĨ¤ āύā§āĻā§āϰ āĻŦāĻŋāĻāϞā§āĻĒāĻā§āϞāĻŋāϰ āϤāĻžāϞāĻŋāĻāĻžāϰ āϏāĻāĻā§āϝāĻžāĻā§āϞāĻŋ āĻāĻĒāϰā§āϰ āĻāĻŋāϤā§āϰā§āϰ āϏāĻāĻā§āϝāĻžāĻā§āϞāĻŋāϰ āϏāĻžāĻĨā§ āĻŽāĻŋāϞ⧠āϝāĻžāϝāĻŧ⧎
- āĻāϝāĻŧāĻžāϰā§āĻāϞā§āĻĄ āĻāύā§āĻĄāĻĒāϝāĻŧā§āύā§āĻ (āĻĒāĻĄ) āύā§āϤāĻŋ
- āĻšā§āϏā§āĻ āĻāύā§āĻĄāĻĒāϝāĻŧā§āύā§āĻ āύā§āϤāĻŋ
- ApplyOnForward āĻ āĻĒāĻļāύ
- PreDNAT āύā§āϤāĻŋ
- āĻāύāĻā§āϰā§āϝāĻžāĻāĻĄ āύā§āϤāĻŋ
āĻāĻžāĻā§āϰ āĻāĻžāĻĒā§āϰ āĻāύā§āĻĄāĻĒāϝāĻŧā§āύā§āĻā§ (āĻā§āĻŦāĻžāϰāύā§āĻāϏ āĻĒāĻĄ āĻŦāĻž āĻāĻĒā§āύāϏā§āĻā§āϝāĻžāĻ āĻāĻŋāĻāĻŽ) āύā§āϤāĻŋāĻā§āϞāĻŋ āĻā§āĻāĻžāĻŦā§ āĻĒā§āϰāϝāĻŧā§āĻ āĻāϰāĻž āĻšāϝāĻŧ āϤāĻž āĻĻā§āĻā§ āĻļā§āϰ⧠āĻāϰāĻž āϝāĻžāĻ āĻāĻŦāĻ āϤāĻžāϰāĻĒāϰ āĻšā§āϏā§āĻ āĻāύā§āĻĄāĻĒāϝāĻŧā§āύā§āĻāĻā§āϞāĻŋāϰ āĻāύā§āϝ āύā§āϤāĻŋāϰ āĻŦāĻŋāĻāϞā§āĻĒāĻā§āϞāĻŋ āĻĻā§āĻā§āύāĨ¤
āĻāĻžāĻā§āϰ āĻāĻžāĻĒā§āϰ āĻļā§āώ āĻĒāϝāĻŧā§āύā§āĻ
āĻāϝāĻŧāĻžāϰā§āĻāϞā§āĻĄ āĻāύā§āĻĄāĻĒāϝāĻŧā§āύā§āĻ āύā§āϤāĻŋ (1)
āĻāĻāĻŋ āĻāĻĒāύāĻžāϰ kubernetes āĻļā§āĻāĻāĻŋ āϰāĻā§āώāĻž āĻāϰāĻžāϰ āĻāĻāĻāĻŋ āĻŦāĻŋāĻāϞā§āĻĒāĨ¤ āĻā§āϝāĻžāϞāĻŋāĻā§ Kubernetes NetworkPolicy-āĻāϰ āϏāĻžāĻĨā§ āĻāĻžāĻ āĻāϰāϤ⧠āϏāĻŽāϰā§āĻĨāύ āĻāϰā§, āĻāĻŋāύā§āϤ⧠āĻāĻāĻŋ āĻ āϤāĻŋāϰāĻŋāĻā§āϤ āύā§āϤāĻŋāĻ āĻĒā§āϰāĻĻāĻžāύ āĻāϰ⧠- Calico NetworkPolicy āĻāĻŦāĻ GlobalNetworkPolicyāĨ¤ āĻā§āϝāĻžāϞāĻŋāĻā§ āĻĒā§āϰāϤāĻŋāĻāĻŋ āĻĒāĻĄā§āϰ (āĻāϝāĻŧāĻžāϰā§āĻāϞā§āĻĄ) āĻāύā§āϝ āĻāĻāĻāĻŋ āĻā§āĻāύ āϤā§āϰāĻŋ āĻāϰ⧠āĻāĻŦāĻ āĻĢāϰāĻāϝāĻŧāĻžāϰā§āĻĄ āĻā§āĻāύā§āϰ āĻĢāĻŋāϞā§āĻāĻžāϰ āĻā§āĻŦāĻŋāϞ⧠āĻāĻžāĻā§āϰ āĻāĻžāĻĒā§āϰ āĻāύā§āϝ āĻāύāĻĒā§āĻ āĻāĻŦāĻ āĻāĻāĻāĻĒā§āĻ āĻā§āĻāύ⧠āĻšā§āĻ āϤā§āϰāĻŋ āĻāϰā§āĨ¤
āĻšā§āϏā§āĻ āĻāύā§āĻĄāĻĒāϝāĻŧā§āύā§āĻ
āĻšā§āϏā§āĻ āĻāύā§āĻĄāĻĒāϝāĻŧā§āύā§āĻ āύā§āϤāĻŋ (2)
CNI (āĻāύā§āĻā§āĻāύāĻžāϰ āύā§āĻāĻāϝāĻŧāĻžāϰā§āĻ āĻāύā§āĻāĻžāϰāĻĢā§āϏ) āĻāĻžāĻĄāĻŧāĻžāĻ, āĻā§āϝāĻžāϞāĻŋāĻā§ āύā§āϤāĻŋāĻā§āϞāĻŋ āĻšā§āϏā§āĻāĻā§ āύāĻŋāĻā§āĻ āϰāĻā§āώāĻž āĻāϰāĻžāϰ āĻā§āώāĻŽāϤāĻž āĻĒā§āϰāĻĻāĻžāύ āĻāϰā§āĨ¤ āĻā§āϝāĻžāϞāĻŋāĻā§āϤā§, āĻāĻĒāύāĻŋ āĻšā§āϏā§āĻ āĻāύā§āĻāĻžāϰāĻĢā§āϏā§āϰ āϏāĻāĻŽāĻŋāĻļā§āϰāĻŖ āĻāĻŦāĻ āĻĒā§āϰāϝāĻŧā§āĻāύ⧠āĻĒā§āϰā§āĻ āύāĻŽā§āĻŦāϰ āĻāϞā§āϞā§āĻ āĻāϰ⧠āĻāĻāĻāĻŋ āĻšā§āϏā§āĻ āĻāύā§āĻĄāĻĒāϝāĻŧā§āύā§āĻ āϤā§āϰāĻŋ āĻāϰāϤ⧠āĻĒāĻžāϰā§āύāĨ¤ INPUT āĻāĻŦāĻ OUTPUT āĻā§āĻāύ⧠āĻāĻāĻāĻŋ āĻĢāĻŋāϞā§āĻāĻžāϰ āĻā§āĻŦāĻŋāϞ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻāϰ⧠āĻāĻ āϏāϤā§āϤāĻžāϰ āĻāύā§āϝ āύā§āϤāĻŋ āĻĒā§āϰāϝāĻŧā§āĻ āĻāϰāĻž āĻšāϝāĻŧāĨ¤ āĻāĻĒāύāĻŋ āĻĄāĻžāϝāĻŧāĻžāĻā§āϰāĻžāĻŽ āĻĨā§āĻā§ āĻĻā§āĻāϤ⧠āĻĒāĻžāĻā§āĻā§āύ, (2) āϤāĻžāϰāĻž āύā§āĻĄ/āĻšā§āϏā§āĻā§āϰ āϏā§āĻĨāĻžāύā§āϝāĻŧ āĻĒā§āϰāĻā§āϰāĻŋāϝāĻŧāĻžāĻā§āϞāĻŋāϤ⧠āĻĒā§āϰāϝāĻŧā§āĻ āĻāϰā§āĨ¤ āĻ āϰā§āĻĨāĻžā§, āĻāĻĒāύāĻŋ āϝāĻĻāĻŋ āĻšā§āϏā§āĻ āĻāύā§āĻĄāĻĒāϝāĻŧā§āύā§āĻā§ āĻĒā§āϰāϝā§āĻā§āϝ āĻāĻāĻāĻŋ āύā§āϤāĻŋ āϤā§āϰāĻŋ āĻāϰā§āύ, āϤāĻžāĻšāϞ⧠āĻāĻāĻŋ āĻāĻĒāύāĻžāϰ āĻĒāĻĄ āĻĨā§āĻā§/āĻĨā§āĻā§ āϝāĻžāĻāϝāĻŧāĻž āĻā§āϰāĻžāĻĢāĻŋāĻāĻā§ āĻĒā§āϰāĻāĻžāĻŦāĻŋāϤ āĻāϰāĻŦā§ āύāĻžāĨ¤ āĻāĻŋāύā§āϤ⧠āĻāĻāĻŋ āĻā§āϝāĻžāϞāĻŋāĻā§ āύā§āϤāĻŋāĻā§āϞāĻŋ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻāϰ⧠āĻāĻĒāύāĻžāϰ āĻšā§āϏā§āĻ āĻāĻŦāĻ āĻĒāĻĄāĻā§āϞāĻŋāϰ āĻāύā§āϝ āĻā§āϰā§āϝāĻžāĻĢāĻŋāĻ āĻŦā§āϞāĻ āĻāϰāĻžāϰ āĻāύā§āϝ āĻāĻāĻāĻŋ āĻāĻāĻ āĻāύā§āĻāĻžāϰāĻĢā§āϏ/āϏāĻŋāύāĻā§āϝāĻžāĻā§āϏ āĻĒā§āϰāĻĻāĻžāύ āĻāϰā§āĨ¤ āĻāĻāĻŋ āĻāĻāĻāĻŋ āĻāĻŋāύā§āύāϧāϰā§āĻŽā§ āύā§āĻāĻāϝāĻŧāĻžāϰā§āĻā§āϰ āĻāύā§āϝ āύā§āϤāĻŋ āĻĒāϰāĻŋāĻāĻžāϞāύāĻžāϰ āĻĒā§āϰāĻā§āϰāĻŋāϝāĻŧāĻžāĻāĻŋāĻā§ āĻŦā§āϝāĻžāĻĒāĻāĻāĻžāĻŦā§ āϏāϰāϞ āĻāϰā§āĨ¤ āĻā§āϞāĻžāϏā§āĻāĻžāϰ āύāĻŋāϰāĻžāĻĒāϤā§āϤāĻž āĻŦāĻžāĻĄāĻŧāĻžāύā§āϰ āĻāύā§āϝ āĻšā§āϏā§āĻ āĻāύā§āĻĄāĻĒāϝāĻŧā§āύā§āĻ āύā§āϤāĻŋāĻā§āϞāĻŋ āĻāύāĻĢāĻŋāĻāĻžāϰ āĻāϰāĻž āĻāϰā§āĻāĻāĻŋ āĻā§āϰā§āϤā§āĻŦāĻĒā§āϰā§āĻŖ āĻŦā§āϝāĻŦāĻšāĻžāϰā§āϰ āĻā§āώā§āϤā§āϰā§āĨ¤
āĻ āύāĻĢāϰāĻāϝāĻŧāĻžāϰā§āĻĄ āύā§āϤāĻŋ āĻĒā§āϰāϝāĻŧā§āĻ āĻāϰā§āύ (3)
āĻā§āϝāĻžāϞāĻŋāĻā§ āĻā§āϞā§āĻŦāĻžāϞ āύā§āĻāĻāϝāĻŧāĻžāϰā§āĻ āĻĒāϞāĻŋāϏāĻŋāϤ⧠ApplyOnForward āĻŦāĻŋāĻāϞā§āĻĒāĻāĻŋ āĻāĻĒāϞāĻā§āϝ āϰāϝāĻŧā§āĻā§ āϝāĻžāϤ⧠āĻšā§āϏā§āĻ āĻāύā§āĻĄāĻĒāϝāĻŧā§āύā§āĻā§āϰ āĻŽāϧā§āϝ āĻĻāĻŋāϝāĻŧā§ āϝāĻžāĻāϝāĻŧāĻž āϏāĻŽāϏā§āϤ āĻā§āϰā§āϝāĻžāĻĢāĻŋāĻā§āϰ āĻāĻĒāϰ āύā§āϤāĻŋ āĻĒā§āϰāϝāĻŧā§āĻ āĻāϰāĻžāϰ āĻ āύā§āĻŽāϤāĻŋ āĻĻā§āϝāĻŧ, āϝāĻžāϰ āĻŽāϧā§āϝ⧠āĻā§āϰāĻžāĻĢāĻŋāĻ āĻšā§āϏā§āĻ āĻĻā§āĻŦāĻžāϰāĻž āĻĢāϰāĻāϝāĻŧāĻžāϰā§āĻĄ āĻāϰāĻž āĻšāĻŦā§āĨ¤ āĻāϰ āĻŽāϧā§āϝ⧠āϰāϝāĻŧā§āĻā§ āϏā§āĻĨāĻžāύā§āϝāĻŧ āĻĒāĻĄ āĻŦāĻž āύā§āĻāĻāϝāĻŧāĻžāϰā§āĻā§āϰ āĻ āύā§āϝ āĻā§āĻĨāĻžāĻ āĻĢāϰāĻāϝāĻŧāĻžāϰā§āĻĄ āĻāϰāĻž āĻā§āϰāĻžāĻĢāĻŋāĻāĨ¤ āĻĒā§āϰāĻŋāĻĄāĻŋāĻāύāĻāĻāĻŋ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻāϰ⧠āύā§āϤāĻŋāĻā§āϞāĻŋāϰ āĻāύā§āϝ āĻā§āϝāĻžāϞāĻŋāĻā§āϰ āĻāĻ āϏā§āĻāĻŋāĻ āϏāĻā§āώāĻŽ āĻāϰāĻž āĻĒā§āϰāϝāĻŧā§āĻāύ āĻāĻŦāĻ āĻā§āϰā§āϝāĻžāĻ āĻāϰāĻž āĻšāϝāĻŧāύāĻŋ, āύāĻŋāĻŽā§āύāϞāĻŋāĻāĻŋāϤ āĻŦāĻŋāĻāĻžāĻāĻā§āϞāĻŋ āĻĻā§āĻā§āύ⧎ āĻāĻĒāϰāύā§āϤā§, ApplyOnForward āĻāĻāĻāĻŋ āĻāĻžāϰā§āĻā§āϝāĻŧāĻžāϞ āϰāĻžāĻāĻāĻžāϰ āĻŦāĻž āϏāĻĢā§āĻāĻāϝāĻŧā§āϝāĻžāϰ NAT āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻāϰāĻž āĻšāϝāĻŧ āĻāĻŽāύ āĻā§āώā§āϤā§āϰ⧠āĻšā§āϏā§āĻ āĻā§āϰā§āϝāĻžāĻĢāĻŋāĻ āύāĻŋāϰā§āĻā§āώāĻŖ āĻāϰāϤ⧠āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻāϰāĻž āϝā§āϤ⧠āĻĒāĻžāϰā§āĨ¤
āĻŽāύ⧠āϰāĻžāĻāĻŦā§āύ āϝ⧠āĻāĻĒāύāĻŋ āϝāĻĻāĻŋ āĻšā§āϏā§āĻ āĻĒā§āϰāϏā§āϏ āĻāĻŦāĻ āĻĒāĻĄ āĻāĻāϝāĻŧ āĻā§āώā§āϤā§āϰā§āĻ āĻāĻāĻ āύā§āĻāĻāϝāĻŧāĻžāϰā§āĻ āύā§āϤāĻŋ āĻĒā§āϰāϝāĻŧā§āĻ āĻāϰāϤ⧠āĻāĻžāύ, āϤāĻžāĻšāϞ⧠āĻāĻĒāύāĻžāĻā§ ApplyOnForward āĻŦāĻŋāĻāϞā§āĻĒāĻāĻŋ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻāϰāϤ⧠āĻšāĻŦā§ āύāĻžāĨ¤ āĻāĻĒāύāĻžāĻā§ āϝāĻž āĻāϰāϤ⧠āĻšāĻŦā§ āϤāĻž āĻšāϞ āĻĒā§āϰāϝāĻŧā§āĻāύā§āϝāĻŧ āĻšā§āϏā§āĻā§āύā§āĻĄāĻĒāϝāĻŧā§āύā§āĻ āĻāĻŦāĻ āĻāϝāĻŧāĻžāϰā§āĻāϞā§āĻĄ āĻāύā§āĻĄāĻĒāϝāĻŧā§āύā§āĻ (āĻĒāĻĄ) āĻāϰ āĻāύā§āϝ āĻāĻāĻāĻŋ āϞā§āĻŦā§āϞ āϤā§āϰāĻŋ āĻāϰāĻžāĨ¤ āĻā§āϝāĻžāϞāĻŋāĻā§ āĻāύā§āĻĄāĻĒāϝāĻŧā§āύā§āĻ āĻāĻžāĻāĻĒ (āĻšā§āϏā§āĻā§āύā§āĻĄāĻĒāϝāĻŧā§āύā§āĻ āĻŦāĻž āĻāĻžāĻā§āϰ āĻāĻžāĻĒ) āύāĻŋāϰā§āĻŦāĻŋāĻļā§āώ⧠āϞā§āĻŦā§āϞā§āϰ āĻāĻĒāϰ āĻāĻŋāϤā§āϤāĻŋ āĻāϰ⧠āύā§āϤāĻŋ āĻĒā§āϰāϝāĻŧā§āĻ āĻāϰāϤ⧠āϝāĻĨā§āώā§āĻ āϏā§āĻŽāĻžāϰā§āĻāĨ¤
PreDNAT āύā§āϤāĻŋ (4)
Kubernetes-āĻ, āĻĒāϰāĻŋāώā§āĻŦāĻž āϏāϤā§āϤāĻž āĻĒā§āϰā§āĻāĻā§āϞāĻŋ āύā§āĻĄāĻĒā§āϰā§āĻāϏ āĻŦāĻŋāĻāϞā§āĻĒ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻāϰ⧠āĻŦāĻž āĻāĻā§āĻāĻŋāĻāĻāĻžāĻŦā§ (āĻā§āϝāĻžāϞāĻŋāĻā§ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻāϰāĻžāϰ āϏāĻŽāϝāĻŧ) āĻā§āϞāĻžāϏā§āĻāĻžāϰ āĻāĻāĻĒāĻŋ āĻŦāĻž āĻŦāĻžāĻšā§āϝāĻŋāĻ āĻāĻāĻĒāĻŋ āĻŦāĻŋāĻāϞā§āĻĒāĻā§āϞāĻŋ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻāϰ⧠āĻŦāĻŋāĻā§āĻāĻžāĻĒāύā§āϰ āĻŽāĻžāϧā§āϝāĻŽā§ āĻŦāĻžāĻšā§āϝāĻŋāĻāĻāĻžāĻŦā§ āĻĒā§āϰāĻāĻžāĻļ āĻāϰāĻž āϝā§āϤ⧠āĻĒāĻžāϰā§āĨ¤ āĻā§āĻŦā§-āĻĒā§āϰāĻā§āϏāĻŋ āĻĄāĻŋāĻāύāĻāĻāĻŋ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻāϰ⧠āϏāĻāĻļā§āϞāĻŋāώā§āĻ āĻĒāϰāĻŋāώā§āĻŦāĻžāϰ āĻĒāĻĄāĻā§āϞāĻŋāϤ⧠āĻāĻāĻāĻŋ āĻĒāϰāĻŋāώā§āĻŦāĻžāϤ⧠āĻāĻŦāĻĻā§āϧ āĻāĻāϤ āĻā§āϰā§āϝāĻžāĻĢāĻŋāĻā§āϰ āĻāĻžāϰāϏāĻžāĻŽā§āϝ āĻŦāĻāĻžāϝāĻŧ āϰāĻžāĻā§āĨ¤ āĻāĻāĻŋ āĻĒā§āϰāĻĻāϤā§āϤ, āĻāĻĒāύāĻŋ āĻā§āĻāĻžāĻŦā§ āύā§āĻĄāĻĒā§āϰā§āĻā§āϰ āĻŽāĻžāϧā§āϝāĻŽā§ āĻā§āϰā§āϝāĻžāĻĢāĻŋāĻā§āϰ āĻāύā§āϝ āύā§āϤāĻŋāĻā§āϞāĻŋ āĻĒā§āϰāϝāĻŧā§āĻ āĻāϰāĻŦā§āύ? DNAT āĻĻā§āĻŦāĻžāϰāĻž āĻā§āϰā§āϝāĻžāĻĢāĻŋāĻ āĻĒā§āϰāĻā§āϰāĻŋāϝāĻŧāĻž āĻāϰāĻžāϰ āĻāĻā§ āĻāĻ āύā§āϤāĻŋāĻā§āϞāĻŋ āĻĒā§āϰāϝāĻŧā§āĻ āĻāϰāĻž āĻšāϝāĻŧā§āĻā§ āϤāĻž āύāĻŋāĻļā§āĻāĻŋāϤ āĻāϰāϤ⧠(āϝāĻž āĻšā§āϏā§āĻ:āĻĒā§āϰā§āĻ āĻāĻŦāĻ āϏāĻāĻļā§āϞāĻŋāώā§āĻ āĻĒāϰāĻŋāώā§āĻŦāĻžāϰ āĻŽāϧā§āϝ⧠āĻāĻāĻāĻŋ āĻŽā§āϝāĻžāĻĒāĻŋāĻ), āĻā§āϝāĻžāϞāĻŋāĻā§ "āĻĒā§āϰāĻŋāĻĄāĻŋāĻāύāĻāĻāĻŋ: āϏāϤā§āϝ" āύāĻžāĻŽāĻ āĻā§āϞā§āĻŦāĻžāϞāύā§āĻāĻāϝāĻŧāĻžāϰā§āĻ āĻĒāϞāĻŋāϏāĻŋāϰ āĻāύā§āϝ āĻāĻāĻāĻŋ āĻĒā§āϝāĻžāϰāĻžāĻŽāĻŋāĻāĻžāϰ āϏāϰāĻŦāϰāĻžāĻš āĻāϰā§āĨ¤
āϝāĻāύ āĻĒā§āϰāĻŋ-āĻĄāĻŋāĻāύāĻāĻāĻŋ āϏāĻā§āώāĻŽ āĻāϰāĻž āĻšāϝāĻŧ, āϤāĻāύ āĻāĻ āύā§āϤāĻŋāĻā§āϞāĻŋ (4) āĻĄāĻžāϝāĻŧāĻžāĻā§āϰāĻžāĻŽā§ āĻĒā§āϰāϝāĻŧā§āĻ āĻāϰāĻž āĻšāϝāĻŧ - PREROUTING āĻā§āĻāύā§āϰ āĻŽā§āϝāĻžāĻā§āĻā§āϞ āĻā§āĻŦāĻŋāϞ⧠- DNAT āĻāϰ āĻ āĻŋāĻ āĻāĻā§āĨ¤ āύā§āϤāĻŋāϰ āϏā§āĻŦāĻžāĻāĻžāĻŦāĻŋāĻ āĻā§āϰāĻŽ āĻāĻāĻžāύ⧠āĻ āύā§āϏāϰāĻŖ āĻāϰāĻž āĻšāϝāĻŧ āύāĻž, āϝā§āĻšā§āϤ⧠āĻāĻ āύā§āϤāĻŋāĻā§āϞāĻŋāϰ āĻĒā§āϰāϝāĻŧā§āĻ āĻā§āϰā§āϝāĻžāĻĢāĻŋāĻ āĻĒā§āϰāĻā§āϰāĻŋāϝāĻŧāĻžāĻāϰāĻŖā§āϰ āĻĒāĻĨā§ āĻ āύā§āĻ āĻāĻā§ āĻāĻā§āĨ¤ āϝāĻžāĻāĻšā§āĻ, preDNAT āύā§āϤāĻŋāĻā§āϞāĻŋ āύāĻŋāĻā§āĻĻā§āϰ āĻŽāϧā§āϝ⧠āĻāĻŦā§āĻĻāύā§āϰ āĻā§āϰāĻŽāĻā§ āϏāĻŽā§āĻŽāĻžāύ āĻāϰā§āĨ¤
āĻĒā§āϰāĻŋ-āĻĄāĻŋāĻāύāĻāĻāĻŋ āĻĻāĻŋāϝāĻŧā§ āύā§āϤāĻŋ āϤā§āϰāĻŋ āĻāϰāĻžāϰ āϏāĻŽāϝāĻŧ, āĻāĻĒāύāĻŋ āϝ⧠āĻā§āϰā§āϝāĻžāĻĢāĻŋāĻ āĻĒā§āϰāĻā§āϰāĻŋāϝāĻŧāĻž āĻāϰāϤ⧠āĻāĻžāύ āϏ⧠āϏāĻŽā§āĻĒāϰā§āĻā§ āϏāϤāϰā§āĻāϤāĻž āĻ
āĻŦāϞāĻŽā§āĻŦāύ āĻāϰāĻž āĻāĻŦāĻ āϏāĻāĻā§āϝāĻžāĻāϰāĻŋāώā§āĻ āĻā§ āĻĒā§āϰāϤā§āϝāĻžāĻā§āϝāĻžāύ āĻāϰāĻžāϰ āĻ
āύā§āĻŽāϤāĻŋ āĻĻā§āĻāϝāĻŧāĻž āĻā§āϰā§āϤā§āĻŦāĻĒā§āϰā§āĻŖāĨ¤ āĻĒā§āϰāĻžāĻ-DNAT āύā§āϤāĻŋāϤ⧠'āĻ
āύā§āĻŽāϤāĻŋ' āĻšāĻŋāϏāĻžāĻŦā§ āĻāĻŋāĻšā§āύāĻŋāϤ āĻā§āϰā§āϝāĻžāĻĢāĻŋāĻ āĻšā§āϏā§āĻā§āύā§āĻĄāĻĒāϝāĻŧā§āύā§āĻ āύā§āϤāĻŋ āĻĻā§āĻŦāĻžāϰāĻž āĻāϰ āĻā§āĻ āĻāϰāĻž āĻšāĻŦā§ āύāĻž, āϝāĻāύ āĻā§āϰā§āϝāĻžāĻĢāĻŋāĻ āϝā§āĻā§āϞāĻŋ āĻĒā§āϰāĻžāĻ-DNAT āύā§āϤāĻŋāϤ⧠āĻŦā§āϝāϰā§āĻĨ āĻšāϝāĻŧ āϤāĻž āĻ
āĻŦāĻļāĻŋāώā§āĻ āĻā§āĻāύā§āϰ āĻŽāĻžāϧā§āϝāĻŽā§ āĻāϞāϤ⧠āĻĨāĻžāĻāĻŦā§āĨ¤
āĻā§āϝāĻžāϞāĻŋāĻā§ preDNAT āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻāϰāĻžāϰ āϏāĻŽāϝāĻŧ applyOnForward āĻŦāĻŋāĻāϞā§āĻĒāĻāĻŋ āϏāĻā§āώāĻŽ āĻāϰāĻž āĻŦāĻžāϧā§āϝāϤāĻžāĻŽā§āϞāĻ āĻāϰā§āĻā§, āϝā§āĻšā§āϤ⧠āϏāĻāĻā§āĻāĻž āĻ
āύā§āϏāĻžāϰ⧠āĻā§āϰāĻžāĻĢāĻŋāĻā§āϰ āĻāύā§āϤāĻŦā§āϝ āĻāĻāύāĻ āύāĻŋāϰā§āĻŦāĻžāĻāύ āĻāϰāĻž āĻšāϝāĻŧāύāĻŋāĨ¤ āĻā§āϰā§āϝāĻžāĻĢāĻŋāĻ āĻšā§āϏā§āĻ āĻĒā§āϰāĻā§āϰāĻŋāϝāĻŧāĻž āύāĻŋāϰā§āĻĻā§āĻļāĻŋāϤ āĻāϰāĻž āϝā§āϤ⧠āĻĒāĻžāϰā§, āĻ
āĻĨāĻŦāĻž āĻāĻāĻŋ āĻāĻāĻāĻŋ āĻĒāĻĄ āĻŦāĻž āĻ
āύā§āϝ āύā§āĻĄ āĻĢāϰā§āϝāĻŧāĻžāϰā§āĻĄ āĻāϰāĻž āϝā§āϤ⧠āĻĒāĻžāϰā§.
āĻāύāĻā§āϰā§āϝāĻžāĻāĻĄ āύā§āϤāĻŋ (5)
āύā§āĻāĻāϝāĻŧāĻžāϰā§āĻ āĻāĻŦāĻ āĻ ā§āϝāĻžāĻĒā§āϞāĻŋāĻā§āĻļāύāĻā§āϞā§āϰ āĻāĻāϰāĻŖā§ āĻāϞā§āϞā§āĻāϝā§āĻā§āϝ āĻĒāĻžāϰā§āĻĨāĻā§āϝ āĻĻā§āĻāĻž āϝā§āϤ⧠āĻĒāĻžāϰā§āĨ¤ āĻāĻŋāĻā§ āĻāϰāĻŽ āĻā§āώā§āϤā§āϰā§, āĻ ā§āϝāĻžāĻĒā§āϞāĻŋāĻā§āĻļāύāĻā§āϞ⧠āĻ āϏāĻāĻā§āϝ āϏā§āĻŦāϞā§āĻĒāϏā§āĻĨāĻžāϝāĻŧā§ āϏāĻāϝā§āĻ āϤā§āϰāĻŋ āĻāϰāϤ⧠āĻĒāĻžāϰā§āĨ¤ āĻāϰ āĻĢāϞ⧠āĻāύāĻā§āϰā§āϝāĻžāĻā§āĻ (āύā§āĻāĻāϝāĻŧāĻžāϰā§āĻ āϏā§āĻā§āϝāĻžāĻā§āϰ āĻāĻāĻāĻŋ āĻŽā§āϞ āĻāĻĒāĻžāĻĻāĻžāύ)-āĻāϰ āĻŽā§āĻŽā§āϰāĻŋ āĻļā§āώ āĻšāϝāĻŧā§ āϝā§āϤ⧠āĻĒāĻžāϰā§āĨ¤ LinuxāĻāϤāĻŋāĻšā§āϝāĻāϤāĻāĻžāĻŦā§, āĻāĻ āϧāϰāύā§āϰ āĻ ā§āϝāĻžāĻĒā§āϞāĻŋāĻā§āĻļāύ āĻāĻžāϞāĻžāύā§āϰ āĻāύā§āϝ Linux āĻāĻĒāύāĻžāĻā§ āĻŽā§āϝāĻžāύā§āϝāĻŧāĻžāϞāĻŋ āĻāύāĻā§āϰā§āϝāĻžāĻ āĻāύāĻĢāĻŋāĻāĻžāϰ āĻŦāĻž āύāĻŋāώā§āĻā§āϰāĻŋāϝāĻŧ āĻāϰāϤ⧠āĻšāĻŦā§, āĻ āĻĨāĻŦāĻž āĻāύāĻā§āϰā§āϝāĻžāĻ āĻŦāĻžāĻāĻĒāĻžāϏ āĻāϰāĻžāϰ āĻāύā§āϝ āĻāĻāĻĒāĻŋāĻā§āĻŦāϞāϏ (iptables) āύāĻŋāϝāĻŧāĻŽ āϞāĻŋāĻāϤ⧠āĻšāĻŦā§āĨ¤ āĻāĻĒāύāĻŋ āϝāĻĻāĻŋ āϝāϤ āĻĻā§āϰā§āϤ āϏāĻŽā§āĻāĻŦ āϏāĻāϝā§āĻāĻā§āϞāĻŋ āĻĒā§āϰāĻā§āϰāĻŋāϝāĻŧāĻž āĻāϰāϤ⧠āĻāĻžāύ, āϤāĻŦā§ āĻā§āϝāĻžāϞāĻŋāĻā§āϰ āĻāύāĻā§āϰā§āϝāĻžāĻāĻĄ āĻĒāϞāĻŋāϏāĻŋ āĻāĻāĻāĻŋ āϏāĻšāĻ āĻāĻŦāĻ āĻāϰāĻ āĻāĻžāϰā§āϝāĻāϰ āĻŦāĻŋāĻāϞā§āĻĒāĨ¤ āĻāĻĻāĻžāĻšāϰāĻŖāϏā§āĻŦāϰā§āĻĒ, āϝāĻĻāĻŋ āĻāĻĒāύāĻŋ āĻāĻāĻāĻŋ āĻŦāĻŋāĻļāĻžāϞ āϏāĻāĻā§āϝāĻ āϏāĻāϝā§āĻ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻāϰā§āύ... āĻŦāĻž āĻŦāĻŋāϰā§āĻĻā§āϧ⧠āϏā§āϰāĻā§āώāĻžāϰ āĻāĻāĻāĻŋ āĻ āϤāĻŋāϰāĻŋāĻā§āϤ āĻĒāϰāĻŋāĻŽāĻžāĻĒ āĻšāĻŋāϏāĻžāĻŦā§ .
āĻāĻ āĻĒāĻĄāĻŧā§āύ (āĻŦāĻž ) āĻāύāĻā§āϰā§āϝāĻžāĻāĻĄ āύā§āϤāĻŋ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻāϰ⧠āĻāϰā§āĻŽāĻā§āώāĻŽāϤāĻž āĻĒāϰā§āĻā§āώāĻž āϏāĻš āĻāϰāĻ āϤāĻĨā§āϝā§āϰ āĻāύā§āϝāĨ¤
āϝāĻāύ āĻāĻĒāύāĻŋ Calico globalNetworkPolicy-āϤ⧠'doNotTrack: true' āĻ āĻĒāĻļāύāĻāĻŋ āϏā§āĻ āĻāϰā§āύ, āϤāĻāύ āĻāĻāĻŋ āĻāĻāĻāĻŋ **āύā§-āĻā§āϰā§āϝāĻžāĻ** āĻĒāϞāĻŋāϏāĻŋāϤ⧠āĻĒāϰāĻŋāĻŖāϤ āĻšāϝāĻŧ āĻāĻŦāĻ āĻĒā§āϝāĻžāĻā§āĻ āĻĒā§āϰāϏā§āϏāĻŋāĻ āĻĒāĻžāĻāĻĒāϞāĻžāĻāύā§āϰ āĻāĻā§āĻŦāĻžāϰ⧠āĻĒā§āϰāĻžāĻĨāĻŽāĻŋāĻ āĻĒāϰā§āϝāĻžāϝāĻŧā§ āĻĒā§āϰāϝāĻŧā§āĻ āĻāϰāĻž āĻšāϝāĻŧāĨ¤ LinuxāĻāĻĒāϰā§āϰ āĻĄāĻžāϝāĻŧāĻžāĻā§āϰāĻžāĻŽāĻāĻŋ āĻĻā§āĻāϞ⧠āĻŦā§āĻāĻž āϝāĻžāϝāĻŧ, āĻāĻžāύā§āĻāĻļāύ āĻā§āϰā§āϝāĻžāĻāĻŋāĻ (conntrack) āĻļā§āϰ⧠āĻšāĻāϝāĻŧāĻžāϰ āĻāĻā§ āϰ āĻā§āĻŦāĻŋāϞā§āϰ PREROUTING āĻāĻŦāĻ OUTPUT āĻā§āĻāύ⧠āĻāύāĻā§āϰā§āϝāĻžāĻāĻĄ āĻĒāϞāĻŋāϏāĻŋāĻā§āϞ⧠āĻĒā§āϰāϝāĻŧā§āĻ āĻāϰāĻž āĻšāϝāĻŧāĨ¤ āϝāĻāύ āĻā§āύ⧠āĻĒā§āϝāĻžāĻā§āĻ āĻāĻāĻāĻŋ āĻāύāĻā§āϰā§āϝāĻžāĻāĻĄ āĻĒāϞāĻŋāϏāĻŋ āĻĻā§āĻŦāĻžāϰāĻž āĻ āύā§āĻŽā§āĻĻāĻŋāϤ āĻšāϝāĻŧ, āϤāĻāύ āϏā§āĻ āĻĒā§āϝāĻžāĻā§āĻā§āϰ āĻāύā§āϝ āĻāĻžāύā§āĻāĻļāύ āĻā§āϰā§āϝāĻžāĻāĻŋāĻ āύāĻŋāώā§āĻā§āϰāĻŋāϝāĻŧ āĻāϰāϤ⧠āĻāĻāĻŋāĻā§ āĻāĻŋāĻšā§āύāĻŋāϤ āĻāϰāĻž āĻšāϝāĻŧāĨ¤ āĻāϰ āĻŽāĻžāύ⧠āĻšāϞā§:
- āĻāύāĻā§āϰā§āϝāĻžāĻāĻĄ āύā§āϤāĻŋ āĻĒā§āϰāϤāĻŋ-āĻĒā§āϝāĻžāĻā§āĻ āĻāĻŋāϤā§āϤāĻŋāϤ⧠āĻĒā§āϰāϝāĻŧā§āĻ āĻāϰāĻž āĻšāϝāĻŧāĨ¤ āϏāĻāϝā§āĻā§āϰ (āĻŦāĻž āĻĒā§āϰāĻŦāĻžāĻš) āĻā§āύ āϧāĻžāϰāĻŖāĻž āύā§āĻāĨ¤ āϏāĻāϝā§āĻā§āϰ āĻ āĻāĻžāĻŦā§āϰ āĻŦā§āĻļ āĻāϝāĻŧā§āĻāĻāĻŋ āĻā§āϰā§āϤā§āĻŦāĻĒā§āϰā§āĻŖ āĻĒāϰāĻŋāĻŖāϤāĻŋ āϰāϝāĻŧā§āĻā§:
- āĻāĻĒāύāĻŋ āϝāĻĻāĻŋ āĻ āύā§āϰā§āϧ āĻāĻŦāĻ āĻĒā§āϰāϤāĻŋāĻā§āϰāĻŋāϝāĻŧāĻž āĻāĻāϝāĻŧ āĻā§āϰā§āϝāĻžāĻĢāĻŋāĻā§āϰ āĻ āύā§āĻŽāϤāĻŋ āĻĻāĻŋāϤ⧠āĻāĻžāύ, āϤāĻžāĻšāϞ⧠āĻāĻĒāύāĻžāϰ āĻāύāĻŦāĻžāĻāύā§āĻĄ āĻāĻŦāĻ āĻāĻāĻāĻŦāĻžāĻāύā§āĻĄ āĻāĻāϝāĻŧā§āϰ āĻāύā§āϝ āĻāĻāĻāĻŋ āύāĻŋāϝāĻŧāĻŽ āĻĒā§āϰāϝāĻŧā§āĻāύ (āϝā§āĻšā§āϤ⧠āĻā§āϝāĻžāϞāĻŋāĻā§ āϏāĻžāϧāĻžāϰāĻŖāϤ āĻĒā§āϰāϤāĻŋāĻā§āϰāĻŋāϝāĻŧāĻž āĻā§āϰā§āϝāĻžāĻĢāĻŋāĻāĻā§ āĻ āύā§āĻŽā§āĻĻāĻŋāϤ āĻšāĻŋāϏāĻžāĻŦā§ āĻāĻŋāĻšā§āύāĻŋāϤ āĻāϰāϤ⧠āĻāύāĻā§āϰā§āϝāĻžāĻ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻāϰā§)āĨ¤
- āĻāύāĻā§āϰā§āϝāĻžāĻāĻĄ āύā§āϤāĻŋ Kubernetes āĻāϝāĻŧāĻžāϰā§āĻāϞā§āĻĄ (āĻĒāĻĄ) āĻāϰ āĻāύā§āϝ āĻāĻžāĻ āĻāϰ⧠āύāĻž, āĻāĻžāϰāĻŖ āĻāĻ āĻā§āώā§āϤā§āϰ⧠āĻĒāĻĄ āĻĨā§āĻā§ āĻŦāĻšāĻŋāϰā§āĻāĻžāĻŽā§ āϏāĻāϝā§āĻ āĻā§āϰā§āϝāĻžāĻ āĻāϰāĻžāϰ āĻā§āύ āĻāĻĒāĻžāϝāĻŧ āύā§āĻāĨ¤
- NAT āĻāύāĻā§āϰā§āϝāĻžāĻāĻĄ āĻĒā§āϝāĻžāĻā§āĻāĻā§āϞāĻŋāϰ āϏāĻžāĻĨā§ āϏāĻ āĻŋāĻāĻāĻžāĻŦā§ āĻāĻžāĻ āĻāϰ⧠āύāĻž (āϝā§āĻšā§āϤ⧠āĻāĻžāϰā§āύā§āϞ āĻāύāĻā§āϰāĻžāĻā§ NAT āĻŽā§āϝāĻžāĻĒāĻŋāĻ āϏāĻāϰāĻā§āώāĻŖ āĻāϰā§)āĨ¤
- āĻāύāĻā§āϰā§āϝāĻžāĻāĻĄ āύā§āϤāĻŋāϤ⧠"āϏāĻŽāϏā§āϤāĻā§ āĻ āύā§āĻŽāϤāĻŋ āĻĻāĻŋāύ" āύāĻŋāϝāĻŧāĻŽā§āϰ āĻŽāϧā§āϝ āĻĻāĻŋāϝāĻŧā§ āϝāĻžāĻāϝāĻŧāĻžāϰ āϏāĻŽāϝāĻŧ, āϏāĻŽāϏā§āϤ āĻĒā§āϝāĻžāĻā§āĻ āĻāύāĻā§āϰā§āϝāĻžāĻāĻĄ āĻšāĻŋāϏāĻžāĻŦā§ āĻāĻŋāĻšā§āύāĻŋāϤ āĻāϰāĻž āĻšāĻŦā§āĨ¤ āĻāĻāĻŋ āĻĒā§āϰāĻžāϝāĻŧ āϏāĻŦāϏāĻŽāϝāĻŧāĻ āĻāĻĒāύāĻŋ āϝāĻž āĻāĻžāύ āϤāĻž āĻšāϝāĻŧ āύāĻž, āϤāĻžāĻ āĻāύāĻā§āϰā§āϝāĻžāĻ āĻāϰāĻž āύā§āϤāĻŋāĻā§āϞāĻŋāϰ āĻĻā§āĻŦāĻžāϰāĻž āĻ āύā§āĻŽā§āĻĻāĻŋāϤ āĻĒā§āϝāĻžāĻā§āĻāĻā§āϞāĻŋ āϏāĻŽā§āĻĒāϰā§āĻā§ āĻā§āĻŦ āύāĻŋāϰā§āĻŦāĻžāĻāύ⧠āĻšāĻāϝāĻŧāĻž āĻā§āϰā§āϤā§āĻŦāĻĒā§āϰā§āĻŖ (āĻāĻŦāĻ āĻŦā§āĻļāĻŋāϰāĻāĻžāĻ āĻā§āϰā§āϝāĻžāĻĢāĻŋāĻāĻā§ āϏā§āĻŦāĻžāĻāĻžāĻŦāĻŋāĻ āĻā§āϰā§āϝāĻžāĻ āĻāϰāĻž āύā§āϤāĻŋāĻā§āϞāĻŋāϰ āĻŽāĻžāϧā§āϝāĻŽā§ āϝā§āϤ⧠āĻĻā§āϝāĻŧ)⧎
- āĻāύāĻā§āϰā§āϝāĻžāĻāĻĄ āύā§āϤāĻŋāĻā§āϞāĻŋ āĻĒā§āϝāĻžāĻā§āĻ āĻĒā§āϰāĻā§āϰāĻŋāϝāĻŧāĻžāĻāϰāĻŖ āĻĒāĻžāĻāĻĒāϞāĻžāĻāύā§āϰ āĻāĻā§āĻŦāĻžāϰ⧠āĻļā§āϰā§āϤ⧠āĻĒā§āϰāϝāĻŧā§āĻ āĻāϰāĻž āĻšāϝāĻŧāĨ¤ āĻā§āϝāĻžāϞāĻŋāĻā§ āύā§āϤāĻŋāĻā§āϞāĻŋ āϤā§āϰāĻŋ āĻāϰāĻžāϰ āϏāĻŽāϝāĻŧ āĻāĻāĻŋ āĻŦā§āĻāĻž āĻā§āĻŦāĻ āĻā§āϰā§āϤā§āĻŦāĻĒā§āϰā§āϪ⧎ āĻāĻĒāύāĻžāϰ āĻ āϰā§āĻĄāĻžāϰ āϏāĻš āĻāĻāĻāĻŋ āĻĒāĻĄ āĻĒāϞāĻŋāϏāĻŋ āĻĨāĻžāĻāϤ⧠āĻĒāĻžāϰā§:1 āĻāĻŦāĻ āĻ āϰā§āĻĄāĻžāϰ:1000 āϏāĻš āĻāĻāĻāĻŋ āĻāύāĻā§āϰā§āϝāĻžāĻāĻĄ āĻĒāϞāĻŋāϏāĻŋāĨ¤ āĻāĻāĻž āĻā§āύ āĻŦā§āϝāĻžāĻĒāĻžāϰ āύāĻž. āĻĒāĻĄā§āϰ āĻāύā§āϝ āύā§āϤāĻŋāϰ āĻāĻā§ āĻāύāĻā§āϰā§āϝāĻžāĻāĻĄ āύā§āϤāĻŋ āĻĒā§āϰāϝāĻŧā§āĻ āĻāϰāĻž āĻšāĻŦā§āĨ¤ āĻāύāĻā§āϰā§āϝāĻžāĻāĻĄ āύā§āϤāĻŋāĻā§āϞāĻŋ āĻļā§āϧā§āĻŽāĻžāϤā§āϰ āύāĻŋāĻā§āĻĻā§āϰ āĻŽāϧā§āϝ⧠āĻŽā§āϤā§āϝā§āĻĻāύā§āĻĄā§āϰ āĻāĻĻā§āĻļāĻā§ āϏāĻŽā§āĻŽāĻžāύ āĻāϰā§ā§ˇ
āϝā§āĻšā§āϤ⧠doNotTrack āĻĒāϞāĻŋāϏāĻŋāϰ āĻ āύā§āϝāϤāĻŽ āϞāĻā§āώā§āϝ āĻšāϞ⧠āĻĒā§āϝāĻžāĻā§āĻ āĻĒā§āϰāϏā§āϏāĻŋāĻ āĻĒāĻžāĻāĻĒāϞāĻžāĻāύā§āϰ āϝāϤ āϤāĻžāĻĄāĻŧāĻžāϤāĻžāĻĄāĻŧāĻŋ āϏāĻŽā§āĻāĻŦ āĻĒā§āϰāĻžāĻĨāĻŽāĻŋāĻ āĻĒāϰā§āϝāĻžāϝāĻŧā§ āύā§āϤāĻŋāĻāĻŋ āĻĒā§āϰāϝāĻŧā§āĻ āĻāϰāĻž, LinuxdoNotTrack āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻāϰāĻžāϰ āϏāĻŽāϝāĻŧ Calico-āϤ⧠applyOnForward āĻ āĻĒāĻļāύāĻāĻŋ āĻĒā§āϰāϝāĻŧā§āĻāύāĨ¤ āĻĒā§āϝāĻžāĻā§āĻ āĻĒā§āϰāϏā§āϏāĻŋāĻ āĻĄāĻžāϝāĻŧāĻžāĻā§āϰāĻžāĻŽāĻāĻŋ āĻĻā§āĻāϞ⧠āĻŦā§āĻāĻž āϝāĻžāϝāĻŧ āϝā§, āϝā§āĻā§āύ⧠āϰāĻžāĻāĻāĻŋāĻ āϏāĻŋāĻĻā§āϧāĻžāύā§āϤā§āϰ āĻāĻā§ āĻāύāĻā§āϰā§āϝāĻžāĻāĻĄ (5) āĻĒāϞāĻŋāϏāĻŋ āĻĒā§āϰāϝāĻŧā§āĻ āĻāϰāĻž āĻšāϝāĻŧāĨ¤ āĻā§āϰā§āϝāĻžāĻĢāĻŋāĻāĻā§ āĻšā§āϏā§āĻ āĻĒā§āϰāϏā§āϏ⧠āĻĒāĻžāĻ āĻžāύ⧠āϝā§āϤ⧠āĻĒāĻžāϰā§, āĻ āĻĨāĻŦāĻž āĻāĻāĻŋāĻā§ āĻāĻāĻāĻŋ āĻĒāĻĄ āĻŦāĻž āĻ āύā§āϝ āĻā§āύ⧠āύā§āĻĄā§ āĻĢāϰā§āϝāĻŧāĻžāϰā§āĻĄ āĻāϰāĻž āϝā§āϤ⧠āĻĒāĻžāϰā§āĨ¤
āĻĢāϞāĻžāĻĢāϞ
āĻāĻŽāϰāĻž āĻā§āϝāĻžāϞāĻŋāĻā§āϤ⧠āĻŦāĻŋāĻāĻŋāύā§āύ āύā§āϤāĻŋāϰ āĻŦāĻŋāĻāϞā§āĻĒāĻā§āϞāĻŋ (āĻšā§āϏā§āĻ āĻāύā§āĻĄāĻĒāϝāĻŧā§āύā§āĻ, āĻ ā§āϝāĻžāĻĒā§āϞāĻžāĻāĻ āύāĻĢāϰāĻāϝāĻŧāĻžāϰā§āĻĄ, āĻĒā§āϰāĻŋāĻĄāĻŋāĻāύāĻāĻāĻŋ āĻāĻŦāĻ āĻāύāĻā§āϰā§āϝāĻžāĻāĻĄ) āĻĻā§āĻā§āĻāĻŋ āĻāĻŦāĻ āĻā§āĻāĻžāĻŦā§ āϏā§āĻā§āϞāĻŋ āĻĒā§āϝāĻžāĻā§āĻ āĻĒā§āϰāĻā§āϰāĻŋāϝāĻŧāĻžāĻāϰāĻŖā§āϰ āĻĒāĻĨā§ āĻĒā§āϰāϝāĻŧā§āĻ āĻāϰāĻž āĻšāϝāĻŧāĨ¤ āϤāĻžāϰāĻž āĻā§āĻāĻžāĻŦā§ āĻāĻžāĻ āĻāϰ⧠āϤāĻž āĻŦā§āĻāĻž āĻāĻžāϰā§āϝāĻāϰ āĻāĻŦāĻ āύāĻŋāϰāĻžāĻĒāĻĻ āύā§āϤāĻŋ āĻŦāĻŋāĻāĻžāĻļā§ āϏāĻšāĻžāϝāĻŧāϤāĻž āĻāϰā§āĨ¤ āĻā§āϝāĻžāϞāĻŋāĻā§āϰ āϏāĻžāĻĨā§ āĻāĻĒāύāĻŋ āĻāĻāĻāĻŋ āĻŦā§āĻļā§āĻŦāĻŋāĻ āύā§āĻāĻāϝāĻŧāĻžāϰā§āĻ āύā§āϤāĻŋ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻāϰāϤ⧠āĻĒāĻžāϰā§āύ āϝāĻž āĻāĻāĻāĻŋ āϞā§āĻŦā§āϞ⧠(āύā§āĻĄ āĻāĻŦāĻ āĻĒāĻĄā§āϰ āĻāĻāĻāĻŋ āĻā§āϰā§āĻĒ) āĻĒā§āϰāϝā§āĻā§āϝ āĻāĻŦāĻ āĻŦāĻŋāĻāĻŋāύā§āύ āĻĒāϰāĻžāĻŽāĻŋāϤāĻŋ āϏāĻš āύā§āϤāĻŋ āĻĒā§āϰāϝāĻŧā§āĻ āĻāϰāϤ⧠āĻĒāĻžāϰā§āύāĨ¤ āĻāĻāĻŋ āύāĻŋāϰāĻžāĻĒāϤā§āϤāĻž āĻāĻŦāĻ āύā§āĻāĻāϝāĻŧāĻžāϰā§āĻ āĻĄāĻŋāĻāĻžāĻāύ āĻĒā§āĻļāĻžāĻĻāĻžāϰāĻĻā§āϰ āĻā§āϝāĻžāϞāĻŋāĻā§ āύā§āϤāĻŋāϰ āϏāĻžāĻĨā§ āĻāĻāĻāĻŋ āĻāĻāĻ āύā§āϤāĻŋ āĻāĻžāώāĻž āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻāϰ⧠āĻāĻāĻŦāĻžāϰ⧠"āϏāĻŦāĻāĻŋāĻā§" (āĻāύā§āĻĄāĻĒāϝāĻŧā§āύā§āĻ āĻĒā§āϰāĻāĻžāϰāĻā§āϞāĻŋ) āϏā§āϰāĻā§āώāĻŋāϤ āĻāϰāϤ⧠āĻĻā§āϝāĻŧāĨ¤
āϏā§āĻŦā§āĻā§āϤāĻŋ: āĻāĻŽāĻŋ āϧāύā§āϝāĻŦāĻžāĻĻ āĻāĻžāύāĻžāϤ⧠āĻāĻžāĻ Đ¸ āϤāĻžāĻĻā§āϰ āĻĒāϰā§āϝāĻžāϞā§āĻāύāĻž āĻāĻŦāĻ āĻŽā§āϞā§āϝāĻŦāĻžāύ āϤāĻĨā§āϝā§āϰ āĻāύā§āϝāĨ¤
āĻāϤā§āϏ: www.habr.com
