k8s网络原理

https://blog.csdn.net/watermelonbig/article/details/80646988

k8s中,每个 Pod 都有一个独立的 IP 地址,所有 Pod 在一个网络空间中,不管它们是否在同一个 Node上,都可以通过对方的 IP 进行访问。用户不需要考虑如何建立 Pod 间的连接,也不需要考虑将容器端口映射到主机端口等问题。

Linux 在网络栈中引入了命名空间(Network Namespace),这些独立的协议栈被隔离到不同的命名空间中。处于不同命名空间的网络栈是完全隔离的,彼此之间无法通信,就好像两个 “平行宇宙”。通过这种对网络资源的隔离,就能在一个宿主机上虚拟多个不同的网络环境。 

Docker 也正是利用了网络的命名空间特性,实现了不同容器之间网络的隔离。

在 Linux 的网络命名空间内可以有自己独立的路由表及独立的 iptables/Netfilter 设置来提供包转发、NAT 及 IP 包过滤等功能。

原文地址:https://www.cnblogs.com/lexiaofei/p/11459439.html