{"id":133,"date":"2009-12-01T15:59:24","date_gmt":"2009-12-01T14:59:24","guid":{"rendered":"http:\/\/kudzia.eu\/b\/?p=133"},"modified":"2014-10-23T17:06:46","modified_gmt":"2014-10-23T16:06:46","slug":"interface-teaming-bonding-vland-under-linux-debian","status":"publish","type":"post","link":"https:\/\/kudzia.eu\/b\/2009\/12\/interface-teaming-bonding-vland-under-linux-debian\/","title":{"rendered":"interface teaming \/ bonding + vlan under linux \/ debian"},"content":{"rendered":"<p>goal:<\/p>\n<p>layer-2 failover without any <a href=\"http:\/\/en.wikipedia.org\/wiki\/Distributed_Split_Multi-Link_Trunking\">special features<\/a> on the switch level.<br \/>\nafter recent hang of on of switches i&#8217;d like to improve reliability of connectivity within a server rack.<br \/>\ni already have all servers connected to two different switches&#8230; now it&#8217;s time for automated failover.<br \/>\n<!--more--><br \/>\ni&#8217;m experimenting with <a href=\"http:\/\/www.linuxfoundation.org\/en\/Net:Bonding\">interface teaming<\/a> in active-backup mode. <\/p>\n<p>that&#8217;s my \/etc\/network\/interfaces:<\/p>\n<pre class=\"brush: plain; title: ; notranslate\" title=\"\">\r\nauto bond0\r\niface bond0 inet manual\r\n        slaves eth0 eth1\r\n        bond_mode active-backup\r\n        bond_primary eth0\r\n        bond_arp_interval 1000\r\n        bond_arp_ip_target 192.168.0.10 10.16.10.1\r\n\r\nauto bond0.22\r\niface bond0.22 inet static\r\n        address 192.168.0.11\r\n        netmask 255.255.255.0\r\n\r\nauto bond0.11\r\niface bond0.11 inet static\r\n        address 10.16.10.177\r\n        netmask 255.255.255.0\r\n        gateway 10.16.10.1\r\n<\/pre>\n<p>.. and so far it seems to work fine in the test lab<\/p>\n<p>failure is not detected by the link status [ that would be quite useless &#8211; during my last hang all switche&#8217;s ports were up ], instead it sends arp-who-has to group of hosts defined in bond_arp_ip_target<\/p>\n<p>20110606 &#8211; interestingly option that worked for me fine underl lenny:<\/p>\n<pre class=\"brush: plain; title: ; notranslate\" title=\"\">\r\nbond_arp_validate 3\r\n<\/pre>\n<p>no longer works for me under squeeze. if i set it bond shows status of both interfaces as down.<\/p>\n<p>20141023 &#8211; setup as described above has been working fine for years in production using the following topology:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/kudzia.eu\/b\/wp-content\/uploads\/2009\/12\/active-backup.png\" alt=\"active-backup\" width=\"365\" height=\"319\" class=\"alignnone size-full wp-image-2377\" srcset=\"https:\/\/kudzia.eu\/b\/wp-content\/uploads\/2009\/12\/active-backup.png 365w, https:\/\/kudzia.eu\/b\/wp-content\/uploads\/2009\/12\/active-backup-300x262.png 300w\" sizes=\"auto, (max-width: 365px) 100vw, 365px\" \/><\/p>\n","protected":false},"excerpt":{"rendered":"<p>goal: layer-2 failover without any special features on the switch level. after recent hang of on of switches i&#8217;d like to improve reliability of connectivity within a server rack. i already have all servers connected to two different switches&#8230; now it&#8217;s time for automated failover.<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[17],"tags":[47],"class_list":["post-133","post","type-post","status-publish","format-standard","hentry","category-tech","tag-linux-networking"],"_links":{"self":[{"href":"https:\/\/kudzia.eu\/b\/wp-json\/wp\/v2\/posts\/133","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/kudzia.eu\/b\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/kudzia.eu\/b\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/kudzia.eu\/b\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/kudzia.eu\/b\/wp-json\/wp\/v2\/comments?post=133"}],"version-history":[{"count":17,"href":"https:\/\/kudzia.eu\/b\/wp-json\/wp\/v2\/posts\/133\/revisions"}],"predecessor-version":[{"id":2379,"href":"https:\/\/kudzia.eu\/b\/wp-json\/wp\/v2\/posts\/133\/revisions\/2379"}],"wp:attachment":[{"href":"https:\/\/kudzia.eu\/b\/wp-json\/wp\/v2\/media?parent=133"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/kudzia.eu\/b\/wp-json\/wp\/v2\/categories?post=133"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/kudzia.eu\/b\/wp-json\/wp\/v2\/tags?post=133"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}