āĻ•ā§āϝāĻžāϞāĻŋāϕ⧋āϰ āϏāĻžāĻĨ⧇ āύ⧇āϟāĻ“āϝāĻŧāĻžāĻ°ā§āĻ• āύ⧀āϤāĻŋ āĻĒā§āϰāϝāĻŧā§‹āϗ⧇āϰ āĻŦāĻŋāĻ•āĻ˛ā§āĻĒāϗ⧁āϞāĻŋ āĻŦā§‹āĻāĻž

āĻ•ā§āϝāĻžāϞāĻŋāϕ⧋āϰ āϏāĻžāĻĨ⧇ āύ⧇āϟāĻ“āϝāĻŧāĻžāĻ°ā§āĻ• āύ⧀āϤāĻŋ āĻĒā§āϰāϝāĻŧā§‹āϗ⧇āϰ āĻŦāĻŋāĻ•āĻ˛ā§āĻĒāϗ⧁āϞāĻŋ āĻŦā§‹āĻāĻž

āĻ•ā§āϝāĻžāϞāĻŋāϕ⧋ āύ⧇āϟāĻ“āϝāĻŧāĻžāĻ°ā§āĻ• āĻĒā§āϞāĻžāĻ—āχāύ āĻšāĻžāĻ°ā§āĻĄāĻ“āϝāĻŧā§āϝāĻžāϰ āĻšā§‹āĻ¸ā§āϟ, āĻ­āĻžāĻ°ā§āϚ⧁āϝāĻŧāĻžāϞ āĻŽā§‡āĻļāĻŋāύ āĻāĻŦāĻ‚ āĻĒāĻĄāϗ⧁āϞāĻŋāϕ⧇ āϰāĻ•ā§āώāĻž āĻ•āϰāĻžāϰ āϜāĻ¨ā§āϝ āĻāĻ•āϟāĻŋ āχāωāύāĻŋāĻĢāĻžāχāĻĄ āϏāĻŋāύāĻŸā§āϝāĻžāĻ•ā§āϏ āϏāĻš āύ⧇āϟāĻ“āϝāĻŧāĻžāĻ°ā§āĻ• āύ⧀āϤāĻŋāϗ⧁āϞāĻŋāϰ āĻāĻ•āϟāĻŋ āĻŦāĻŋāĻ¸ā§āϤ⧃āϤ āĻĒāϰāĻŋāϏāϰ āĻĒā§āϰāĻĻāĻžāύ āĻ•āϰ⧇āĨ¤ āĻāχ āύ⧀āϤāĻŋāϗ⧁āϞāĻŋ āĻāĻ•āϟāĻŋ āύāĻžāĻŽāĻ¸ā§āĻĨāĻžāύ⧇āϰ āĻŽāĻ§ā§āϝ⧇ āĻĒā§āϰāϝāĻŧā§‹āĻ— āĻ•āϰāĻž āϝ⧇āϤ⧇ āĻĒāĻžāϰ⧇ āĻŦāĻž āĻŦāĻŋāĻļā§āĻŦāĻŦā§āϝāĻžāĻĒā§€ āύ⧇āϟāĻ“āϝāĻŧāĻžāĻ°ā§āĻ• āύ⧀āϤāĻŋ āĻšāϤ⧇ āĻĒāĻžāϰ⧇ āϝāĻž āĻĒā§āϰāϝ⧋āĻœā§āϝ āĻšā§‹āĻ¸ā§āϟ āĻļ⧇āώ āĻŦāĻŋāĻ¨ā§āĻĻ⧁ (āϏāϰāĻžāϏāϰāĻŋ āĻšā§‹āĻ¸ā§āĻŸā§‡ āϚāϞāĻŽāĻžāύ āĻ…ā§āϝāĻžāĻĒā§āϞāĻŋāϕ⧇āĻļāύāϗ⧁āϞāĻŋāϕ⧇ āϰāĻ•ā§āώāĻž āĻ•āϰāϤ⧇ - āĻšā§‹āĻ¸ā§āϟ āĻāĻ•āϟāĻŋ āϏāĻžāĻ°ā§āĻ­āĻžāϰ āĻŦāĻž āĻ­āĻžāĻ°ā§āϚ⧁āϝāĻŧāĻžāϞ āĻŽā§‡āĻļāĻŋāύ āĻšāϤ⧇ āĻĒāĻžāϰ⧇) āĻ…āĻĨāĻŦāĻž āĻ•āĻžāĻœā§‡āϰ āϚāĻžāĻĒ⧇āϰ āĻļ⧇āώ āĻĒāϝāĻŧ⧇āĻ¨ā§āϟ (āĻĒāĻžāĻ¤ā§āϰ⧇ āĻŦāĻž āĻšā§‹āĻ¸ā§āϟ āĻ•āϰāĻž āĻ­āĻžāĻ°ā§āϚ⧁āϝāĻŧāĻžāϞ āĻŽā§‡āĻļāĻŋāύ⧇ āϚāϞāĻŽāĻžāύ āĻ…ā§āϝāĻžāĻĒā§āϞāĻŋāϕ⧇āĻļāύāϗ⧁āϞāĻŋāϕ⧇ āϰāĻ•ā§āώāĻž āĻ•āϰāϤ⧇)āĨ¤ āĻ•ā§āϝāĻžāϞāĻŋāϕ⧋ āύ⧀āϤāĻŋāϗ⧁āϞāĻŋ āφāĻĒāύāĻžāϕ⧇ preDNAT, unracked, āĻāĻŦāĻ‚ applyOnForward āĻāϰ āĻŽāϤ āĻŦāĻŋāĻ•āĻ˛ā§āĻĒāϗ⧁āϞāĻŋ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰ⧇ āĻĒā§āϝāĻžāϕ⧇āĻŸā§‡āϰ āĻĒāĻĨ⧇āϰ āĻŦāĻŋāĻ­āĻŋāĻ¨ā§āύ āĻĒāϝāĻŧ⧇āĻ¨ā§āĻŸā§‡ āύāĻŋāϰāĻžāĻĒāĻ¤ā§āϤāĻž āĻŦā§āϝāĻŦāĻ¸ā§āĻĨāĻž āĻĒā§āϰāϝāĻŧā§‹āĻ— āĻ•āϰāĻžāϰ āĻ…āύ⧁āĻŽāϤāĻŋ āĻĻ⧇āϝāĻŧāĨ¤ āĻāχ āĻŦāĻŋāĻ•āĻ˛ā§āĻĒāϗ⧁āϞāĻŋ āϕ⧀āĻ­āĻžāĻŦ⧇ āĻ•āĻžāϜ āĻ•āϰ⧇ āϤāĻž āĻŦā§‹āĻāĻž āφāĻĒāύāĻžāϰ āϏāĻžāĻŽāĻ—ā§āϰāĻŋāĻ• āϏāĻŋāĻ¸ā§āĻŸā§‡āĻŽā§‡āϰ āύāĻŋāϰāĻžāĻĒāĻ¤ā§āϤāĻž āĻāĻŦāĻ‚ āĻ•āĻ°ā§āĻŽāĻ•ā§āώāĻŽāϤāĻž āωāĻ¨ā§āύāϤ āĻ•āϰāϤ⧇ āϏāĻžāĻšāĻžāĻ¯ā§āϝ āĻ•āϰāϤ⧇ āĻĒāĻžāϰ⧇āĨ¤ āĻāχ āύāĻŋāĻŦāĻ¨ā§āϧāϟāĻŋ āĻĒā§āϝāĻžāϕ⧇āϟ āĻĒā§āϰāϏ⧇āϏāĻŋāĻ‚ āĻĒāĻžāĻĨāϗ⧁āϞāĻŋāϤ⧇ (iptabels āĻšā§‡āχāύ) āϕ⧀ āϘāϟāĻŦ⧇ āϤāĻžāϰ āωāĻĒāϰ āĻœā§‹āϰ āĻĻāĻŋāϝāĻŧ⧇ āĻšā§‹āĻ¸ā§āϟ āĻāĻ¨ā§āĻĄāĻĒāϝāĻŧ⧇āĻ¨ā§āϟāϗ⧁āϞāĻŋāϤ⧇ āĻĒā§āϰāϝāĻŧā§‹āĻ— āĻ•āϰāĻž āĻāχ āĻ•ā§āϝāĻžāϞāĻŋāϕ⧋ āύ⧀āϤāĻŋ āĻŦāĻŋāĻ•āĻ˛ā§āĻĒāϗ⧁āϞāĻŋāϰ (preDNAT, unraracked āĻāĻŦāĻ‚ applyOnForward) āϏāĻžāϰāĻžāĻ‚āĻļ āĻŦā§āϝāĻžāĻ–ā§āϝāĻž āĻ•āϰ⧇āĨ¤

