5 Replies Latest reply on Feb 18, 2013 11:34 PM by 960874

    Invert network interfaces

    Thomas Martin

      I use OVM 3.1.1 on a Oracle X4270M2 server.

      After installation and deployment, we discover that two network interfaces of the same bonding have been inverted by OVM (maybe during installation, or after, I don't know).

      So, eth0/eth1/eth6 are on the motherboard network card, and eth2/eth3/eth4/eth5 are on the additional network card.
      Furthermore, eth7 does not exists !

      Is there a way to fix this mess ?
      Is it possible to re-number network interfaces ?

        • 1. Re: Invert network interfaces
          I run 4270 M2 and never had that problem. Has anyone manually edited the ifcfg files for the ethernet interfaces? The MAC address or "HWADDR=" values are defined in these files and I don't see how they could random change to reference another MAC address.
          • 2. Re: Invert network interfaces
            Thomas Martin
            MAC addresses in ifcfg files matches MAC addresses of physical interfaces, so they are also listed in the wrong order.
            I don't think changing these files can change the association between network interfaces names and mac addresses, but maybe i'm wrong ?
            • 3. Re: Invert network interfaces
              Have you experienced a failure of one of the nics or are all of them still active regardless of whether they are reordered or not?
              • 4. Re: Invert network interfaces

                Changing the ordering/naming/identification of NIC's can be a hassle - especially on OVS! Usually, it involves editing the contents of /etc/udev/rules.d/. e.g.,
                xen1:~ # cat /etc/udev/rules.d/70-persistent-net.rules 
                SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0e:0c:80:1a:e4", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth2"
                SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:30:48:87:22:c8", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"
                SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:30:48:87:22:c9", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth1"
                ...but on OVS, there doesn't appear to be a similar facility:
                [root@xen3 ~]# grep eth /etc/udev/rules.d/*
                [root@xen3 ~]# ll /etc/udev/rules.d/
                total 76
                -rw-r--r-- 1 root root   540 Mar 26  2012 05-udev-early.rules
                -rw-r--r-- 1 root root   992 Oct 19 21:30 40-multipath.rules
                -rw-r--r-- 1 root root 16732 Mar 26  2012 50-udev.rules
                -rw-r--r-- 1 root root   471 Mar 26  2012 51-hotplug.rules
                -rw-r--r-- 1 root root   143 Jul  4  2009 60-net.rules
                -rw-r--r-- 1 root root   316 Aug  9  2012 60-raw.rules
                -rw-r--r-- 1 root root   328 Dec  3 21:47 88-clock.rules
                -rw-r--r-- 1 root root    61 Mar 26  2012 90-dm.rules
                -rw-r--r-- 1 root root    82 Mar 31  2010 90-hal.rules
                -rw-r--r-- 1 root root   107 Mar 26  2012 95-pam-console.rules
                -rw-r--r-- 1 root root    81 Oct 19 21:30 96-multipathd.rules
                -rw-r--r-- 1 root root   285 Mar 26  2012 96-ovs-pp.rules
                -rw-r--r-- 1 root root   292 Dec 20 23:27 98-kexec.rules
                -rw-r--r-- 1 root root  1296 Sep 27 13:43 xen-backend.rules
                -rw-r--r-- 1 root root   275 Dec  8  2011 xend.rules
                Generally speaking, it's easier to just change the bonding configuration (/etc/sysconfig/network-scripts/ifcfg-bondX) and move on.

                Eric Pretorious
                Truckee, CA
                • 5. Re: Invert network interfaces
                  epretorious wrote:
                  ...but on OVS, there doesn't appear to be a similar facility:
                  I haven't tried creating a udev rule on OVS, but this article does a very good job of illustrating the process if you care to try it out on OVS.

                  Chapter 7.13, Configuring the network Script, of Linux From Scratch

                  Eric Pretorious
                  Truckee, CA