曲径通幽论坛

 找回密码
 立即注册
搜索
查看: 3321|回复: 0
打印 上一主题 下一主题

br0 是什么?

[复制链接]

4917

主题

5879

帖子

3万

积分

GROAD

曲径通幽,安觅芳踪。

Rank: 6Rank: 6

积分
34382
跳转到指定楼层
楼主
发表于 2015-1-7 23:40:25 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
br0 是内核虚拟的一个用来实现桥接的网桥设备,该虚拟设备可以绑定若干个以太网接口设备,从而将它们桥接起来,如下图所示:


Linux 内核支持网口的桥接,但与单纯的交换机不通。普通交换机只是个二层设备,对于收到的报文,要么转发,要么丢弃。小型交换机里只需要一块交换芯片即可,并不需要 CPU。但运行着 linux 内核的机器本身就是一台主机,有可能就是网络报文的目的地,所以对于收到的报文除了转发和丢弃,还可能将其送到网络协议栈的上层(网络层),从而被自己消化。

下面是在一台装有嵌入式 linux 系统的路由上使用 ifconfig 的打印结果(部分),这里可以看到 br0 的身影:



网桥设备 br0 绑定了 eth0 和 eth1。对于网络上层协议来说,只看到 br0,因为桥接是在数据链路层实现的,而上层并不需要关心桥接的细节。于是上层协议栈需要将发送的报文送到 br0,网桥设备的处理代码再进行判断报文是转发到 eth0 还是 eth1 上,或者两者皆是;反过来,从 eth0 或 eth1 上接收到的报文也会被提交到网桥的处理代码,在这里会判断报文是转发,还是丢弃,或者是提交到协议栈上层。

有时候 eth0 和 eth1 可能会作为报文的源地址或目的地址,直接参与报文的发送与接收(绕过网桥)。

网桥有两个重要特点:1 是 MAC 地址学习;2 是报文转发。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|曲径通幽 ( 琼ICP备11001422号-1|公安备案:46900502000207 )

GMT+8, 2024-5-6 19:00 , Processed in 0.082365 second(s), 31 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表