āĻāχ āύāĻŋāĻŦāĻ¨ā§āϧāϟāĻŋ āĻ…āύ⧁āĻŽāĻžāύ āĻ•āϰ⧇ āϝ⧇ Kubernetes āĻāĻŦāĻ‚ Calico āύ⧇āϟāĻ“āϝāĻŧāĻžāĻ°ā§āĻ• āύ⧀āϤāĻŋāϗ⧁āϞāĻŋ āϕ⧀āĻ­āĻžāĻŦ⧇ āĻ•āĻžāϜ āĻ•āϰ⧇ āϏ⧇ āϏāĻŽā§āĻĒāĻ°ā§āϕ⧇ āφāĻĒāύāĻžāϰ āĻāĻ•āϟāĻŋ āĻĒā§āϰāĻžāĻĨāĻŽāĻŋāĻ• āϧāĻžāϰāĻŖāĻž āϰāϝāĻŧ⧇āϛ⧇⧎ āϝāĻĻāĻŋ āύāĻž āĻšāϝāĻŧ, āφāĻŽāϰāĻž āĻāϟāĻŋ āĻšā§‡āĻˇā§āϟāĻž āĻ•āϰāĻžāϰ āĻĒāϰāĻžāĻŽāĻ°ā§āĻļ āĻĻāĻŋāχ āĻŽā§ŒāϞāĻŋāĻ• āύ⧇āϟāĻ“āϝāĻŧāĻžāĻ°ā§āĻ• āύ⧀āϤāĻŋ āϟāĻŋāωāĻŸā§‹āϰāĻŋāϝāĻŧāĻžāϞ и āĻšā§‹āĻ¸ā§āϟ āϏ⧁āϰāĻ•ā§āώāĻž āϟāĻŋāωāĻŸā§‹āϰāĻŋāϝāĻŧāĻžāϞ āĻāχ āύāĻŋāĻŦāĻ¨ā§āϧāϟāĻŋ āĻĒāĻĄāĻŧāĻžāϰ āφāϗ⧇ āĻ•ā§āϝāĻžāϞāĻŋāϕ⧋ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰ⧁āύāĨ¤ āĻāĻ›āĻžāĻĄāĻŧāĻžāĻ“ āφāĻŽāϰāĻž āφāĻļāĻž āĻ•āϰāĻŋ āφāĻĒāύāĻŋ āĻ•āĻžāϜ āϏāĻŽā§āĻĒāĻ°ā§āϕ⧇ āĻāĻ•āϟāĻŋ āĻĒā§āϰāĻžāĻĨāĻŽāĻŋāĻ• āϧāĻžāϰāĻŖāĻž āĻĒāĻžāĻŦ⧇āύ iptables- āϰ в 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 āĻšā§‡āχāύ⧇āϰ āĻŽāĻ§ā§āϝ āĻĻāĻŋāϝāĻŧ⧇ āϝāĻžāϝāĻŧāĨ¤

