How-To: Identify The Virtual Interface of a Pod in the Root Namespace Using Flannel as the Network Backend
Problem
Identify the virtual interface of a particular pod in the root namespace of the node using flannel as Network backend.
Environment
- Platform9 Managed Kubernetes - All Versions
- Flannel
Procedure
- Use the docker command to identify the pause container for the pod as it holds the network namespace for the pod.
- Run docker inspect on the container Id obtained from the above command and look for the SandboxKey to get the namespace created for the pod.
- Use nsenter to get the interface details within the pod namespace.
ip netns command can not be used for the docker namespaces as it only knows about namespaces listed in /var/run/netns/
- Run ethtool on the interface with the pod's IP in the namespace above to obtain the peer index of the Veth-pair for the interface
- List the network interface on the node (root namespace) using ip command, the interface listed at the index obtained in the above step ( 27 in this case ) is the virtual interface for the pod in the root namespace.
Was this page helpful?