最准方式是进容器用 ip addr 查 eth0;宿主机侧需结合 docker inspect 与 ip link show 定位 veth 接口,并用 brctl show 或 ip link show master docker0 确认挂载关系。

直接查容器内部网卡配置,最准的方式是进容器用 ip addr 或 ip link show;想看宿主机视角下这个容器对应的虚拟网卡(比如 veth 设备),得结合 docker inspect 和宿主机命令配合查。
查容器内部的网卡接口
这是最直观的方式,看到的是容器 Network Namespace 里实际生效的网络设备:
- 运行
docker exec -it ip addr,输出中eth0就是默认网卡,含 IP、MAC、子网掩码、状态等完整信息 - 如果容器没装
iproute2(比如精简镜像),可用docker exec cat /sys/class/net/eth0/address查 MAC,cat /proc/sys/net/ipv4/conf/eth0/forwarding查转发开关 - 注意:
ifconfig在很多新镜像里已被移除,优先用ip系列命令
查宿主机上对应的 veth 虚拟网卡
每个容器的 eth0 实际连着一对 veth 设备,一端在容器内,另一端挂在宿主机的 docker0 网桥上。要定位宿主机侧那块网卡:
在 Linux 上通过 Docker 运行 OpenClaw,并使用 Tailscale 实现远程访问。⚠️ 涉及 sudo、Docker、Tailscale和凭证挂载——请先查阅安全章节...
- 先用
docker inspect | grep -A 10 "NetworkSettings"找到EndpointID或MacAddress - 再执行
ip link show | grep -A 1 -B 1 <macaddress></macaddress>,就能筛出宿主机上的vethxxxx接口 - 确认它是否挂到了
docker0:运行brctl show docker0(需装bridge-utils)或ip link show master docker0
查网桥和整体网络拓扑
了解容器所处网络的上下文,有助于判断网卡配置是否合理:
-
docker network inspect bridge查默认 bridge 网络的子网、网关(即docker0的 IP)、已连接容器列表及各自分配的 IP -
ip addr show docker0直接看宿主机上docker0接口的地址、UP 状态、MTU 等 - 想看所有容器共享的路由规则:在容器内运行
ip route,通常默认路由指向172.17.0.1(即docker0的 IP)
查自定义网络下的网卡行为
如果你用了 docker network create 创建了独立网络(比如 mynet),网卡逻辑一样,只是换了个网桥:
-
docker network inspect mynet会显示该网络专属的网桥名(如br-xxxx)、子网、网关,以及各容器在该网络中的 IP 和 MAC - 宿主机上对应网桥设备可通过
ip link show | grep br-找到,它的 IP 地址就是容器的网关 - 容器内仍只有
eth0,但 IP 段、网关都来自自定义网络配置,不是默认的172.17.0.0/16