āĻ•ā§āϝāĻžāϞāĻŋāϕ⧋āϰ āϏāĻžāĻĨ⧇ āύ⧇āϟāĻ“āϝāĻŧāĻžāĻ°ā§āĻ• āύ⧀āϤāĻŋ āĻĒā§āϰāϝāĻŧā§‹āϗ⧇āϰ āĻŦāĻŋāĻ•āĻ˛ā§āĻĒāϗ⧁āϞāĻŋ āĻŦā§‹āĻāĻž

āĻ•ā§āϝāĻžāϞāĻŋāϕ⧋ āύ⧀āϤāĻŋāϰ āĻŦāĻŋāĻ•āĻ˛ā§āĻĒāϗ⧁āϞāĻŋ āĻĒā§āϰāĻĻāĻžāύ āĻ•āϰ⧇ āϝāĻž āφāĻĒāύāĻžāϕ⧇ āϏāĻŽāĻ¸ā§āϤ āĻšā§‡āχāύ⧇ āύ⧀āϤāĻŋ āĻĒā§āϰāϝāĻŧā§‹āĻ— āĻ•āϰāϤ⧇ āĻĻ⧇āϝāĻŧāĨ¤ āĻāϟāĻŋ āĻŽāĻžāĻĨāĻžāϝāĻŧ āϰ⧇āϖ⧇, āφāϏ⧁āύ āĻ•ā§āϝāĻžāϞāĻŋāϕ⧋āϤ⧇ āωāĻĒāϞāĻŦā§āϧ āĻŦāĻŋāĻ­āĻŋāĻ¨ā§āύ āύ⧀āϤāĻŋ āĻ•āύāĻĢāĻŋāĻ—āĻžāϰ⧇āĻļāύ āĻŦāĻŋāĻ•āĻ˛ā§āĻĒāϗ⧁āϞāĻŋ āĻĻ⧇āĻ–āĻŋāĨ¤ āύ⧀āĻšā§‡āϰ āĻŦāĻŋāĻ•āĻ˛ā§āĻĒāϗ⧁āϞāĻŋāϰ āϤāĻžāϞāĻŋāĻ•āĻžāϰ āϏāĻ‚āĻ–ā§āϝāĻžāϗ⧁āϞāĻŋ āωāĻĒāϰ⧇āϰ āϚāĻŋāĻ¤ā§āϰ⧇āϰ āϏāĻ‚āĻ–ā§āϝāĻžāϗ⧁āϞāĻŋāϰ āϏāĻžāĻĨ⧇ āĻŽāĻŋāϞ⧇ āϝāĻžāϝāĻŧ⧎

  1. āĻ“āϝāĻŧāĻžāĻ°ā§āĻ•āϞ⧋āĻĄ āĻāĻ¨ā§āĻĄāĻĒāϝāĻŧ⧇āĻ¨ā§āϟ (āĻĒāĻĄ) āύ⧀āϤāĻŋ
  2. āĻšā§‹āĻ¸ā§āϟ āĻāĻ¨ā§āĻĄāĻĒāϝāĻŧ⧇āĻ¨ā§āϟ āύ⧀āϤāĻŋ
  3. ApplyOnForward āĻ…āĻĒāĻļāύ
  4. PreDNAT āύ⧀āϤāĻŋ
  5. āφāύāĻŸā§āĻ°ā§āϝāĻžāĻ•āĻĄ āύ⧀āϤāĻŋ

āĻ•āĻžāĻœā§‡āϰ āϚāĻžāĻĒ⧇āϰ āĻāĻ¨ā§āĻĄāĻĒāϝāĻŧ⧇āĻ¨ā§āĻŸā§‡ (āϕ⧁āĻŦāĻžāϰāύ⧇āϟāϏ āĻĒāĻĄ āĻŦāĻž āĻ“āĻĒ⧇āύāĻ¸ā§āĻŸā§āϝāĻžāĻ• āĻ­āĻŋāĻāĻŽ) āύ⧀āϤāĻŋāϗ⧁āϞāĻŋ āϕ⧀āĻ­āĻžāĻŦ⧇ āĻĒā§āϰāϝāĻŧā§‹āĻ— āĻ•āϰāĻž āĻšāϝāĻŧ āϤāĻž āĻĻ⧇āϖ⧇ āĻļ⧁āϰ⧁ āĻ•āϰāĻž āϝāĻžāĻ• āĻāĻŦāĻ‚ āϤāĻžāϰāĻĒāϰ āĻšā§‹āĻ¸ā§āϟ āĻāĻ¨ā§āĻĄāĻĒāϝāĻŧ⧇āĻ¨ā§āϟāϗ⧁āϞāĻŋāϰ āϜāĻ¨ā§āϝ āύ⧀āϤāĻŋāϰ āĻŦāĻŋāĻ•āĻ˛ā§āĻĒāϗ⧁āϞāĻŋ āĻĻ⧇āϖ⧁āύāĨ¤

āĻ•āĻžāĻœā§‡āϰ āϚāĻžāĻĒ⧇āϰ āĻļ⧇āώ āĻĒāϝāĻŧ⧇āĻ¨ā§āϟ

