bond是linux內核自帶的一個多個網卡聚合的功能。這個功能可以以多種方式實現linux下的多個網卡聚合成一個邏輯網卡,從而實現冗余或者負載均衡。它有以下幾種工作模式:
bond0:輪詢。各接口輪流使用。需要交換機支持。交換機要配置成聚合口。
bond1:主備。即只有一個接口在使用,當接口出現問題的時候再切換到別的接口。
bond2:xor。根據數據的目的mac地址計算使用的端口。
bond3:broadcast。所有數據在每個接口都復制一份
bond4:lacp。適用802.3ad。類似bond2
bond5:對外出流量負載均衡
bond6:通過修改ARP包實現負載均衡。即對到來的arp請求依據一定策略使用不通過的arp進行回復。
總結:可以看出,linux的bond主要是在二層鏈路層實現負載均衡和冗余(即進行bond的多個接口連的要是同一網段)。除此之外,bond的很多模式還需要交換機的支持。