On Tue, Jun 12, 2007 at 08:37:38PM +0100, Jonathan Underwood wrote:

> > > Presumably switching the two interfaces on the frontend (eth0<->eth1)
> > > would also solve this problem?
> > If you have root privileges this seems to be a another good approach.
> I don't, but will explain the issue to sysadmin. Thanks again.

I suggest to get rid of this senseless naming (eth0, eth1) and use
self-explanatory names.

To illustrate it, here are some lines from /etc/mactab. It's a mapping
between MAC addresses and the desired names. The file can be shared
between cluster nodes, in other words, just put in all your MAC
addresses and copy it around:

# ipc654
ethsvc  00:00:5a:9e:a8:83
ethmp   00:0e:0c:06:2f:af
ethfrz  00:0e:0c:06:2c:9b

# heidi
ethsvc  00:11:d8:37:98:30
ethmp   00:00:5a:9a:0b:6c

# inge
ethsvc  00:11:d8:37:94:71 
ethmp   00:00:5a:9b:36:de 

where "svc" means "service" and "mp" means "message passing". By this,
we can say "btl_tcp_if_include=ethmp". Obviously, this would solve your
problem.

This /etc/mactab stuff requires the tool "nameif" (package net-tools in
Debian) and needs to be called before the interfaces are pulled up.

For Debian, we use:

# /etc/network/interfaces -- configuration file for ifup(8), ifdown(8)
auto lo
iface lo inet loopback
        pre-up nameif -s

auto ethsvc
# the usual stuff

For Gentoo, we have in /etc/conf.d/net:

# rename interfaces according to /etc/mactab
preup()
{
    ip link set "${IFACE}" down || true
    nameif -s
    return 0
}


If a system has more than one NIC, I would never let the kernel define
the naming, but always use /etc/mactab instead.


HTH

-- 
Cluster and Metacomputing Working Group
Friedrich-Schiller-Universität Jena, Germany

private: http://adi.thur.de

Reply via email to