āĻ“āϝāĻŧāĻžāĻ°ā§āĻ•āϞ⧋āĻĄ āĻāĻ¨ā§āĻĄāĻĒāϝāĻŧ⧇āĻ¨ā§āϟ āύ⧀āϤāĻŋ (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) āύāĻŋāϝāĻŧāĻŽ āϞāĻŋāĻ–āϤ⧇ āĻšāĻŦ⧇āĨ¤ āφāĻĒāύāĻŋ āϝāĻĻāĻŋ āϝāϤ āĻĻā§āϰ⧁āϤ āϏāĻŽā§āĻ­āĻŦ āϏāĻ‚āϝ⧋āĻ—āϗ⧁āϞāĻŋ āĻĒā§āϰāĻ•ā§āϰāĻŋāϝāĻŧāĻž āĻ•āϰāϤ⧇ āϚāĻžāύ, āϤāĻŦ⧇ āĻ•ā§āϝāĻžāϞāĻŋāϕ⧋āϰ āφāύāĻŸā§āĻ°ā§āϝāĻžāĻ•āĻĄ āĻĒāϞāĻŋāϏāĻŋ āĻāĻ•āϟāĻŋ āϏāĻšāϜ āĻāĻŦāĻ‚ āφāϰāĻ“ āĻ•āĻžāĻ°ā§āϝāĻ•āϰ āĻŦāĻŋāĻ•āĻ˛ā§āĻĒāĨ¤ āωāĻĻāĻžāĻšāϰāĻŖāĻ¸ā§āĻŦāϰ⧂āĻĒ, āϝāĻĻāĻŋ āφāĻĒāύāĻŋ āĻāĻ•āϟāĻŋ āĻŦāĻŋāĻļāĻžāϞ āϏāĻ‚āĻ–ā§āϝāĻ• āϏāĻ‚āϝ⧋āĻ— āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰ⧇āύ... āĻŽā§‡āĻŽāĻ•ā§āϝāĻžāĻļ⧇ āĻŦāĻž āĻŦāĻŋāϰ⧁āĻĻā§āϧ⧇ āϏ⧁āϰāĻ•ā§āώāĻžāϰ āĻāĻ•āϟāĻŋ āĻ…āϤāĻŋāϰāĻŋāĻ•ā§āϤ āĻĒāϰāĻŋāĻŽāĻžāĻĒ āĻšāĻŋāϏāĻžāĻŦ⧇ DDOS.

āĻāχ āĻĒāĻĄāĻŧ⧁āύ āĻŦā§āϞāĻ— āĻĒā§‹āĻ¸ā§āϟ (āĻŦāĻž āφāĻŽāĻžāĻĻ⧇āϰ āĻ…āύ⧁āĻŦāĻžāĻĻ) āφāύāĻŸā§āĻ°ā§āϝāĻžāĻ•āĻĄ āύ⧀āϤāĻŋ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰ⧇ āĻ•āĻ°ā§āĻŽāĻ•ā§āώāĻŽāϤāĻž āĻĒāϰ⧀āĻ•ā§āώāĻž āϏāĻš āφāϰāĻ“ āϤāĻĨā§āϝ⧇āϰ āϜāĻ¨ā§āϝāĨ¤

