相关文章:
《Linux 虚拟网络设备 veth-pair》 linux基础
《Linux虚拟网络设备之veth(arp incomplete)》
Docker网络(veth、网桥、host、container、none) docker上网络概述
Docker的网络配置 1 初识 docker 精讲
Docker的网络配置 2 配置 DNS和主机名
Docker的网络配置 3 user-defined网络
Docker的网络配置 4 内嵌的DNS server
Docker的网络配置 5 将容器与外部世界连接
Docker的网络配置 6 docker-proxy
【云原生】网络之桥接(网卡对) openshift下的网络桥接模式
背景
默认openshift 网络也是bridge模式,以一对网卡形式呈现。加入存在容器A,对应容器内的网卡标识为veth0,那么和其成对出现的主机上的标识是什么呢?
我们通过 brctl show docker0来查看主机全部的对端标识:
[root@EMS3 ~]# brctl show docker0
bridge name bridge id STP enabled interfaces
docker0 8000.0242aaf394c9 no veth6f3287d
vethxxx
vethyyy
但是哪个主机上的网卡是和目标的容器对应的呢
?下面就来提供方法查看。
在容器内查看对端
进入容器查看:
# cd /sys/devices/virtual/net/eth0
# cat iflink
883
得到883,这个值对应该容器 在主机上的网卡标识
也体现在容器内的ip:
/home/zenap # ip a '查看全部的ip信息'
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN qlen 1
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
884: eth0@if883: <BROADCAST,MULTICAST,UP,LOWER_UP,M-DOWN> mtu 1450 qdisc noqueue state UP qlen 1000 '注意884: eth0@if883'
link/ether 66:fd:b8:39:9d:c7 brd ff:ff:ff:ff:ff:ff
inet 100.100.1.55/16 brd 100.100.255.255 scope global eth0
valid_lft forever preferred_lft forever
886: eth1@if885: <BROADCAST,MULTICAST,UP,LOWER_UP,M-DOWN> mtu 1450 qdisc noqueue state UP qlen 1000
link/ether fe:7c:ca:07:74:d7 brd ff:ff:ff:ff:ff:ff
inet 172.33.1.199/16 brd 172.33.255.255 scope global eth1
valid_lft forever preferred_lft forever
注意 884: eth0@if883,表明内部的eth0标识为884,对应主机的对端为883
在主机验证
[root@paas-controller-3:/home/pict]$ ip a|egrep -A 3 '^883.*:'
883: vethO1Z47c0x@if884: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1450 qdisc noqueue master ovs-system state UP group default qlen 1000
link/ether 1e:9f:3c:50:c4:e7 brd ff:ff:ff:ff:ff:ff link-netnsid 46
inet6 fe80::1c9f:3cff:fe50:c4e7/64 scope link
valid_lft forever preferred_lft forever
注意 883: vethO1Z47c0x@if884, 883标识主机的网卡,对端(某个容器)为884,正好是我们之前查看到的容器内的网卡标识。说明这俩是一对的。