This is a question concerning Sun's Ethernet adapters MAC addresses.
Here is my problem description :
In order to increase the access bandwith on a Ultra Sparc server (running
Solaris v2.5.1), someone imagined to put three Ethernet adapters on the
same physical Ethernet network, all connected using the same Ethernet
switch. I know it is a strange way to connect multihomed host but it works
well with NT servers as detailled hereafter...
At first time, the three adapters were configured with three different
IP addresses belonging to the SAME IP subnetwork.
Investigating this configuration, I found that no matter the host IP
address you use to access the server, your ARP table always contains
the same MAC address. This means that the same Ethernet adapter is always
used to access the host !
Therefore, I first change the subnetworks masks to let the IP layer
believes that each network adapter reachs a different IP network,
even if at the physical layer the physical network is the same.
And the problem cames back : a host who is performing an ARP request
on one of the three IP address will always have the same MAC address
back.
And an important fact is that this NOT HAPPENS with Windows NT 4.0 :
two Ethernet adapters connected on the same IP and Ethernet networks
will returns different MAC address. In this case, you really access
the NT server from two different physical paths, even if your defined IP
addresses are belonging to the same IP subnetworks !
On the Ultra, the "ifconfig -a" command gives back :
lo0: flags=849<UP,LOOPBACK,RUNNING,MULTICAST> mtu 8232
inet 127.0.0.1 netmask ff000000
hme0: flags=863<UP,BROADCAST,NOTRAILERS,RUNNING,MULTICAST> mtu 1500
inet 9.1.6.30 netmask ffffff00 broadcast 9.1.6.255
ether 8:0:20:82:d7:77
hme1: flags=863<UP,BROADCAST,NOTRAILERS,RUNNING,MULTICAST> mtu 1500
inet 9.1.7.30 netmask ffffff00 broadcast 9.1.7.255
ether 8:0:20:82:d7:77
hme2: flags=863<UP,BROADCAST,NOTRAILERS,RUNNING,MULTICAST> mtu 1500
inet 9.1.8.30 netmask ffffff00 broadcast 9.1.8.255
ether 8:0:20:82:d7:77
As you can see, the hme driver reports that the three adapters
have the same MAC address.
One thing more : I have random contact lost problem : sometime,
you cannot reach the host anymore unless you disconnect-reconnect
the three adapters from the switch. Maybe the switch is confused
because ethernet frames wearing the same MAC address are coming
from different ports ??? I don't know.
Therefore, I have the feeling that the three adapters are sending
frames on the ethernet using the same MAC... The problem is therefore
not on the level of the ARP or IP protocols.
Three explanations :
1) Sun manufacturer is "burning" a given MAC address in more that one
Ethernet card. I cannot imagine that : Sun is a serious company !
2) When the system boots, it forces a given MAC address to overwrite the
adapters on-board MAC addresses. Then in the case you have more than one
adapter, you will have the same MAC for every adapter. However, because in
common uses, you connect these adapters on different physical networks. In
this case, there is no problem !
However, this is a behaviour which is NOT COMPLIANT with the Ethernet
network IEEE recommendation... And this is why I have problems with my
current configuration.
DOES SOMEONE KNOWN HOW TO DISABLE THIS ?
3) Some hidden thing in the hme (fast ethernet card I use) driver I do not
understand.
Many thanks to everyone to comment on that.
Thierry DELMOT
Alcatel Bell
sche...@sm.bel.alcatel.be
-------------------==== Posted via Deja News ====-----------------------
http://www.dejanews.com/ Search, Read, Post to Usenet
Sun-Managers mailing list has a FAQ on this :
12. Networking
12.1) Why do both my net interfaces have the same ethernet
address?
-----------------------------------------------------------------------------
12. Networking
-----------------------------------------------------------------------------
Subject: 12.1) Why do both my net interfaces have the same ethernet
address?
The Ethernet version 2.0 specification (November 1982) states:
The physical address of each station is set by network
management to a unique value associated with the station,
and distinct from the address of any other station on any
Ethernet. The setting of the station's physical address
by network management allows multiple multiple data link
controllers connected to a single station to respond to
the same physical address.
This doesn't normally constitute a problem because each interface will
typically be on a different subnet. If, for some reason, different
ethernet addresses are required on different interfaces (for example,
to
attach two interfaces to the same subnet), a new one may be assigned
using the ifconfig command.
----------------------------------
P.S. Do you use 100Tx on your NT servers. I can't get Solaris and NT
to talk a reasonable data rate over 100BaseTX
Regards
Mike
>Hello everybody,
>This is a question concerning Sun's Ethernet adapters MAC addresses.
>Here is my problem description :
>In order to increase the access bandwith on a Ultra Sparc server (running
>Solaris v2.5.1), someone imagined to put three Ethernet adapters on the
>same physical Ethernet network, all connected using the same Ethernet
>switch. I know it is a strange way to connect multihomed host but it works
>well with NT servers as detailled hereafter...
Setting the same MAC address on all three? Hmmm.
the usual way to do this would be give each adapter a different IP and
MAC address, then in the DNS give three addresses for the hostname.
Higher versions of BIND do this, then you can do round-robin DNS,
where each request gets the next IP address as the address of the
host. As long as you have a relatively large number of client that
don't cache IP addresses for ages this is a nice easy solution...
Just my 2p
M.
###################################################################
# Martin Hargreaves (Director/Consultant) #
# Datamodel Ltd - Open Systems Management and Security #
# mar...@datamodl.demon.co.uk http://www.datamodl.demon.co.uk #
###################################################################