Pada masa ini terdapat tujuh mod pengikatan kad rangkaian (0~6) bond0, bond1, bond2, bond3, bond4, bond5, bond6
Terdapat tiga yang biasa digunakan:mode=0: Mod beban seimbang, dengan sandaran automatik, tetapi memerlukan sokongan dan tetapan "Tukar".
mode=1: Mod sandaran automatik Jika satu talian diputuskan, talian lain akan membuat sandaran secara automatik.
mode=6: Mod beban seimbang, dengan sandaran automatik, tidak memerlukan sokongan dan tetapan "Tukar".
Penerangan:Perlu diingatkan bahawa jika anda ingin mencapai pengimbangan beban mod 0, hanya menetapkan optionsbond0 miimon=100 mod=0 tidak mencukupi Suis yang disambungkan ke kad rangkaian mesti dikonfigurasikan khas (kedua-dua port ini harus diagregatkan), kerana Dua kad rangkaian yang digunakan untuk ikatan menggunakan alamat MAC yang sama Analisa dari prinsip (bon berjalan dalam mod0):
Dalam mod 0, IP kad rangkaian yang terikat pada bon semuanya diubah suai kepada alamat mac yang sama Jika kad rangkaian ini disambungkan ke suis yang sama, maka akan terdapat berbilang port yang sepadan dengan alamat mac dalam arp suis. jadual, kemudian Apabila suis menerima paket yang dihantar ke alamat mac ini, port yang manakah ia harus dimajukan? Dalam keadaan biasa, alamat mac adalah unik secara global Satu alamat mac yang sepadan dengan berbilang port pasti akan mengelirukan suis. Oleh itu, jika ikatan di bawah mod0 disambungkan kepada suis, port suis harus diagregatkan (cisco dipanggil ethernetchannel, foundry dipanggil portgroup), kerana selepas suis diagregatkan, beberapa port di bawah pengagregatan juga digabungkan ke dalam mac Address Penyelesaian kami ialah menyambungkan dua kad rangkaian ke suis yang berbeza.
Dalam mod mod6, tidak perlu mengkonfigurasi suis kerana dua kad rangkaian yang digunakan untuk ikatan menggunakan alamat MAC yang berbeza.
Arahan untuk tujuh mod ikatan: mod=0, iaitu: (balance-rr)Dasar round-robinCiri-ciri: Turutan penghantaran paket data adalah penghantaran berurutan (iaitu: paket pertama pergi ke eth0, paket seterusnya pergi ke eth1...dan kitaran berterusan sehingga yang terakhir dihantar). mengimbangi dan toleransi kesalahan; Tetapi kita tahu bahawa jika sambungan atau paket data sesi dihantar dari antara muka yang berbeza dan melalui pautan yang berbeza di tengah, masalah paket data yang tiba tidak teratur mungkin akan berlaku di sisi pelanggan, dan paket data yang tiba di luar pesanan perlu Permintaan semula dihantar, jadi daya pengeluaran rangkaian akan berkurangan
mod=1, iaitu: (active-backup)Active-backup policyCiri-ciri: Hanya satu peranti aktif Apabila satu peranti mati, peranti yang lain akan segera bertukar daripada sandaran kepada peranti utama. Alamat mac boleh dilihat dari luar Dari luar, alamat MAC bon adalah unik untuk mengelakkan kekeliruan dalam suis. Mod ini hanya memberikan toleransi kesalahan; ia boleh dilihat bahawa kelebihan algoritma ini ialah ia boleh menyediakan ketersediaan sambungan rangkaian yang tinggi, tetapi penggunaan sumbernya adalah rendah dalam keadaan kerja rangkaian. Kadar penggunaan sumber ialah 1/N
mod=2, iaitu: (balance-xor)dasar XORCiri: Hantar paket berdasarkan dasar HASH penghantaran yang ditentukan. Strategi lalai ialah: (sumber alamat MAC alamat MAC destinasi XOR)% nombor hamba. Polisi penghantaran lain boleh ditentukan melalui pilihan xmit_hash_policy Mod ini menyediakan pengimbangan beban dan toleransi kesalahan
mod=3, iaitu: siaran (strategi siaran)Ciri: Hantar setiap paket pada setiap antara muka hamba, mod ini memberikan toleransi kesalahan
mod=4, iaitu: (802.3ad) IEEE 802.3ad Pengagregatan pautan dinamikCiri: Buat kumpulan pengagregatan yang berkongsi tetapan kelajuan dan dupleks yang sama. Menurut spesifikasi 802.3ad, berbilang hamba berfungsi di bawah agregat diaktifkan yang sama. Pemilihan hamba untuk trafik keluar adalah berdasarkan dasar cincang pengangkutan, yang boleh ditukar daripada dasar XOR lalai kepada dasar lain melalui pilihan xmit_hash_policy. Perlu diingatkan bahawa tidak semua strategi penghantaran serasi dengan 802.3ad, terutamanya memandangkan masalah penyusunan semula paket yang dinyatakan dalam Bab 43.2.4 standard 802.3ad. Pelaksanaan yang berbeza mungkin mempunyai kebolehsuaian yang berbeza.
Syarat yang diperlukan:
Syarat 1: ethtool menyokong mendapatkan tetapan kadar dan dupleks setiap hamba
Keadaan 2: Suis menyokong IEEE802.3ad Pengagregatan pautan dinamik
Syarat 3: Kebanyakan suis memerlukan konfigurasi khusus untuk menyokong mod 802.3ad
mod=5, iaitu: (balance-tlb)Pengimbangan beban penghantaran adaptif (pengimbangan beban penghantaran penyesuai)Ciri-ciri: Tidak memerlukan sebarang suis (suis) khas untuk menyokong ikatan saluran. Edarkan trafik keluar pada setiap hamba berdasarkan beban semasa (dikira berdasarkan kelajuan). Jika hamba yang menerima data gagal, hamba lain mengambil alih alamat MAC hamba yang gagal.
Syarat yang diperlukan untuk mod ini: ethtool menyokong mendapatkan kadar setiap hamba
mod=6, iaitu: (balance-alb)Adaptive load balancing (adapter adaptive load balancing)Ciri: Mod ini termasuk mod imbangan-tlb, serta menerima baki beban (rlb) untuk trafik IPV4, dan tidak memerlukan sebarang sokongan suis (suis). Terima pengimbangan beban dicapai melalui rundingan ARP. Pemacu ikatan memintas balasan ARP yang dihantar oleh mesin tempatan dan menulis semula alamat perkakasan sumber ke alamat perkakasan unik hamba dalam bon, supaya rakan sebaya yang berbeza menggunakan alamat perkakasan yang berbeza untuk komunikasi.
Terima trafik dari sisi pelayan juga akan seimbang. Apabila mesin tempatan menghantar permintaan ARP, pemacu ikatan menyalin maklumat IP rakan sebaya daripada paket ARP dan menyimpannya. Apabila balasan ARP tiba daripada rakan sebaya, pemacu ikatan mengekstrak alamat perkakasannya dan memulakan balasan ARP kepada hamba dalam bon. Satu masalah dengan menggunakan rundingan ARP untuk pengimbangan beban ialah alamat perkakasan bon digunakan setiap kali permintaan ARP disiarkan Oleh itu, selepas rakan sebaya mengetahui alamat perkakasan ini, semua trafik yang diterima akan mengalir ke hamba semasa. Masalah ini boleh diselesaikan dengan menghantar kemas kini (balasan ARP) kepada semua rakan sebaya yang mengandungi alamat perkakasan unik mereka, menyebabkan trafik diedarkan semula. Apabila hamba baharu ditambahkan pada bon, atau apabila hamba tidak aktif diaktifkan semula, trafik yang diterima juga mesti diagihkan semula. Beban yang diterima diedarkan secara berurutan (roundrobin) pada hamba berkelajuan tertinggi dalam bon Apabila pautan disambungkan semula, atau hamba baharu ditambahkan pada bon, trafik penerima diagihkan semula di antara semua hamba yang aktif pada masa ini kepada setiap pelanggan menggunakan alamat MAC yang ditentukan. Parameter tunda kemas kini yang diperkenalkan di bawah mesti ditetapkan kepada nilai yang lebih besar daripada atau sama dengan kelewatan pemajuan suis (suis) untuk memastikan balasan ARP yang dihantar ke hujung bertentangan tidak akan disekat oleh suis (suis).
Syarat yang diperlukan:
Syarat 1: ethtool menyokong mendapatkan kadar setiap hamba
Syarat 2: Pemacu asas menyokong penetapan alamat perkakasan peranti tertentu, supaya sentiasa ada hamba (curr_active_slave) menggunakan alamat perkakasan bon, sambil memastikan setiap hamba dalam bon mempunyai alamat perkakasan yang unik. Jika curr_active_slave gagal, alamat perkakasannya akan diambil alih oleh curr_active_slave yang baru dipilih Sebenarnya, perbezaan antara mod=6 dan mod=0: mod=6, isikan trafik eth0 dahulu, kemudian eth1,...ethX dan mod =0, anda akan mendapati bahawa trafik kedua-dua port adalah sangat stabil, dengan jalur lebar yang sama pada dasarnya. Dan mod=6, anda akan mendapati bahawa trafik port pertama adalah sangat tinggi, dan port kedua hanya menyumbang sebahagian kecil daripada trafik
Ikatan port rangkaian Linux:Melalui teknologi ikatan port rangkaian (ikatan), redundansi port rangkaian dan pengimbangan beban boleh dicapai dengan mudah, sekali gus mencapai ketersediaan tinggi dan kebolehpercayaan yang tinggi. Perjanjian prasyarat:
2个物理网口分别是:eth0,eth1 绑定后的虚拟口是:bond0 服务器IP是:10.10.10.1
Langkah pertama ialah mengkonfigurasi fail tetapan:
[root@woo ~]# vi /etc/sysconfig/network-scripts/ifcfg-bond0 DEVICE=bond0 BOOTPROTO=none ONBOOT=yes IPADDR=10.10.10.1 NETMASK=255.255.255.0 NETWORK=192.168.0.0 [root@woo ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE=eth0 BOOTPROTO=none MASTER=bond0 SLAVE=yes [root@woo ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth1 DEVICE=eth1 BOOTPROTO=none MASTER=bond0 SLAVE=yes
第二步,修改modprobe相关设定文件,并加载bonding模块:
1.在这里,我们直接创建一个加载bonding的专属设定文件/etc/modprobe.d/bonding.conf
[root@woo ~]# vi /etc/modprobe.d/bonding.conf alias bond0 bonding options bonding mode=0 miimon=200
2.加载模块(重启系统后就不用手动再加载了)
[root@woo ~]# modprobe bonding
3.确认模块是否加载成功:
[root@woo ~]# lsmod | grep bonding bonding 100065 0
第三步,重启一下网络,然后确认一下状况:
[root@db01 ~]# service network restart Shutting down interface bond0: [ OK ] Shutting down loopback interface: [ OK ] Bringing up loopback interface: [ OK ] Bringing up interface bond0: [ OK ] [root@db01 ~]# cat /proc/net/bonding/bond0 Ethernet Channel Bonding Driver: v3.4.0-1 (October 7, 2008) Bonding Mode: fault-tolerance (active-backup) Primary Slave: None Currently Active Slave: eth0 MII Status: up MII Polling Interval (ms): 100 Up Delay (ms): 0 Down Delay (ms): 0 Slave Interface: eth0 MII Status: up Speed: 1000 Mbps Duplex: full Link Failure Count: 0 Permanent HW addr: 40:f2:e9:db:c9:c2 Slave Interface: eth1 MII Status: up Speed: 1000 Mbps Duplex: full Link Failure Count: 0 Permanent HW addr: 40:f2:e9:db:c9:c3 [root@db01 ~]# ifconfig | grep HWaddr bond0 Link encap:Ethernet HWaddr 40:F2:E9:DB:C9:C2 eth0 Link encap:Ethernet HWaddr 40:F2:E9:DB:C9:C2 eth1 Link encap:Ethernet HWaddr 40:F2:E9:DB:C9:C2
从上面的确认信息中,我们可以看到3个重要信息:
1.现在的bonding模式是active-backup
2.现在Active状态的网口是eth0
3.bond0,eth1的物理地址和处于active状态下的eth0的物理地址相同,这样是为了避免上位交换机发生混乱。
任意拔掉一根网线,然后再访问你的服务器,看网络是否还是通的。
第四步,系统启动自动绑定、增加默认网关:
[root@woo ~]# vi /etc/rc.d/rc.local #追加 ifenslave bond0 eth0 eth1 route add default gw 10.10.10.1
#如可上网就不用增加路由,0.1地址按环境修改.
————————————————————————
留心:前面只是2个网口绑定成一个bond0的情况,如果我们要设置多个bond口,比如物理网口eth0和eth1组成bond0,eth2和eth3组成bond1,
多网口绑定:那么网口设置文件的设置方法和上面第1步讲的方法相同,只是/etc/modprobe.d/bonding.conf的设定就不能像下面这样简单的叠加了:
alias bond0 bonding options bonding mode=1 miimon=200 alias bond1 bonding options bonding mode=1 miimon=200
正确的设置方法有2种:
第一种,你可以看到,这种方式的话,多个bond口的模式就只能设成相同的了:
<span style="”color:#000000;”">alias bond0 bonding alias bond1 bonding options bonding max_bonds=2 miimon=200 mode=1 </span>
第二种,这种方式,不同的bond口的mode可以设成不一样:
<span style="”color:#000000;”">alias bond0 bonding options bond0 miimon=100 mode=1 install bond1 /sbin/modprobe bonding -o bond1 miimon=200 mode=0 </span>
仔细看看上面这2种设置方法,现在如果是要设置3个,4个,甚至更多的bond口,你应该也会了吧!
后记:miimon 监视网络链接的频度,单位是毫秒,我们设置的是200毫秒。
max_bonds 配置的bond口个数
mode bond模式,主要有以下几种,在一般的实际应用中,0和1用的比较多。
Atas ialah kandungan terperinci Menganalisis mod pengikatan kad rangkaian. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!