<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>LinuxMonk &#187; bonding</title>
	<atom:link href="http://www.linuxmonk.org/tag/bonding/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.linuxmonk.org</link>
	<description>A Journey Towards Infinity...</description>
	<lastBuildDate>Fri, 16 Jul 2010 19:32:37 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>IP Bonding or Teaming in Linux &#8211; RHEL 5</title>
		<link>http://www.linuxmonk.org/2009/06/24/ip-bonding-or-teaming-in-linux-rhel-5/</link>
		<comments>http://www.linuxmonk.org/2009/06/24/ip-bonding-or-teaming-in-linux-rhel-5/#comments</comments>
		<pubDate>Wed, 24 Jun 2009 16:25:14 +0000</pubDate>
		<dc:creator>Rosario</dc:creator>
				<category><![CDATA[Bash]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Linux Networking]]></category>
		<category><![CDATA[bonding]]></category>
		<category><![CDATA[kernel]]></category>
		<category><![CDATA[Networking]]></category>

		<guid isPermaLink="false">http://www.linuxmonk.org/?p=282</guid>
		<description><![CDATA[IP Bonding or Teaming is a method of combining all the network interfaces togather into one with one of the types like Network Fault Tolerance, Round Robin, Back up, Loadbalancing etc. So it looks virtually as a single interface to the outside world providing high availability, based on the type you have set. Means, in [...]]]></description>
			<content:encoded><![CDATA[<p>IP Bonding or Teaming is a method of combining all the network interfaces togather into one with one of the types like Network Fault Tolerance, Round Robin, Back up, Loadbalancing etc. So it looks virtually as a single interface to the outside world providing high availability, based on the type you have set. Means, in a Network fault tolerant type one will take over if other fails and in a Load Balancing type trafic is shared when one busy to the other.</p>
<p>I got a chance of doing IP bonding in a HP Proliant Servers running RHEL 5. Everthing went well with no issues. Let me share my experience with my blog readers. In linux IP bonding is quite simple and is done with some kernel modules and no extra package is to be installed. In Windows, bonging or teaming is done with some software. With HP server, it can easily be done with some HP Network Configuration Uitlities.<br />
Two establish IP bonding you need a minimum of two nework interfaces</p>
<p style="margin-bottom: 0in;"><strong>Step 1:Check your network interfaces</strong></p>
<blockquote>
<p style="margin-top: 0.19in; margin-bottom: 0.19in; line-height: 100%;"><span style="color: #0000ff;"><span style="font-family: Times New Roman,serif;"><span style="font-size: small;"><span>#ethtool eth0</span></span></span></span><span style="font-family: Times New Roman,serif;"><span style="font-size: small;"><br />
</span></span><span style="font-family: Times New Roman,serif;"><span style="font-size: small;">Settings for eth0:<br />
Supported ports: [ TP MII ]<br />
Supported link modes: 10baseT/Half 10baseT/Full<br />
100baseT/Half 100baseT/Full<br />
Supports auto-negotiation: Yes<br />
Advertised link modes: 10baseT/Half 10baseT/Full<br />
100baseT/Half 100baseT/Full<br />
Advertised auto-negotiation: Yes<br />
</span></span><span style="font-family: Times New Roman,serif;"><span style="font-size: small;"><strong>Speed: 100Mb/s</strong></span></span><span style="font-family: Times New Roman,serif;"><span style="font-size: small;"><br />
</span></span><span style="font-family: Times New Roman,serif;"><span style="font-size: small;"><strong>Duplex: Full<br />
</strong></span></span><span style="font-family: Times New Roman,serif;"><span style="font-size: small;">Port: MII<br />
PHYAD: 1<br />
Transceiver: internal<br />
Auto-negotiation: on<br />
Supports Wake-on: g<br />
Wake-on: g<br />
Current message level: 0&#215;00000007 (7)<br />
</span></span><span style="font-family: Times New Roman,serif;"><span style="font-size: small;"><strong>Link detected: yes</strong></span></span><span style="font-family: Times New Roman,serif;"><span style="font-size: small;"><strong></strong></span></span></p>
<p style="margin-top: 0.19in; margin-bottom: 0.19in; line-height: 100%;"><span style="color: #0000ff;"><span style="font-family: Times New Roman,serif;"><span style="font-size: small;"><span>#ethtool eth1</span></span></span></span><span style="font-family: Times New Roman,serif;"><span style="font-size: small;"><br />
Settings for eth1:<br />
Supported ports: [ TP MII ]<br />
Supported link modes: 10baseT/Half 10baseT/Full<br />
100baseT/Half 100baseT/Full<br />
Supports auto-negotiation: Yes<br />
Advertised link modes: 10baseT/Half 10baseT/Full<br />
100baseT/Half 100baseT/Full<br />
Advertised auto-negotiation: Yes<br />
Speed: 100Mb/s<br />
Duplex: Full<br />
Port: MII<br />
PHYAD: 1<br />
Transceiver: internal<br />
Auto-negotiation: on<br />
Supports Wake-on: g<br />
Wake-on: g<br />
Current message level: 0&#215;00000007 (7)<br />
Link detected: yes </span></span><span style="font-family: Times New Roman,serif;"><span style="font-size: small;"><strong></strong></span></span></p>
</blockquote>
<p style="margin-bottom: 0in;">
<p style="margin-bottom: 0in;"><strong>Step 2: Check all the requiured kernel modules are available(bonding and mii)</strong></p>
<blockquote>
<p style="margin-bottom: 0in;"><span style="color: #0000ff;">#modprobe &#8211;list | grep bonding</span></p>
<p style="margin-bottom: 0in;">/lib/modules/2.6.18-92.el5/kernel/drivers/net/bonding/bonding.ko</p>
<p style="margin-bottom: 0in;"><span style="color: #0000ff;"># modprobe &#8211;list | grep mii</span></p>
<p style="margin-bottom: 0in;">/lib/modules/2.6.18-92.el5/kernel/drivers/net/mii.ko</p>
<p style="margin-bottom: 0in;">
</blockquote>
<p style="margin-bottom: 0in;">
<p style="margin-bottom: 0in;"><strong>Step 3: Editing the modprobe.conf file</strong></p>
<blockquote>
<p style="margin-bottom: 0in;"><span style="color: #0000ff;">#vim /etc/modprobe.conf</span></p>
<p style="margin-bottom: 0in;">and add the following lines at the end</p>
<p style="margin-bottom: 0in;">alias bond0 bonding</p>
<p style="margin-bottom: 0in;">options bond0 mode=1 arp_ip_target=192.168.52.1 arp_interval=200 primary=eth0</p>
</blockquote>
<p style="margin-bottom: 0in;">To know more about the parameters to be used here use the command</p>
<blockquote>
<p style="margin-bottom: 0in;"><span style="color: #0000ff;"><span style="background: transparent none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial;">#modinfo bonding</span></span></p>
<p style="margin-bottom: 0in;">filename:       /lib/modules/2.6.18-92.el5/kernel/drivers/net/bonding/bonding.ko</p>
<p style="margin-bottom: 0in;">author:         Thomas Davis, tadavis@lbl.gov and many others</p>
<p style="margin-bottom: 0in;">description:    Ethernet Channel Bonding Driver, v3.2.4</p>
<p style="margin-bottom: 0in;">version:        3.2.4</p>
<p style="margin-bottom: 0in;">license:        GPL</p>
<p style="margin-bottom: 0in;">srcversion:     DB2ABCD47A83F8567EBE92B</p>
<p style="margin-bottom: 0in;">depends:</p>
<p style="margin-bottom: 0in;">vermagic:       2.6.18-92.el5 SMP mod_unload gcc-4.1</p>
<p style="margin-bottom: 0in;">parm:           max_bonds:Max number of bonded devices (int)</p>
<p style="margin-bottom: 0in;">parm:           miimon:Link check interval in milliseconds (int)</p>
<p style="margin-bottom: 0in;">parm:           updelay:Delay before considering link up, in milliseconds (int)</p>
<p style="margin-bottom: 0in;">parm:           downdelay:Delay before considering link down, in milliseconds (int)</p>
<p style="margin-bottom: 0in;">parm:           use_carrier:Use netif_carrier_ok (vs MII ioctls) in miimon; 0 for off, 1 for on (default) (int)</p>
<p style="margin-bottom: 0in;">parm:           mode:Mode of operation : 0 for balance-rr, 1 for active-backup, 2 for balance-xor, 3 for broadcast, 4 for 802.3ad, 5 for balance-tlb, 6 for balance-alb (charp)</p>
<p style="margin-bottom: 0in;">parm:           primary:Primary network device to use (charp)</p>
<p style="margin-bottom: 0in;">parm:           lacp_rate:LACPDU tx rate to request from 802.3ad partner (slow/fast) (charp)</p>
<p style="margin-bottom: 0in;">parm:           xmit_hash_policy:XOR hashing method: 0 for layer 2 (default), 1 for layer 3+4 (charp)</p>
<p style="margin-bottom: 0in;">parm:           arp_interval:arp interval in milliseconds (int)</p>
<p style="margin-bottom: 0in;">parm:           arp_ip_target:arp targets in n.n.n.n form (array of charp)</p>
<p style="margin-bottom: 0in;">parm:           arp_validate:validate src/dst of ARP probes: none (default), active, backup or all (charp)</p>
<p style="margin-bottom: 0in;">parm:           fail_over_mac:For active-backup, do not set all slaves to the same MAC.  0 of off (default), 1 for on. (int)</p>
<p style="margin-bottom: 0in;">module_sig:	883f35048175a9e6e24e25c96667c37112449509f5739ebf283efa5295d315b73cee5e956f6e25709cbcf2826571c5ffc20f2d87672bb921d610d7</p>
<p style="margin-bottom: 0in;">
</blockquote>
<p style="margin-bottom: 0in;">
<p style="margin-bottom: 0in;"><strong>Step 3: Now load the modules</strong></p>
<blockquote><p>&lt;!&#8211; 		@page { size: 8.27in 11.69in; margin: 0.79in } 		P { margin-bottom: 0.08in } 	&#8211;&gt;</p>
<p style="margin-bottom: 0in;"><span style="color: #0000ff;"> #modprobe bonding</span></p>
<p style="margin-bottom: 0in;"><span style="color: #0000ff;"> #modprobe mii</span></p>
</blockquote>
<p style="margin-bottom: 0in;">This will create a bond0 config file in the networks-scripts directory</p>
<p style="margin-bottom: 0in;">
<p style="margin-bottom: 0in;"><strong>Step 4: Editting the three configuration files for eth0,eth1,bond0</strong></p>
<blockquote>
<p style="margin-bottom: 0in;"><span style="color: #0000ff;">|# vim /etc/sysconfig/network-scripts/ifcfg-bond0</span></p>
<p style="margin-bottom: 0in;">DEVICE=bond0</p>
<p style="margin-bottom: 0in;">BOOTPROTO=none</p>
<p style="margin-bottom: 0in;">ONBOOT=yes</p>
<p style="margin-bottom: 0in;">NETMASK=255.255.255.0</p>
<p style="margin-bottom: 0in;">IPADDR=192.168.52.4</p>
<p style="margin-bottom: 0in;">USERCTL=no</p>
<p style="margin-bottom: 0in;">GATEWAY=192.168.52.1</p>
<p style="margin-bottom: 0in;">TYPE=Ethernet</p>
<p style="margin-bottom: 0in;">IPV6INIT=no</p>
<p style="margin-bottom: 0in;">PEERDNS=yes</p>
<p style="margin-bottom: 0in;">
<p style="margin-bottom: 0in;"><span style="color: #0000ff;">#vim  /etc/sysconfig/network-scripts/ifcfg-eth0</span></p>
<p style="margin-bottom: 0in;">DEVICE=eth0</p>
<p style="margin-bottom: 0in;">BOOTPROTO=none</p>
<p style="margin-bottom: 0in;">ONBOOT=yes</p>
<p style="margin-bottom: 0in;">MASTER=bond0</p>
<p style="margin-bottom: 0in;">SLAVE=yes</p>
<p style="margin-bottom: 0in;">USERCTL=no</p>
<p style="margin-bottom: 0in;">TYPE=Ethernet</p>
<p style="margin-bottom: 0in;">
<p style="margin-bottom: 0in;"><span style="color: #0000ff;">#vim /etc/sysconfig/network-scripts/ifcfg-eth1</span></p>
<p style="margin-bottom: 0in;">DEVICE=eth1</p>
<p style="margin-bottom: 0in;">BOOTPROTO=none</p>
<p style="margin-bottom: 0in;">ONBOOT=yes</p>
<p style="margin-bottom: 0in;">MASTER=bond0</p>
<p style="margin-bottom: 0in;">SLAVE=yes</p>
<p style="margin-bottom: 0in;">USERCTL=no</p>
<p style="margin-bottom: 0in;">TYPE=Ethernet</p>
</blockquote>
<p style="margin-bottom: 0in;">
<p style="margin-bottom: 0in;"><strong>Step5: Restart your networks service</strong></p>
<blockquote>
<p style="margin-bottom: 0in;"><span style="color: #0000ff;">#/etc/init.d/network restart</span></p>
</blockquote>
<blockquote>
<p style="margin-bottom: 0in;"><span style="color: #0000ff;">#ifconfig</span></p>
</blockquote>
<p style="margin-bottom: 0in;">Now use ifconfig command to check the, you will look a new interface called bond0 has been created.  The ip you set for it is going to be your ip address of the system. Enjoy bonding</p>
<p style="margin-bottom: 0in;">
<p style="margin-top: 0.19in; margin-bottom: 0.19in; line-height: 100%;">
]]></content:encoded>
			<wfw:commentRss>http://www.linuxmonk.org/2009/06/24/ip-bonding-or-teaming-in-linux-rhel-5/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
