netns:从另一个命名空间的默认命名空间执行命令

问题描述

我使用 nets 命名空间(下面的命令)ssh 进入一台 linux 机器

ip netns exec NAME_SPACE ssh [email protected]

从那里我想在认命名空间中执行一些命令(比如“ifconfig”)。

解决方法

如果您知道某个进程正在默认网络命名空间(通常是进程号 1)中运行,则可以使用 nsenter 之类的工具在同一网络命名空间中运行命令(-n 选项) :

# nsenter -t 1 -n ifconfig