āϝāĻ–āύ āφāĻĒāύāĻŋ Calico globalNetworkPolicy-āϤ⧇ 'doNotTrack: true' āĻ…āĻĒāĻļāύāϟāĻŋ āϏ⧇āϟ āĻ•āϰ⧇āύ, āϤāĻ–āύ āĻāϟāĻŋ āĻāĻ•āϟāĻŋ **āύ⧋-āĻŸā§āĻ°ā§āϝāĻžāĻ•** āĻĒāϞāĻŋāϏāĻŋāϤ⧇ āĻĒāϰāĻŋāĻŖāϤ āĻšāϝāĻŧ āĻāĻŦāĻ‚ āĻĒā§āϝāĻžāϕ⧇āϟ āĻĒā§āϰāϏ⧇āϏāĻŋāĻ‚ āĻĒāĻžāχāĻĒāϞāĻžāχāύ⧇āϰ āĻāϕ⧇āĻŦāĻžāϰ⧇ āĻĒā§āϰāĻžāĻĨāĻŽāĻŋāĻ• āĻĒāĻ°ā§āϝāĻžāϝāĻŧ⧇ āĻĒā§āϰāϝāĻŧā§‹āĻ— āĻ•āϰāĻž āĻšāϝāĻŧāĨ¤ LinuxāωāĻĒāϰ⧇āϰ āĻĄāĻžāϝāĻŧāĻžāĻ—ā§āϰāĻžāĻŽāϟāĻŋ āĻĻ⧇āĻ–āϞ⧇ āĻŦā§‹āĻāĻž āϝāĻžāϝāĻŧ, āĻ•āĻžāύ⧇āĻ•āĻļāύ āĻŸā§āĻ°ā§āϝāĻžāĻ•āĻŋāĻ‚ (conntrack) āĻļ⧁āϰ⧁ āĻšāĻ“āϝāĻŧāĻžāϰ āφāϗ⧇ āϰ āĻŸā§‡āĻŦāĻŋāϞ⧇āϰ PREROUTING āĻāĻŦāĻ‚ OUTPUT āĻšā§‡āχāύ⧇ āφāύāĻŸā§āĻ°ā§āϝāĻžāĻ•āĻĄ āĻĒāϞāĻŋāϏāĻŋāϗ⧁āϞ⧋ āĻĒā§āϰāϝāĻŧā§‹āĻ— āĻ•āϰāĻž āĻšāϝāĻŧāĨ¤ āϝāĻ–āύ āϕ⧋āύ⧋ āĻĒā§āϝāĻžāϕ⧇āϟ āĻāĻ•āϟāĻŋ āφāύāĻŸā§āĻ°ā§āϝāĻžāĻ•āĻĄ āĻĒāϞāĻŋāϏāĻŋ āĻĻā§āĻŦāĻžāϰāĻž āĻ…āύ⧁āĻŽā§‹āĻĻāĻŋāϤ āĻšāϝāĻŧ, āϤāĻ–āύ āϏ⧇āχ āĻĒā§āϝāĻžāϕ⧇āĻŸā§‡āϰ āϜāĻ¨ā§āϝ āĻ•āĻžāύ⧇āĻ•āĻļāύ āĻŸā§āĻ°ā§āϝāĻžāĻ•āĻŋāĻ‚ āύāĻŋāĻˇā§āĻ•ā§āϰāĻŋāϝāĻŧ āĻ•āϰāϤ⧇ āĻāϟāĻŋāϕ⧇ āϚāĻŋāĻšā§āύāĻŋāϤ āĻ•āϰāĻž āĻšāϝāĻŧāĨ¤ āĻāϰ āĻŽāĻžāύ⧇ āĻšāϞ⧋:

  • āφāύāĻŸā§āĻ°ā§āϝāĻžāĻ•āĻĄ āύ⧀āϤāĻŋ āĻĒā§āϰāϤāĻŋ-āĻĒā§āϝāĻžāϕ⧇āϟ āĻ­āĻŋāĻ¤ā§āϤāĻŋāϤ⧇ āĻĒā§āϰāϝāĻŧā§‹āĻ— āĻ•āϰāĻž āĻšāϝāĻŧāĨ¤ āϏāĻ‚āϝ⧋āϗ⧇āϰ (āĻŦāĻž āĻĒā§āϰāĻŦāĻžāĻš) āϕ⧋āύ āϧāĻžāϰāĻŖāĻž āύ⧇āχāĨ¤ āϏāĻ‚āϝ⧋āϗ⧇āϰ āĻ…āĻ­āĻžāĻŦ⧇āϰ āĻŦ⧇āĻļ āĻ•āϝāĻŧ⧇āĻ•āϟāĻŋ āϗ⧁āϰ⧁āĻ¤ā§āĻŦāĻĒā§‚āĻ°ā§āĻŖ āĻĒāϰāĻŋāĻŖāϤāĻŋ āϰāϝāĻŧ⧇āϛ⧇:
  • āφāĻĒāύāĻŋ āϝāĻĻāĻŋ āĻ…āύ⧁āϰ⧋āϧ āĻāĻŦāĻ‚ āĻĒā§āϰāϤāĻŋāĻ•ā§āϰāĻŋāϝāĻŧāĻž āωāĻ­āϝāĻŧ āĻŸā§āĻ°ā§āϝāĻžāĻĢāĻŋāϕ⧇āϰ āĻ…āύ⧁āĻŽāϤāĻŋ āĻĻāĻŋāϤ⧇ āϚāĻžāύ, āϤāĻžāĻšāϞ⧇ āφāĻĒāύāĻžāϰ āχāύāĻŦāĻžāωāĻ¨ā§āĻĄ āĻāĻŦāĻ‚ āφāωāϟāĻŦāĻžāωāĻ¨ā§āĻĄ āωāĻ­āϝāĻŧ⧇āϰ āϜāĻ¨ā§āϝ āĻāĻ•āϟāĻŋ āύāĻŋāϝāĻŧāĻŽ āĻĒā§āϰāϝāĻŧā§‹āϜāύ (āϝ⧇āĻšā§‡āϤ⧁ āĻ•ā§āϝāĻžāϞāĻŋāϕ⧋ āϏāĻžāϧāĻžāϰāĻŖāϤ āĻĒā§āϰāϤāĻŋāĻ•ā§āϰāĻŋāϝāĻŧāĻž āĻŸā§āĻ°ā§āϝāĻžāĻĢāĻŋāĻ•āϕ⧇ āĻ…āύ⧁āĻŽā§‹āĻĻāĻŋāϤ āĻšāĻŋāϏāĻžāĻŦ⧇ āϚāĻŋāĻšā§āύāĻŋāϤ āĻ•āϰāϤ⧇ āĻ•āύāĻŸā§āĻ°ā§āϝāĻžāĻ• āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰ⧇)āĨ¤
  • āφāύāĻŸā§āĻ°ā§āϝāĻžāĻ•āĻĄ āύ⧀āϤāĻŋ Kubernetes āĻ“āϝāĻŧāĻžāĻ°ā§āĻ•āϞ⧋āĻĄ (āĻĒāĻĄ) āĻāϰ āϜāĻ¨ā§āϝ āĻ•āĻžāϜ āĻ•āϰ⧇ āύāĻž, āĻ•āĻžāϰāĻŖ āĻāχ āĻ•ā§āώ⧇āĻ¤ā§āϰ⧇ āĻĒāĻĄ āĻĨ⧇āϕ⧇ āĻŦāĻšāĻŋāĻ°ā§āĻ—āĻžāĻŽā§€ āϏāĻ‚āϝ⧋āĻ— āĻŸā§āĻ°ā§āϝāĻžāĻ• āĻ•āϰāĻžāϰ āϕ⧋āύ āωāĻĒāĻžāϝāĻŧ āύ⧇āχāĨ¤
  • NAT āφāύāĻŸā§āĻ°ā§āϝāĻžāĻ•āĻĄ āĻĒā§āϝāĻžāϕ⧇āϟāϗ⧁āϞāĻŋāϰ āϏāĻžāĻĨ⧇ āϏāĻ āĻŋāĻ•āĻ­āĻžāĻŦ⧇ āĻ•āĻžāϜ āĻ•āϰ⧇ āύāĻž (āϝ⧇āĻšā§‡āϤ⧁ āĻ•āĻžāĻ°ā§āύ⧇āϞ āĻ•āύāĻŸā§āϰāĻžāϕ⧇ NAT āĻŽā§āϝāĻžāĻĒāĻŋāĻ‚ āϏāĻ‚āϰāĻ•ā§āώāĻŖ āĻ•āϰ⧇)āĨ¤
  • āφāύāĻŸā§āĻ°ā§āϝāĻžāĻ•āĻĄ āύ⧀āϤāĻŋāϤ⧇ "āϏāĻŽāĻ¸ā§āϤāϕ⧇ āĻ…āύ⧁āĻŽāϤāĻŋ āĻĻāĻŋāύ" āύāĻŋāϝāĻŧāĻŽā§‡āϰ āĻŽāĻ§ā§āϝ āĻĻāĻŋāϝāĻŧ⧇ āϝāĻžāĻ“āϝāĻŧāĻžāϰ āϏāĻŽāϝāĻŧ, āϏāĻŽāĻ¸ā§āϤ āĻĒā§āϝāĻžāϕ⧇āϟ āφāύāĻŸā§āĻ°ā§āϝāĻžāĻ•āĻĄ āĻšāĻŋāϏāĻžāĻŦ⧇ āϚāĻŋāĻšā§āύāĻŋāϤ āĻ•āϰāĻž āĻšāĻŦ⧇āĨ¤ āĻāϟāĻŋ āĻĒā§āϰāĻžāϝāĻŧ āϏāĻŦāϏāĻŽāϝāĻŧāχ āφāĻĒāύāĻŋ āϝāĻž āϚāĻžāύ āϤāĻž āĻšāϝāĻŧ āύāĻž, āϤāĻžāχ āφāύāĻŸā§āĻ°ā§āϝāĻžāĻ• āĻ•āϰāĻž āύ⧀āϤāĻŋāϗ⧁āϞāĻŋāϰ āĻĻā§āĻŦāĻžāϰāĻž āĻ…āύ⧁āĻŽā§‹āĻĻāĻŋāϤ āĻĒā§āϝāĻžāϕ⧇āϟāϗ⧁āϞāĻŋ āϏāĻŽā§āĻĒāĻ°ā§āϕ⧇ āϖ⧁āĻŦ āύāĻŋāĻ°ā§āĻŦāĻžāϚāύ⧀ āĻšāĻ“āϝāĻŧāĻž āϗ⧁āϰ⧁āĻ¤ā§āĻŦāĻĒā§‚āĻ°ā§āĻŖ (āĻāĻŦāĻ‚ āĻŦ⧇āĻļāĻŋāϰāĻ­āĻžāĻ— āĻŸā§āĻ°ā§āϝāĻžāĻĢāĻŋāĻ•āϕ⧇ āĻ¸ā§āĻŦāĻžāĻ­āĻžāĻŦāĻŋāĻ• āĻŸā§āĻ°ā§āϝāĻžāĻ• āĻ•āϰāĻž āύ⧀āϤāĻŋāϗ⧁āϞāĻŋāϰ āĻŽāĻžāĻ§ā§āϝāĻŽā§‡ āϝ⧇āϤ⧇ āĻĻ⧇āϝāĻŧ)⧎
  • āφāύāĻŸā§āĻ°ā§āϝāĻžāĻ•āĻĄ āύ⧀āϤāĻŋāϗ⧁āϞāĻŋ āĻĒā§āϝāĻžāϕ⧇āϟ āĻĒā§āϰāĻ•ā§āϰāĻŋāϝāĻŧāĻžāĻ•āϰāĻŖ āĻĒāĻžāχāĻĒāϞāĻžāχāύ⧇āϰ āĻāϕ⧇āĻŦāĻžāϰ⧇ āĻļ⧁āϰ⧁āϤ⧇ āĻĒā§āϰāϝāĻŧā§‹āĻ— āĻ•āϰāĻž āĻšāϝāĻŧāĨ¤ āĻ•ā§āϝāĻžāϞāĻŋāϕ⧋ āύ⧀āϤāĻŋāϗ⧁āϞāĻŋ āϤ⧈āϰāĻŋ āĻ•āϰāĻžāϰ āϏāĻŽāϝāĻŧ āĻāϟāĻŋ āĻŦā§‹āĻāĻž āϖ⧁āĻŦāχ āϗ⧁āϰ⧁āĻ¤ā§āĻŦāĻĒā§‚āĻ°ā§āϪ⧎ āφāĻĒāύāĻžāϰ āĻ…āĻ°ā§āĻĄāĻžāϰ āϏāĻš āĻāĻ•āϟāĻŋ āĻĒāĻĄ āĻĒāϞāĻŋāϏāĻŋ āĻĨāĻžāĻ•āϤ⧇ āĻĒāĻžāϰ⧇:1 āĻāĻŦāĻ‚ āĻ…āĻ°ā§āĻĄāĻžāϰ:1000 āϏāĻš āĻāĻ•āϟāĻŋ āφāύāĻŸā§āĻ°ā§āϝāĻžāĻ•āĻĄ āĻĒāϞāĻŋāϏāĻŋāĨ¤ āĻāϟāĻž āϕ⧋āύ āĻŦā§āϝāĻžāĻĒāĻžāϰ āύāĻž. āĻĒāĻĄā§‡āϰ āϜāĻ¨ā§āϝ āύ⧀āϤāĻŋāϰ āφāϗ⧇ āφāύāĻŸā§āĻ°ā§āϝāĻžāĻ•āĻĄ āύ⧀āϤāĻŋ āĻĒā§āϰāϝāĻŧā§‹āĻ— āĻ•āϰāĻž āĻšāĻŦ⧇āĨ¤ āφāύāĻŸā§āĻ°ā§āϝāĻžāĻ•āĻĄ āύ⧀āϤāĻŋāϗ⧁āϞāĻŋ āĻļ⧁āϧ⧁āĻŽāĻžāĻ¤ā§āϰ āύāĻŋāĻœā§‡āĻĻ⧇āϰ āĻŽāĻ§ā§āϝ⧇ āĻŽā§ƒāĻ¤ā§āϝ⧁āĻĻāĻ¨ā§āĻĄā§‡āϰ āφāĻĻ⧇āĻļāϕ⧇ āϏāĻŽā§āĻŽāĻžāύ āĻ•āϰ⧇⧎

