ഉബുണ്ടുവിൽ നെറ്റ്uവർക്ക് ബോണ്ടിംഗ് അല്ലെങ്കിൽ ടീമിംഗ് എങ്ങനെ ക്രമീകരിക്കാം


ലിനക്സ് സെർവറുകളിൽ ഉപയോഗിക്കുന്ന ഒരു മെക്കാനിസമാണ് നെറ്റ്uവർക്ക് ഇന്റർഫേസ് ബോണ്ടിംഗ്, ഒരു കേബിൾ തകരാർ സംഭവിച്ചാൽ ഒരൊറ്റ ഇന്റർഫേസിന് ലിങ്ക് റിഡൻഡൻസി നൽകാൻ കഴിയുന്നതിനേക്കാളും കൂടുതൽ ബാൻഡ്uവിഡ്ത്ത് നൽകുന്നതിന് കൂടുതൽ ഫിസിക്കൽ നെറ്റ്uവർക്ക് ഇന്റർഫേസുകൾ ബൈൻഡുചെയ്യുന്നത് ഉൾക്കൊള്ളുന്നു. ഇത്തരത്തിലുള്ള ലിങ്ക് റിഡൻഡൻസിക്ക് ലിനക്സിൽ ഒന്നിലധികം പേരുകളുണ്ട്, ഉദാഹരണത്തിന്, ബോണ്ടിംഗ്, ടീമിംഗ് അല്ലെങ്കിൽ ലിങ്ക് അഗ്രഗേഷൻ ഗ്രൂപ്പുകൾ (LAG).

ഉബുണ്ടു അല്ലെങ്കിൽ ഡെബിയൻ അടിസ്ഥാനമാക്കിയുള്ള ലിനക്സ് സിസ്റ്റങ്ങളിൽ നെറ്റ്uവർക്ക് ബോണ്ടിംഗ് സംവിധാനം ഉപയോഗിക്കുന്നതിന്, ആദ്യം നിങ്ങൾ ബോണ്ടിംഗ് കേർണൽ മൊഡ്യൂൾ ഇൻസ്റ്റാൾ ചെയ്യുകയും മോഡ്പ്രോബ് കമാൻഡ് വഴി ബോണ്ടിംഗ് ഡ്രൈവർ ലോഡ് ചെയ്തിട്ടുണ്ടോ എന്ന് പരിശോധിക്കുകയും വേണം.

$ sudo modprobe bonding

Debian അല്ലെങ്കിൽ Ubuntu-യുടെ പഴയ പതിപ്പുകളിൽ താഴെ പറയുന്ന കമാൻഡ് നൽകി നിങ്ങൾ ifenslave പാക്കേജ് ഇൻസ്റ്റാൾ ചെയ്യണം.

$ sudo apt-get install ifenslave

നിങ്ങളുടെ സിസ്റ്റത്തിലെ ആദ്യത്തെ രണ്ട് ഫിസിക്കൽ എൻuസികൾ അടങ്ങിയ ഒരു ബോണ്ട് ഇന്റർഫേസ് സൃഷ്ടിക്കുന്നതിന്, താഴെയുള്ള കമാൻഡ് നൽകുക. എന്നിരുന്നാലും ബോണ്ട് ഇന്റർഫേസ് സൃഷ്ടിക്കുന്നതിനുള്ള ഈ രീതി എഫെമെറൽ ആണ് കൂടാതെ സിസ്റ്റം റീബൂട്ടിനെ അതിജീവിക്കില്ല.

$ sudo ip link add bond0 type bond mode 802.3ad
$ sudo ip link set eth0 master bond0
$ sudo ip link set eth1 master bond0

മോഡ് 0 ടൈപ്പിൽ സ്ഥിരമായ ബോണ്ട് ഇന്റർഫേസ് സൃഷ്uടിക്കുന്നതിന്, ചുവടെയുള്ള ഉദ്ധരണിയിൽ കാണിച്ചിരിക്കുന്നതുപോലെ, ഇന്റർഫേസ് കോൺഫിഗറേഷൻ ഫയൽ സ്വമേധയാ എഡിറ്റ് ചെയ്യുന്നതിനുള്ള രീതി ഉപയോഗിക്കുക.

