Ethernet Bonding חלק שני

בחלק הקודם הכרנו מה זה 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

ולראות את התוכן.

7 מחשבות על “Ethernet Bonding חלק שני

  1. רבין

    חמוד בדיוק חפשתי משהו כזה, אבל עדיין לא הצלחתי להשתמש בזה
    אני מחפש לנצל את חיבור הרשת שלי eth0 והאלחוטי eth1 ואת המודם הסללורי ppp0 במקביל. תוכל לפרט טיפה יותר ?

    נ.ב אני משתמש בפדורה

  2. ik_5 מאת

    הבעיה היא שהחיבורים האלו שלך הם לא קבועים,אלא משתנים. למשל ppp0 אם תפעיל vpn יכול להיות ה vpn וזה יהפוך ל ppp1 וכו'…

    העיקרון הוא שאתה הופך את הגדרות ה devices לslave שמופנים כלפי ה bonding.

    אם תראה מה אתה עושה יהיה קל יותר לעזור לך יותר מזה.

  3. פינגבק: Ethernet Bonding – חלק ראשון « לראות שונה

  4. Rabin

    זה מה שיש לי כרגע,

    $ cat ifcfg-bond0
    DEVICE=bond0
    NETWORK=10.1.0.0
    BROADCAST=10.1.0.255
    ONBOOT=yes
    BOOTPROTO=none
    USERCTL=no

    TYPE=Ethernet
    NM_CONTROLLED=no
    IPV6INIT=no
    IPADDR0=10.1.0.3
    PREFIX0=24
    GATEWAY0=10.1.0.254
    DEFROUTE=yes
    IPV4_FAILURE_FATAL=yes
    NAME="System bond0"
    UUID=ad33d8b0-1f7b-cab9-9447-ba07f855b143
    IPADDR=10.1.0.3
    NETMASK=255.255.255.0
    PREFIX=24
    GATEWAY=10.1.0.254

    ================================
    $ cat ifcfg-eth0
    # Please read /usr/share/doc/initscripts-*/sysconfig.txt
    # for the documentation of these parameters.
    # ---
    # Using with bond test
    DEVICE=eth0
    BOOTPROTO=dhcp
    TYPE=Ethernet
    ONBOOT=yes
    USERCTL=yes
    IPV6INIT=no
    DEFROUTE=yes
    IPV4_FAILURE_FATAL=yes
    NAME="System eth0"
    UUID=5fb06bd0-0bb0-7ffb-45f1-d6edd65f3e03
    HWADDR=B8:AC:6F:77:F0:A2
    PEERDNS=yes
    PEERROUTES=yes
    LAST_CONNECT=1299455165
    SLAVE=yes
    MASTER=bond0
    NM_CONTROLLED=yes

    ====================================

    $ cat ifcfg-eth1
    # Please read /usr/share/doc/initscripts-*/sysconfig.txt
    # for the documentation of these parameters.
    DEVICE=eth1
    BOOTPROTO=dhcp
    TYPE=Wireless
    HWADDR=c4:46:19:25:e8:e0
    NM_CONTROLLED=yes
    ONBOOT=no
    USERCTL=yes
    PEERDNS=yes
    IPV6INIT=no
    MODE=Managed
    RATE=auto
    ESSID=
    CHANNEL=
    MASTER=bond0
    SLAVE=yes

כתיבת תגובה

הזינו את פרטיכם בטופס, או לחצו על אחד מהאייקונים כדי להשתמש בחשבון קיים:

הלוגו של WordPress.com

אתה מגיב באמצעות חשבון WordPress.com שלך. לצאת מהמערכת / לשנות )

תמונת Twitter

אתה מגיב באמצעות חשבון Twitter שלך. לצאת מהמערכת / לשנות )

תמונת Facebook

אתה מגיב באמצעות חשבון Facebook שלך. לצאת מהמערכת / לשנות )

תמונת גוגל פלוס

אתה מגיב באמצעות חשבון Google+ שלך. לצאת מהמערכת / לשנות )

מתחבר ל-%s