āϝ⧇āĻšā§‡āϤ⧁ doNotTrack āĻĒāϞāĻŋāϏāĻŋāϰ āĻ…āĻ¨ā§āϝāϤāĻŽ āϞāĻ•ā§āĻˇā§āϝ āĻšāϞ⧋ āĻĒā§āϝāĻžāϕ⧇āϟ āĻĒā§āϰāϏ⧇āϏāĻŋāĻ‚ āĻĒāĻžāχāĻĒāϞāĻžāχāύ⧇āϰ āϝāϤ āϤāĻžāĻĄāĻŧāĻžāϤāĻžāĻĄāĻŧāĻŋ āϏāĻŽā§āĻ­āĻŦ āĻĒā§āϰāĻžāĻĨāĻŽāĻŋāĻ• āĻĒāĻ°ā§āϝāĻžāϝāĻŧ⧇ āύ⧀āϤāĻŋāϟāĻŋ āĻĒā§āϰāϝāĻŧā§‹āĻ— āĻ•āϰāĻž, LinuxdoNotTrack āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāĻžāϰ āϏāĻŽāϝāĻŧ Calico-āϤ⧇ applyOnForward āĻ…āĻĒāĻļāύāϟāĻŋ āĻĒā§āϰāϝāĻŧā§‹āϜāύāĨ¤ āĻĒā§āϝāĻžāϕ⧇āϟ āĻĒā§āϰāϏ⧇āϏāĻŋāĻ‚ āĻĄāĻžāϝāĻŧāĻžāĻ—ā§āϰāĻžāĻŽāϟāĻŋ āĻĻ⧇āĻ–āϞ⧇ āĻŦā§‹āĻāĻž āϝāĻžāϝāĻŧ āϝ⧇, āϝ⧇āϕ⧋āύ⧋ āϰāĻžāωāϟāĻŋāĻ‚ āϏāĻŋāĻĻā§āϧāĻžāĻ¨ā§āϤ⧇āϰ āφāϗ⧇ āφāύāĻŸā§āĻ°ā§āϝāĻžāĻ•āĻĄ (5) āĻĒāϞāĻŋāϏāĻŋ āĻĒā§āϰāϝāĻŧā§‹āĻ— āĻ•āϰāĻž āĻšāϝāĻŧāĨ¤ āĻŸā§āĻ°ā§āϝāĻžāĻĢāĻŋāĻ•āϕ⧇ āĻšā§‹āĻ¸ā§āϟ āĻĒā§āϰāϏ⧇āϏ⧇ āĻĒāĻžāĻ āĻžāύ⧋ āϝ⧇āϤ⧇ āĻĒāĻžāϰ⧇, āĻ…āĻĨāĻŦāĻž āĻāϟāĻŋāϕ⧇ āĻāĻ•āϟāĻŋ āĻĒāĻĄ āĻŦāĻž āĻ…āĻ¨ā§āϝ āϕ⧋āύ⧋ āύ⧋āĻĄā§‡ āĻĢāϰ⧋āϝāĻŧāĻžāĻ°ā§āĻĄ āĻ•āϰāĻž āϝ⧇āϤ⧇ āĻĒāĻžāϰ⧇āĨ¤

