Удивительное рядом, но "чистый" Kubernetes не содержит никакой реализации сетевого взаимодействия. Почему? Потому что это этих реализаций не одна, не две и даже не три. И администратор кластера выбирает для себя CNI, Container Network Interface.
С точки зрения разработчика, всё выглядит гладко, ведь он вообще не должен думать о том, как там реализована сеть, с помощью Flannel, Calico или при помощи куклы вуду и пакетов с пересылкой голубями. Так, чаще всего, и бывает.
А вот администратору кластера нужно хорошо разбираться в том, как на уровне абстракций Linux работает сеть. Поэтому мы возьмем наиболее компромиссный (и наиболее распространенный на сегодня) CNI по имени Calico, вооружимся отверткой и посмотрим, что там внутри. veth, BGP, записи в таблице маршрутизации по /32 и остальные прелести в комплекте.
Возможна адаптация под любой другой сетевой плагин (Cilium, Flannel) или обзор сразу всех плагинов