$ sudo nano /etc/network/interfaces
# The primary network interface
auto bond0
iface bond0 inet static
	address 192.168.1.150
	netmask 255.255.255.0	
	gateway 192.168.1.1
	dns-nameservers 192.168.1.1 8.8.8.8
	dns-search domain.local
		slaves eth0 eth1
		bond_mode 0
		bond-miimon 100
		bond_downdelay 200
		bond_updelay 200

ബോണ്ട് ഇന്റർഫേസ് സജീവമാക്കുന്നതിന്, ഒന്നുകിൽ നെറ്റ്uവർക്ക് സേവനം പുനരാരംഭിക്കുക, ഫിസിക്കൽ ഇന്റർഫേസ് ഇറക്കി ബോണ്ട് ഇന്റർഫേസ് ഉയർത്തുക അല്ലെങ്കിൽ കേർണലിന് പുതിയ ബോണ്ട് ഇന്റർഫേസ് എടുക്കുന്നതിന് മെഷീൻ റീബൂട്ട് ചെയ്യുക.

$ sudo systemctl restart networking.service
or
$ sudo ifdown eth0 && ifdown eth1 && ifup bond0

താഴെ പറയുന്ന കമാൻഡുകൾ നൽകി ബോണ്ട് ഇന്റർഫേസ് ക്രമീകരണങ്ങൾ പരിശോധിക്കാവുന്നതാണ്.

$ ifconfig 
or 
$ ip a

കാണിച്ചിരിക്കുന്നതുപോലെ cat കമാൻഡ് ഉപയോഗിച്ച് ചുവടെയുള്ള കേർണൽ ഫയലിന്റെ ഉള്ളടക്കം പ്രദർശിപ്പിക്കുന്നതിലൂടെ ബോണ്ട് ഇന്റർഫേസിനെക്കുറിച്ചുള്ള വിശദാംശങ്ങൾ ലഭിക്കും.

$ cat /proc/net/bonding/bond0

മറ്റ് ബോണ്ട് ഇന്റർഫേസ് സന്ദേശങ്ങൾ അന്വേഷിക്കുന്നതിനോ അല്ലെങ്കിൽ ബോണ്ട് ഫിസിക്കൽ NICS-ന്റെ അവസ്ഥ ഡീബഗ് ചെയ്യുന്നതിനോ, താഴെയുള്ള കമാൻഡുകൾ നൽകുക.

$ tail -f /var/log/messages

അടുത്തതായി കാണിച്ചിരിക്കുന്നതുപോലെ നെറ്റ്uവർക്ക് ഇന്റർഫേസ് കൺട്രോളർ (എൻഐസി) പാരാമീറ്ററുകൾ പരിശോധിക്കാൻ mii-ടൂൾ ടൂൾ ഉപയോഗിക്കുക.

$ mii-tool

നെറ്റ്uവർക്ക് ബോണ്ടിംഗിന്റെ തരങ്ങൾ ചുവടെ പട്ടികപ്പെടുത്തിയിരിക്കുന്നു.

  • മോഡ്=0 (ബാലൻസ്-ആർആർ)
  • മോഡ്=1 (സജീവ-ബാക്കപ്പ്)
  • mode=2 (balance-xor)
  • മോഡ്=3 (പ്രക്ഷേപണം)
  • മോഡ്=4 (802.3ad)
  • mode=5 (balance-tlb)
  • mode=6 (balance-alb)

എൻഐസി ബോണ്ടിംഗിനെക്കുറിച്ചുള്ള മുഴുവൻ ഡോക്യുമെന്റേഷനുകളും ലിനക്സ് കേർണൽ ഡോക് പേജുകളിൽ കാണാം.