āĻĢāϞāĻžāĻĢāϞ

āφāĻŽāϰāĻž āĻ•ā§āϝāĻžāϞāĻŋāϕ⧋āϤ⧇ āĻŦāĻŋāĻ­āĻŋāĻ¨ā§āύ āύ⧀āϤāĻŋāϰ āĻŦāĻŋāĻ•āĻ˛ā§āĻĒāϗ⧁āϞāĻŋ (āĻšā§‹āĻ¸ā§āϟ āĻāĻ¨ā§āĻĄāĻĒāϝāĻŧ⧇āĻ¨ā§āϟ, āĻ…ā§āϝāĻžāĻĒā§āϞāĻžāχāĻ…āύāĻĢāϰāĻ“āϝāĻŧāĻžāĻ°ā§āĻĄ, āĻĒā§āϰāĻŋāĻĄāĻŋāĻāύāĻāϟāĻŋ āĻāĻŦāĻ‚ āφāύāĻŸā§āĻ°ā§āϝāĻžāĻ•āĻĄ) āĻĻ⧇āϖ⧇āĻ›āĻŋ āĻāĻŦāĻ‚ āϕ⧀āĻ­āĻžāĻŦ⧇ āϏ⧇āϗ⧁āϞāĻŋ āĻĒā§āϝāĻžāϕ⧇āϟ āĻĒā§āϰāĻ•ā§āϰāĻŋāϝāĻŧāĻžāĻ•āϰāϪ⧇āϰ āĻĒāĻĨ⧇ āĻĒā§āϰāϝāĻŧā§‹āĻ— āĻ•āϰāĻž āĻšāϝāĻŧāĨ¤ āϤāĻžāϰāĻž āϕ⧀āĻ­āĻžāĻŦ⧇ āĻ•āĻžāϜ āĻ•āϰ⧇ āϤāĻž āĻŦā§‹āĻāĻž āĻ•āĻžāĻ°ā§āϝāĻ•āϰ āĻāĻŦāĻ‚ āύāĻŋāϰāĻžāĻĒāĻĻ āύ⧀āϤāĻŋ āĻŦāĻŋāĻ•āĻžāĻļ⧇ āϏāĻšāĻžāϝāĻŧāϤāĻž āĻ•āϰ⧇āĨ¤ āĻ•ā§āϝāĻžāϞāĻŋāϕ⧋āϰ āϏāĻžāĻĨ⧇ āφāĻĒāύāĻŋ āĻāĻ•āϟāĻŋ āĻŦ⧈āĻļā§āĻŦāĻŋāĻ• āύ⧇āϟāĻ“āϝāĻŧāĻžāĻ°ā§āĻ• āύ⧀āϤāĻŋ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāϤ⧇ āĻĒāĻžāϰ⧇āύ āϝāĻž āĻāĻ•āϟāĻŋ āϞ⧇āĻŦ⧇āϞ⧇ (āύ⧋āĻĄ āĻāĻŦāĻ‚ āĻĒāĻĄā§‡āϰ āĻāĻ•āϟāĻŋ āĻ—ā§āϰ⧁āĻĒ) āĻĒā§āϰāϝ⧋āĻœā§āϝ āĻāĻŦāĻ‚ āĻŦāĻŋāĻ­āĻŋāĻ¨ā§āύ āĻĒāϰāĻžāĻŽāĻŋāϤāĻŋ āϏāĻš āύ⧀āϤāĻŋ āĻĒā§āϰāϝāĻŧā§‹āĻ— āĻ•āϰāϤ⧇ āĻĒāĻžāϰ⧇āύāĨ¤ āĻāϟāĻŋ āύāĻŋāϰāĻžāĻĒāĻ¤ā§āϤāĻž āĻāĻŦāĻ‚ āύ⧇āϟāĻ“āϝāĻŧāĻžāĻ°ā§āĻ• āĻĄāĻŋāϜāĻžāχāύ āĻĒ⧇āĻļāĻžāĻĻāĻžāϰāĻĻ⧇āϰ āĻ•ā§āϝāĻžāϞāĻŋāϕ⧋ āύ⧀āϤāĻŋāϰ āϏāĻžāĻĨ⧇ āĻāĻ•āϟāĻŋ āĻāĻ•āĻ• āύ⧀āϤāĻŋ āĻ­āĻžāώāĻž āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰ⧇ āĻāĻ•āĻŦāĻžāϰ⧇ "āϏāĻŦāĻ•āĻŋāϛ⧁" (āĻāĻ¨ā§āĻĄāĻĒāϝāĻŧ⧇āĻ¨ā§āϟ āĻĒā§āϰāĻ•āĻžāϰāϗ⧁āϞāĻŋ) āϏ⧁āϰāĻ•ā§āώāĻŋāϤ āĻ•āϰāϤ⧇ āĻĻ⧇āϝāĻŧāĨ¤

