linux中的网桥bridge

网桥

    桥接与网桥
    桥接工作在OSI网络参考模型的第二层数据链路层,是一种以MAC地址来作为判断依据来将网络划分成两个不同物理段的技术,其被广泛应用于早期的计算机网络当中。
    以太网是一种共享网络传输介质的技术,在这种技术下,如果一台计算机发送数据的时候,在同一物理网络介质上的计算机都需要接收,在接收后分析目的MAC地址,如果是属于目的MAC地址和自己的MAC地址相同便进行封装提供给网络层,如果目的MAC地址不是自己的MAC地址,那么就丢弃数据包。
    桥接的工作机制是将物理网络段(也就是常说的冲突域)进行分隔,根据MAC地址来判断连接两个物理网段的计算机的数据包发送。
    网桥实际上是一种控制冲突域流量的设备。
    首先,bridge是一个虚拟网络设备,所以具有网络设备的特征,可以配置IP、MAC地址等;其次,bridge是一个虚拟交换机,和物理交换机有类似的功能。
    对于普通的网络设备来说,只有两端,从一端进来的数据会从另一端出去,如物理网卡从外面网络中收到的数据会转发给内核协议栈,而从协议栈过来的数据会转发到外面的物理网络中。
    而bridge不同,bridge有多个端口,数据可以从任何端口进来,进来之后从哪个口出去和物理交换机的原理差不多,要看mac地址。

1.下面介绍创建用命令创建网桥(临时添加网桥)

1.建立网桥
[root@client ~]# brctl show #查看是否有网桥
[root@client ~]# brctl addbr br0 #添加名为br0的网桥
[root@client ~]# ifconfig br0 172.25.151.50/24 #为网桥临时设置IP
[root@client ~]# ping 172.25.151.250 #尝试用此 ip ping 外界,看是否可以 ping 通
[root@client ~]# brctl addif br0 eth0 #为网桥 br0 添加接口 eth0
#addif 添加 interface ;eth0 物理网卡
[root@client ~]# ping 172.25.151.250 #再尝试用此 ip ping 外界,看是否可以 ping 通
2.删除网桥
[root@client ~]# brctl delif br0 eth0 #删除网桥上的物理网卡(删除网桥上添加的接口)
[root@client ~]# ifconfig br0 down #将网桥停止(将网桥从系统链接中去除)
[root@client ~]# brctl delbr br0 #删除网桥
注:这样建立网桥在重启机器后以消失

2.下面介绍建立永久网桥(编辑配置文件)

[root@client ~]# vim/etc/syscofig/network-scripts/ifcfg-网卡名
内容如下:
1 DEVICE=eth0
2 ONBOOT=yes
3 BOOTPROTO=none
4 BRIDGE=br0 #桥接对象为br0
~
[root@client ~]# vim /etc/syscofig/network-scripts/ifcfg-br0
内容如下:
1 DEVICE=br0
2 ONBOOT=yes
3 BOOTPROTO=none
4 IPADDR=172.25.151.50
5 PREFIX=24
6 TYPE=Bridge #类型为桥接
~
建立完成后,可能无法成功重启网络,可以关闭 NetworkManager.service 后再重启网络,则网桥建立成功
systemctl stop NetworkManager.service
systemctl restart network
systemctl start NetworkManager.service

猜你喜欢

转载自blog.csdn.net/seaship/article/details/89152436
今日推荐