bond0eth0
『壹』 在Linux上怎麼兩個網卡配同一個IP
linux中雙網卡的梆定
創建一個bond設備,三個簡單的步驟即可搞定:
(1)首先要保證相應的驅動程序已經載入:
localhost@root
~#
modprobe
bonding
或
modprobe
<3c59x|
eepro100|pcnet32|tulip|...>
(2)其次給等梆定bond設備分配IP地址
localhost@root
~#
ifconfig
bond0
<IP地址>
netmask
<子網掩碼>
broadcast
<廣播地址
>
例如
ifconfig
bond0
192.168.1.242
netmask
255.255.255.0
broadcast
172.31.3.254
(3)最後將所有要梆定的物理網卡介面添加到bond設備中去
localhost@root
~#
ifenslave
bond0
[{-f|--force}
bond0
eth0
[
eth1
[eth2]...]
例如
ifenslave
bond0
eth0
eth1
梆定了eth0
eth1兩個網卡設備。
--force
表示強制進行梆定
創建好bond設備後,就可以像一般的網卡設備一樣使用了
如啟動bond0:
#
ifconfig
bond0
up
停用bond0:
#
ifconfig
bond0
down
在不停用bond0的情況下添加介面:
#
ifenslave
{-d|
--detach}
bond0
eth0
[eth1
[eth2]...]
--detach表示"附加"的意思
改變活動的從設備:
#
ifenslave
{-c|--change-active}
bond0
eth0
--change-acitve
表示"改變活動的從設備"的意思
顯示主介面(指bond0)信息:
#
ifenslave
bond0
顯示所以介面信息:
#
ifenslave
{-a|--all-interfaces}
--all-interfaces
表示"所有介面"
『貳』 各位達人,REDHAT 5.6 LINUX 2個網卡配置了2個IP,為什麼一個網段通,另一個不同呢。
先看看普通網卡IP地址的配置,修改/etc/sysconfig/network-scripts/ifcfg-eth0文件內容為:
DEVICE=eth0 #物理設備名
HWADDR=00:0C:29:01:98:27 #MAC地址
BOOTPROTO=static #靜態分配
IPADDR=192.168.1.103 #這就是你設置的靜態IP地址
NETMASK=255.255.255.0 #子網掩碼
GATEWAY=192.168.1.1 #網關地址
ONBOOT=yes #引導或啟動網卡服務時是否激活設備
RHEL6下bond的雙網卡綁定服務
操作步驟和注意事項如下:
1、注意事項:
首先確認要綁定的是哪2個網口,避免綁定時綁錯網口。
2、說明:
這里以綁定eth0和eth1的2個網口為例。
配置文件都在/etc/sysconfig/network-scripts/目錄下。
操作步驟
綁定前需要徹底關閉NetworlManger服務,否則會和bond網卡沖突
12 chkconfig NetworlMangeroff #停止開機啟動該服務
service NetworlManger stop #停止網卡管理服務,其中網卡配置文件中NM_CONTROLLED=yes //設備eth0是否可以由Network Manager圖形管理工具託管,可以直接刪除本行。
1、編輯新的ifcfg-bond0文件
cd/etc/sysconfig/network-scripts/
cp–rfifcfg-eth0ifcfg-bond0##復制ifcfg-eth0到ifcfg-bond0
ls##查看文件,即可看到有ifcfg-bond0文件
增加或修改如下內容:
# vi ifcfg-bond0
DEVICE=bond0
IPADDR=192.168.1.155
NETMASK=255.255.255.0
GATEWAY=192.168.1.254 ##此IP信息為客戶要求信息
ONBOOT=yes
BOOTPROTO=static
USERCTL=no
BONDING_OPTS=」mode=0 miimon=100 primary=eth0」 ##設置eth0為主通信網口,具體以現場情況為准
保存退出
2、分別編輯ifcfg-eth0和ifcfg-eth1文件
# vi ifcfg-eth0
DEVICE=eth0
HWADDR=AB:CD:EF:12:34:56 注意eth0的MAC地址要保留。不要刪除或屏蔽
USERCTL=no
ONBOOT=yes
MASTER=bond0
SLAVE=yes
BOOTPROTO=none
#vi ifcfg-eth1
HWADDR=AB:CD:EF:12:34:57 注意eth1 的MAC地址要保留。不要刪除或屏蔽
DEVICE=eth1
USERCTL=no
ONBOOT=yes
MASTER=bond0
SLAVE=yes
BOOTPROTO=none
注意:其他未要求設置網口,需將網卡配置文件中的全部屏蔽或去掉,MAC地址必須保留。以免硬碟網卡綁定,造成網卡順序漂移。
不過不用擔心,在linux系統中有個記錄eth設備網卡名和MAC地址的對應關系表
3、修改/etc/modprobe.d/dist.conf文件,添加以下內容:
alias bond0 bonding
options bond0 miimon=100 mode=0 ##具體以施工現場要求為准
說明:
miimon是用來進行鏈路監測的。比如:miimon=100,那麼系統每100ms監測一次鏈路連接狀態,如果有一條線路不通就轉入另一條線路;
mode的值表示工作模式,他共有0,1,2,3四種模式,常用的為0,1兩種。需根據交換機可提供的工作模式選擇。
mode=0表示loadbalancing(round-robin)為負載均衡方式,兩塊網卡都工作。
mode=1表示fault-tolerance(active-backup)提供冗餘功能,工作方式是主備的工作方式,也就是說默認情況下只有一塊網卡工作,另一塊做備份。
※注意:
a、bonding只能提供鏈路監測,即從主機到交換機的鏈路是否接通。如果只是交換機對外的鏈路down掉了,而交換機本身並沒有故障,那麼bonding會認為鏈路沒有問題而繼續使用。
b、設置的模式要與交換機設置的模式一致。
4、重啟系統
系統啟動時,會自動載入bond模塊和激活冗餘網卡設置。可使用以下命令進行判斷:
#ifconfig
即可看到bond0的信息,bond0會自動獲取eth0的MAC地址。
若確認bond0網卡已經激活,可通過插拔網線或ifdownethX操作進行切換測試。在切換過程中,網路連接正常即可。
比較細心的人就會發現,bond0、eth0、eth1這組的三個網卡的MAC地址是一樣的。
『叄』 linux雙網卡綁定連接到冗餘的兩交換機
拓撲圖很簡單,一個伺服器的兩個網卡上聯到兩台核心交換機上
操作系統是rhel5.5
x86_64,交換機是華為9306,伺服器是dell
M910刀片
伺服器上的eth0和eth1做了綁定,我想用mode=0
這種負載均衡的方式來做
兩台交換機配置了vrrp,左邊的核心交換機是master,右邊的是slave
但我在實際測試的過程中出現了問題。伺服器是dell
m910,刀片伺服器。我將eth0/1綁定成mode=0模式,在交換機上將連接刀片
www.dnjsb.com
的介面配置到了access
vlan,在刀片的交換機上配置了鏈路聚合和埠依賴(在不做綁定的情況下,伺服器和網路是正常的),發
現在伺服器上ping網關,有50%丟包;在其他伺服器上ping這台伺服器也有至少50%的丟包
mode=0這個模式,配置完成後,bond0/eth0/eth1介面的MAC都變成eth0的MAC地址了
我覺得當伺服器向外發送數據的時候,第一個包從master走,因為對master來說,從G1/0/1學到了伺服器的MAC地址;伺服器的第
二個包從slave走,master又從G1/0/47學到了伺服器的MAC地址,這樣,交換機的MAC表就混亂了,也就導致了丟失50%的數據包
www.dnjsb.com
誰做過mode=0綁定模式呢?是不是還需要在交換機上做什麼配置?請幫忙看一下如何解決,謝謝。網卡綁定
『肆』 linux 網路聚合有幾種模式
將多個Linux網路埠綁定為一個,可以提升網路的性能,比如對於備份伺服器,需要在一個晚上備份幾個T的數據,如果使用單個的千兆網口將會是很嚴重的瓶頸。其它的應用,比如ftp伺服器,高負載的下載網站, 都有類似的問題。因此使用Linux teaming或bond來綁定多個網卡作為一個邏輯網口,配置單個的IP地址,會大幅提升伺服器的網路吞吐(I/O)。
Linux的多網卡綁定功能使用的是內核中的"bonding"模塊,關於此模塊可以參考Linux Ethernet Bonding Driver文檔, 但是目前發布各個Linux版本內核均已包含了此模塊,大多數情況下不需要重新編譯內核。 Linux 的 bonding 驅動提供了綁定/集成(bond)多個網卡為一個虛擬邏輯網口的功能。並請注意綁定的網口(bonded)有多種工作模式; 一般來說,分為 熱後備(hot standby) 和 負載均衡(load balancing). 在Redhat/Fedora和其它類Redhat Linux中是比較容易配置的。
1.創建bond0配置文件
vi /etc/sysconfig/network-scripts/ifcfg-bond0
DEVICE=bond0 --物理設備名字
IPADDR=192.168.1.2 --IP地址
NETMASK=255.255.255.0 --子網掩碼
GATEWAY=192.168.1.1 --網關
DNS=8.8.8.8 --DNS
ONBOOT=yes --隨機啟動
NAME=bond0
BOOTPROTO=none
USERCTL=no --是否允許非root用戶控制該設備
2.修改被綁定的eth0和eth1的配置文件
vi /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE="eth0"
USERCTL=no
ONBOOT=yes
MASTER=bond0
SLAVE=yes
BOOTPROTO=none
HWADDR=00:15:17:CC:FC:35
eth1的配置文件與之相同,只是device的值改為eth1即可。
3.裝在bond模塊驅動
編輯/etc/modprobe.conf或者/etc/moles.conf文件,加入如下內容,使系統啟動時載入bonding模塊驅動
alias bond0 bonding
option bond0 miimon=100 mode=1
說明:
1).miimon=100 用來進行鏈路監測的。即每100ms監測一次鏈路狀態。bonding只監測主機與交換機之間鏈路。如果交換機出去的鏈路出問題而本身沒有問題,那麼bonding認為鏈路沒有問題而繼續使用。
2).mode=1 表示提供冗餘功能。除此之外還可以為0、2、3,共四種模式。0表示負載均衡
4.在/etc/rc.d/rc.local文件中加入如下語句,使得系統啟動自動運行
ifenslave bond0 eth0 eth1
route add -net 192.168.1.254 netmask 255.255.255.0 bond0 #如有需要才加該路由
5.檢測、驗證配置
首先執行命令裝載bonding模塊:modprobe bonding
重啟網路服務,並確認bond0正確啟動:service network restart
確認設備已經正確載入:less /proc/net/bonding/bond0
列出所有網口:ifconfig
至此,bond技術的使用過程的設置就基本結束了,謝謝閱讀,希望能幫到大家,請繼續關注腳本之家,我們會努力分享更多優秀的文章。
『伍』 Linux環境,如何做bond,命令bond的意義有什麼好處兩個網口,三個。。。n個,分別怎麼做
你好,所謂bond,就是把多個物理網卡綁定成一個邏輯上的網卡
好處:增加帶寬,還可以實現主備功能
至於命令,直接在/etc/sysconfig/network中編輯文件
vi /etc/sysconfig/network/ifcfg-bond0
BOOTPROTO="static"
BROADCAST="192.168.1.255"
IPADDR="192.168.1.251"
NETMASK="255.255.255.0"
NETWORK="192.168.1.0"
REMOTE_IPADDR=""
STARTMODE="onboot"
BONDING_MASTER="yes"
BONDING_MODULE_OPTS="mode=1 miimon=200 use_carrier=1 primary=eth?"
BONDING_SLAVE0="eth0"
BONDING_SLAVE1="eth1"
最後2個為綁定的網卡的名稱,此例是把eth0和eth1共同綁定成bond0
最後要注意的是,綁定做好後,把eth0,eth1的配置文件刪掉(保險點改個名字丟那好了)
重啟網卡後綁定成功,如果還有不明白的可以再提問
『陸』 配置bond之後,能否通過分別啟動多個網卡,來保證網路不斷
1、編輯虛擬網路介面配置文件,指定網卡IP: # vi /etc/sysconfig/network-scripts/ifcfg-bond0 或者下面命令
# cp /etc/sysconfig/network-scripts/ifcfg-eth0 ifcfg-bond02、#vi ifcfg-bond0 將第一行改成 DEVICE=bond0:
# cat ifcfg-bond0
DEVICE=bond0
ONBOOT=yes
BOOTPROTO=static
IPADDR=192.168.61.72
NETMASK=255.255.255.240
#BROADCAST=192.168.61.79
#GATEWAY=192.168.61.77
這里要注意,不要指定單個網卡的IP 地址、子網掩碼或網卡 ID。將上述信息指定到虛擬適配器(bonding)中即可。
# cat ifcfg-eth0
DEVICE=eth0
BOOTPROTO=none
ONBOOT=yes
HWADDR=00:15:17:CC:FC:35
MASTER=bond0
SLAVE=yes
# cat ifcfg-eth1
DEVICE=eth1
BOOTPROTO=none
ONBOOT=yes
HWADDR=00:15:17:CC:FC:34
MASTER=bond0
SLAVE=yes3、 # vi /etc/moles.conf 編輯 /etc/modprobe.conf或者/etc/moles.conf文件,加入如下兩行內容,以使系統在啟動時載入bonding模塊,對外虛擬網路介面設備為 bond0.加入下列兩行:
alias bond0 bonding
options bond0 miimon=100 mode=1
說明:miimon是用來進行鏈路監測的。 比如:miimon=100,那麼系統每100ms監測一次路連接狀態,如果有一條線路不通就轉入另一條線路;mode的值表示工作模式,他共有0,1,2,3四種模式,常用的為0,1兩種。
mode=0表示load balancing (round-robin)為負載均衡方式,兩塊網卡都工作。
mode=1表示fault-tolerance (active-backup)提供冗餘功能,工作方式是主備的工作方式,也就是說默認情況下只有一塊網卡作,另一塊做備份. bonding只能提供鏈路監測,即從主機到交換機的鏈路是否接通。如果只是交換機對外的鏈路down掉了,而交換機本身並沒有故障,那麼bonding會認為鏈路沒有問題而繼續使用4、 # vi /etc/rc.d/rc.local 加入兩行,加在啟動自運行文件裡面ifenslave bond0 eth0 eth1
route add -net 172.31.3.254 netmask 255.255.255.0 bond0 #如果需要的話加路由,不需要不用加到這時已經配置完畢重新啟動機器. 重啟會看見以下信息就表示配置成功了Bringing up interface bond0 OK
Bringing up interface eth0 OK
Bringing up interface eth1 OK
『柒』 linux系統bond網口的mac地址問題
三個配置文件
ifcfg-eth0
ifcfg-eth1
ifcfg-bond0
中添加MACADDR項,指定MAC值
『捌』 雙網卡如何綁定一個IP
基於REDHAT9,雙網卡綁定如何綁定一個IP呢?
使用多塊網卡虛擬成為一塊網卡,具有相同的IP地址。這項技術在sun和cisco中已經存在,分別稱為Trunking和etherchannel技術,在Linux中,這種技術稱為bonding。
什麼是bonding需要從ethernet網卡的promisc模式說起。我們知道,在正常情況下,ethernet網卡只接收目的mac地址是自身mac的ether幀,對於別的數據幀都過濾掉,以減輕驅動程序——也就是軟體的負擔。但是ethernet網卡也支持另外一種被稱為promisc的模式,可以接收網路上所有的幀,很多系統程序如:sniffer、tcpmp,都運行在這個模式下。bonding也運行在這個模式下,而且修改了驅動程序中的mac地址,將兩塊網卡的mac地址改成相同,可以接收特定mac的數據幀。然後把相應的數據幀傳送給bond驅動程序處理。bonding技術的最早應用是在集群——beowulf上,為了提高集群節點間的數據傳輸而設計的。
說了半天理論,其實配置很簡單,因為在內核中已經包含了,只需要在編譯的時候把網路設備選項中的Bonding driver support選中就可以了。
然後,重新編譯核心,重新起動計算機,執行如下命令:
#ifconfig eth0 down
#ifconfig eth1 down
#ifconfig bond0 ipaddress
#ifenslave bond0 eth0
#ifenslave bond0 eth1
『玖』 linux伺服器埠聚合怎麼設置
基礎配置信息
常用的三種Bond模式
配置過程以mode=6為例,其它7種模式請參考擴展閱讀
mode=0:平衡負載模式,有自動備援,但需要」Switch」支援及設定。 mode=1:自動備援模式,其中一條線若斷線,其他線路將會自動備援。 mode=6:平衡負載模式,有自動備援,不必」Switch」支援及設定。
物理介面
2015610165454336.jpg (274×145)
CentOS版本
復制代碼代碼如下:
datanode01:~>cat /etc/redhat-release
CentOS release 6.4 (Final)
禁用NetworkManager
復制代碼代碼如下:
#立即關閉禁用NetworkManager並禁用開機自啟動
/etc/init.d/NetworkManager stop
chkconfig NetworkManager off
/etc/init.d/network restart
關閉iptables和selinux(可選)
復制代碼代碼如下:
#立即關閉iptables並禁用開機自啟動
/etc/init.d/iptables stop
chkconfig iptables off
#立即關閉selinux並永久禁用
setenforce 0
sed -i 『s/SELINUX=enforcing/SELINUX=disabled/『 /etc/selinux/config
修改主機名
復制代碼代碼如下:
vi /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=namenode01
#刷新生效
hostname namnode01
source /etc/sysconfig/network
配置IP
私有地址
復制代碼代碼如下:
cd /etc/sysconfig/network-scripts
[root@datanode09 network-scripts]# cat ifcfg-eth3
DEVICE=eth3
ONBOOT=yes
BOOTPROTO=none
IPADDR=10.129.46.19
NETMASK=255.255.255.0
IPV6INIT=no
USERCTL=no
雙網卡綁定
復制代碼代碼如下:
cd /etc/sysconfig/network-scripts
#編輯eth0
cat > ifcfg-eth0 << EOF
DEVICE=eth0
ONBOOT=yes
BOOTPROTO=none
USERCTL=no
MASTER=bond0
EOF
#編輯eth2
cat > ifcfg-eth2 << EOF
DEVICE=eth2
ONBOOT=yes
BOOTPROTO=none
USERCTL=no
MASTER=bond0
EOF
#編輯bond0
cat > ifcfg-bond0 << EOF
DEVICE=bond0
TYPE=Ethernet
ONBOOT=yes
BOOTPROTO=none
IPADDR=10.3.3.214
NETMASK=255.255.255.0
GATEWAY=10.3.3.1
IPV6INIT=no
USERCTL=no
EOF
#設置bond參數,注意mode選擇
cat > /etc/modprobe.conf << EOF
alias bond0 bonding
options bond0 miimon=100 mode=6
EOF
#加入開機自啟動參數
cat >> /etc/rc.local << EOF
ifenslave bond0 eth0 eth2
EOF
#重啟網卡
service network restart
#使綁定網卡立即生效
ifenslave bond0 eth0 eth2
#測試綁定網路
ping 10.3.3.1
常用3種網卡綁定模式對比
mode=0
中斷任意一條鏈路或恢復鏈路,網路0丟包
優點:流量提高1倍
缺點:需要接入同一交換機做聚合配置,無法保證物理交換機高可用(Cisco似乎有解決方案?)
mode=1
中斷任意一條鏈路丟失1-3個包(秒),恢復鏈路時0丟包
優點:交換機無需配置
缺點:如上
mode=6
中斷任意一條鏈路0丟包,恢復鏈路時丟失10-15個包(秒)
優點:交換機無需配置,流量提高1倍
『拾』 linux下bond網卡eth0、eth1 為什麼在解除bond以後,eth0、eth1 的mac地址還是相同
bond本身綁定網卡時就不會吧、把 eth0 和eth1的mac地址給成相同的,你出現的 MAC 地址相同,可能是你配置文件問題。cat /etc/udev/rules.d/70-persistent-net.rules 看你兩塊網卡的 MAC 相同嗎?