āĻ¸ā§āĻŦā§€āĻ•ā§ƒāϤāĻŋ: āφāĻŽāĻŋ āϧāĻ¨ā§āϝāĻŦāĻžāĻĻ āϜāĻžāύāĻžāϤ⧇ āϚāĻžāχ āĻļāύ āĻ•ā§āĻ°ā§āϝāĻžāĻŽā§āĻĒāϟāύ и āφāϞ⧇āĻ•ā§āϏāĻž āĻĒā§‹āϞāĻŋāϟāĻž āϤāĻžāĻĻ⧇āϰ āĻĒāĻ°ā§āϝāĻžāϞ⧋āϚāύāĻž āĻāĻŦāĻ‚ āĻŽā§‚āĻ˛ā§āϝāĻŦāĻžāύ āϤāĻĨā§āϝ⧇āϰ āϜāĻ¨ā§āϝāĨ¤

āωāĻ¤ā§āϏ: www.habr.com

DDoS āϏ⧁āϰāĻ•ā§āώāĻž, VPS VDS āϏāĻžāĻ°ā§āĻ­āĻžāϰ āϏāĻš āϏāĻžāχāϟāϗ⧁āϞāĻŋāϰ āϜāĻ¨ā§āϝ āύāĻŋāĻ°ā§āĻ­āϰāϝ⧋āĻ—ā§āϝ āĻšā§‹āĻ¸ā§āϟāĻŋāĻ‚ āĻ•āĻŋāύ⧁āύ đŸ”Ĩ DDoS āϏ⧁āϰāĻ•ā§āώāĻž āϏāĻš āύāĻŋāĻ°ā§āĻ­āϰāϝ⧋āĻ—ā§āϝ āĻ“āϝāĻŧ⧇āĻŦāϏāĻžāχāϟ āĻšā§‹āĻ¸ā§āϟāĻŋāĻ‚ āĻ•āĻŋāύ⧁āύ, VPS VDS āϏāĻžāĻ°ā§āĻ­āĻžāϰ | ProHoster