Linux bridge
原文地址:http://linux.chinaitlab.com/kernel/836035.html
linux内核通过一个虚拟的网桥设备(net_device)实现桥接,这个设备可以绑定若干个以太网接口设备,从而将它们桥接起来。
网桥设备br0绑定了eth0和eth1,对于网络协议栈的上层来说,只看得到br0,因为桥接是在数据链路层实现的,上层不需要关心桥接的细节,对于协议栈上层需要发送的报文就被送到br0,网桥设备的处理代码判断该报文被转发到eth0或eth1,或两者皆是,反过来,从eth0或eth1接收到的报文被提交给网桥的处理代码,在这里会判断该报文的转发,丢弃或者提交到上层网络,当然eth0,eth1也可以作为报文的源地址或目的地址,直接参与报文的发送与接收,从而绕过网桥。
相关的数据结构
最左边的net_device是代表一个网桥的虚拟设备结构,它关联了一个net_bridge结构,这是网桥设备所特有的数据结构,在net_bridge中,port_list成员下挂
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律