linux中的網橋bridge

2021-09-17 08:34:52 字數 1816 閱讀 9278

網橋

橋接與網橋

乙太網是一種共享網路傳輸介質的技術,在這種技術下,如果一台計算機傳送資料的時候,在同一物理網路介質上的計算機都需要接收,在接收後分析目的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 新增 inte***ce ;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

docker 修改 bridge網橋網段

首先停止正在使用的 docker 服務 sudo service docker stop 接著刪除 docker 預設網橋docker0 sudo ip link set dev docker0 down sudo brctl delbr docker0 sudo iptables t nat f ...

bridge案例 自定義網橋

bridge案例 自定義網橋 步驟網橋的建立 docker服務使用新網橋 使用bridge utils軟體的brctl工具建立網橋 sudo apt get install bridge utils y安裝網橋工具 brctl addbr br0 給網橋設定網段 ifconfig 網口名 ip位址 ...

linux 網橋搭建

brctl addbr br0 建立乙個邏輯網段,名稱為br0 brctl stp br0 off 可選,stp 生成樹協議 可以避免形成乙個環 brctl addif br0 eth0 讓eth0成為br0的乙個埠 brctl addif br0 eth1 讓eth1成為br0的乙個埠 brctl...