בחלק הקודם הכרנו מה זה bonding ממש בגדול, ובחלק הזה אני אסביר איך בעצם יוצרים אותו בהפצת הלינוקס השונות (כלומר דביאן וRed-Hat/CentOS).
היות והנושא הזה מתקדם מאוד יחסית, אני לוקח בחשבון כי אתם יודעים לבצע פעולות שונות הנדרשות, כלומר איך מריצים apt-get או yum וכו'
Debian
דביאן היא הפצת השרתים האהובה עלי ביותר, ולכן אתחיל דווקא בה, אם כי דווקא בה אין לי ניסיון ממשי, וזה מבוסס על קריאה של מספר מדריכים בנושא.
דבר ראשון צריך להתקין חבילה בשם ifenslave-2.6 במידה והיא לא מותקנת אצלכם. החבילה הזו תעזור לנו בעצם ליצור את ה bonding עצמו.
השלב השני יהיה להסיר את כל הdevice שבהם יש שימוש נוכחי (רמז: ifconfig). לאחר מכן נגיד לinit script של הרשת להסיר את הרשת עצמה.
במידה ואנחנו מחוברים מרחוק, דלגו על השלב השני, אבל יש לאתחל את המכונה לאחר מכן, בשביל להבטיח כי השינויים נכנסו לתוקף כמו שצריך.
עכשיו נערוך את /etc/network/interfaces:
auto bond0
iface bond0 inet static
address 10.1.0.3
netmask 255.255.255.0
network 10.1.0.0
gateway 10.1.0.254
up /sbin/ifenslave bond0 eth0 eth1
down /sbin/ifenslave -d bond0 eth0 eth1
מה שקורה כאן הוא שיצרנו device בשם bond0 והגדרנו הכל רגיל. הגדרנו לdevice בעצם להריץ תסריטים כאשר הוא עולה למעלה ולמטה, כאשר כאן הוא מריץ את הפקודה ifenslave ואמרנו לו באיזה device להשתמש לשם כך.
כמו כן יש לזכור להסיר את כל ההגדרות של eth0 ו eth1.
בקובץ של /etc/modprobe.d/arch/i386 (יכול להיות של64 ביט הוא נקרא שונה) יש לכתוב את השורות הבאות:
alias bond0 bonding
options bonding mode=5 miimon=100 downdelay=200 updelay=200
וכמובן יש לוודא כי משתמשים בmode הרצוי לכם וזהו, עכשיו אפשר להרים את הרשת חזרה (או לאתחל את המחשב).
Red-Hat/CentOS
בהגדרות של modprobe.conf יש להכניס את השורות הבאות:
alias bond0 bonding
options bond0 miimon=100 mode=5
כמובן שיש לדאוג שהן יצביעו ל mode המתאים.
יש ליצור בספרייה /etc/sysconfig/network-scripts/ קובץ בשם ifcfg-bond0 עם התוכן של:
DEVICE=bond0
IPADDR=10.1.0.3
NETMASK=255.255.255.0
NETWORK=10.1.0.0
BROADCAST=10.1.0.255
GATEWAY=10.1.0.254
ONBOOT=yes
BOOTPROTO=none
USERCTL=no
ויש לשנות את ההגדרות של ifcfg-eth0 וכן כל device נוסף בשימוש בצורה הבאה:
DEVICE=eth0
ONBOOT=yes
BOOTPROTO=none
USERCTL=no
MASTER=bond0
SLAVE=yes
ואז אפשר לאתחל את הרשת או את המחשב.
בשביל לדעת אם השינויים תפסו ב2 ההפצות, אפשר להשתמש ב:
cat /proc/net/bonding/bond0
ולראות את התוכן.