我们知道kuberentes的网络在k8s中是下沉的,为了更好理解kubernetes-cni的插件在同节点的网络中的通讯情况,
我们安装ensp来模拟两层设备在网络中的使用
- 当发起一条ping请求的时候,将会在arp中进行广播
- 当收到这个ip是自己的时候回应,不是则丢弃
在两层网络中,主要用来验证如下的这两条
PC配置ip
选中所有启动
双击交换机你可以看到启动的页面,模拟的真实交换机的
此时mac地址表是空的
我们点击模拟器交换机连接线的绿点,选择开始抓包
只要你安装了这个软件的话就会自动打开,首先看到的是stp,也就是生成树协议,主要在二层用来防止环路
为了仿制网络震荡,还会在接口配置网络端口。
在三层里面使用的是ttl来防止环路,ttl会减少自己的值来衰减。
我们开始找一台pc1的节点ping pc2
而后在抓包工具中查看
这里很明显的在问who has 192.168.1.20 tell 192.168.1.10
,翻译过来的意思就是,谁是192.168.1.20,回复给192.168.1.10,紧接着就回复了192.168.1.20 is at 54:89:98:23:4f:79
,意思就是192.168.1.20 位于54:89:98:23:4f:79
,然后就有了通讯四元组,源ip源mac,目标ip目标mac
- 如果没有vlan的情况下,是属于通一个广播域
这个广播的包是给所有人发的,只有自己是这个ip才会回复,如果不是,就丢弃了
此时在到交换机上运行display mac-address
,可以看到转发一个列表,并附带了一个交换机的端口信息,type是动态生成的