{"id":1169,"date":"2015-10-16T09:46:11","date_gmt":"2015-10-16T07:46:11","guid":{"rendered":"https:\/\/elkano.org\/blog\/?p=1169"},"modified":"2015-10-16T09:47:09","modified_gmt":"2015-10-16T07:47:09","slug":"manage-interface-bondings-sysfs-interface","status":"publish","type":"post","link":"https:\/\/elkano.org\/blog\/manage-interface-bondings-sysfs-interface\/","title":{"rendered":"Manage interface bondings through sysfs interface"},"content":{"rendered":"<p>This is a easy way to manage your bondings through the sysfs interface.<\/p>\n<p>Load the bond module:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-linenumbers=\"false\" data-enlighter-theme=\"enlighter\" data-enlighter-language=\"xml\">\r\n# modprobe bond\r\n<\/pre>\n<p>Create a new bonding bond0:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-linenumbers=\"false\" data-enlighter-theme=\"enlighter\" data-enlighter-language=\"xml\">\r\necho &quot;+bond0&quot; &gt;  \/sys\/class\/net\/bonding_masters\r\n<\/pre>\n<p>View the existing bondings:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-linenumbers=\"false\" data-enlighter-theme=\"enlighter\" data-enlighter-language=\"xml\">\r\n# cat \/sys\/class\/net\/bonding_masters\r\nbond0 bond1\r\n<\/pre>\n<p>Add interfaces to bond0 bonding:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-linenumbers=\"false\" data-enlighter-theme=\"enlighter\" data-enlighter-language=\"xml\">\r\necho &quot;+eth0&quot; &gt; \/sys\/class\/net\/bond0\/bonding\/slaves\r\necho &quot;+eth1&quot; &gt; \/sys\/class\/net\/bond0\/bonding\/slaves\r\n<\/pre>\n<p>Remove an interface from an existing bonding<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-linenumbers=\"false\" data-enlighter-theme=\"enlighter\" data-enlighter-language=\"xml\">\r\necho &quot;-eth0&quot; &gt; \/sys\/class\/net\/bond0\/bonding\/slaves\r\n<\/pre>\n<p>Remove the bond0 inteface<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-linenumbers=\"false\" data-enlighter-theme=\"enlighter\" data-enlighter-language=\"xml\">\r\necho &quot;-bond0&quot; &gt;  \/sys\/class\/net\/bonding_masters\r\n<\/pre>\n<p>Change the bonding mode (The bond interface must be down before the mode can be changed.):<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-linenumbers=\"false\" data-enlighter-theme=\"enlighter\" data-enlighter-language=\"xml\">\r\necho balance-alb &gt; \/sys\/class\/net\/bond0\/bonding\/mode\r\n<\/pre>\n<p>or<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-linenumbers=\"false\" data-enlighter-theme=\"enlighter\" data-enlighter-language=\"xml\">\r\necho 6 &gt; \/sys\/class\/net\/bond0\/bonding\/mode\r\n<\/pre>\n<p>A full example:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-linenumbers=\"false\" data-enlighter-theme=\"enlighter\" data-enlighter-language=\"xml\">\r\n# modprobe bonding\r\n# modprobe e100\r\n# echo balance-alb &gt; \/sys\/class\/net\/bond0\/bonding\/mode\r\n# ifconfig bond0 192.168.1.1 netmask 255.255.255.0 up\r\n# echo 100 &gt; \/sys\/class\/net\/bond0\/bonding\/miimon\r\n# echo +eth0 &gt; \/sys\/class\/net\/bond0\/bonding\/slaves\r\n# echo +eth1 &gt; \/sys\/class\/net\/bond0\/bonding\/slaves\r\n<\/pre>\n<p>References: <a href=\"https:\/\/www.kernel.org\/doc\/Documentation\/networking\/bonding.txt\" target=\"_blank\"> https:\/\/www.kernel.org\/doc\/Documentation\/networking\/bonding.txt [3.4]<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>This is a easy way to manage your bondings through the sysfs interface. Load the bond module: # modprobe bond Create a new bonding bond0: echo &quot;+bond0&quot; &gt; \/sys\/class\/net\/bonding_masters View the existing bondings: # cat \/sys\/class\/net\/bonding_masters bond0 bond1 Add interfaces to bond0 bonding: echo &quot;+eth0&quot; &gt; \/sys\/class\/net\/bond0\/bonding\/slaves echo &quot;+eth1&quot; &gt; \/sys\/class\/net\/bond0\/bonding\/slaves Remove an interface from [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[3,27],"tags":[158,161],"_links":{"self":[{"href":"https:\/\/elkano.org\/blog\/wp-json\/wp\/v2\/posts\/1169"}],"collection":[{"href":"https:\/\/elkano.org\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/elkano.org\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/elkano.org\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/elkano.org\/blog\/wp-json\/wp\/v2\/comments?post=1169"}],"version-history":[{"count":7,"href":"https:\/\/elkano.org\/blog\/wp-json\/wp\/v2\/posts\/1169\/revisions"}],"predecessor-version":[{"id":1177,"href":"https:\/\/elkano.org\/blog\/wp-json\/wp\/v2\/posts\/1169\/revisions\/1177"}],"wp:attachment":[{"href":"https:\/\/elkano.org\/blog\/wp-json\/wp\/v2\/media?parent=1169"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/elkano.org\/blog\/wp-json\/wp\/v2\/categories?post=1169"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/elkano.org\/blog\/wp-json\/wp\/v2\/tags?post=1169"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}