Is it possible to bind a Kubernetes pod or container to a physical network interface of the host such that all traffic arriving on the interface is sent to the pod (not just HTTP traffic on a specific port)?
Specifically, I want to start a VPN client as a pod on Kubernetes and bind it to a network interface. All traffic arriving on the interface should go via the pod through the VPN.
I found something about Network Plugins in K8s, but that seems to be something else.
If I understood your question correctly you can do it. I am exposing an amqp application just by exposing the amqp port of my application via a NodePort service. What you need to do is define a new service which is almost exactly a service that you use for internal interaction but use LoadBalancer
or NodePort
as the service type.