Subject: Re: local-mac-address setting
To: None <port-sparc@NetBSD.org>
From: Tillman Hodgson <tillman@seekingfire.com>
List: port-sparc
Date: 05/15/2005 15:01:13
[Responding a month later -- a new record in delayed email for me ;-)]

On Sat, Apr 16, 2005 at 09:18:14AM +0200, Martin Husemann wrote:
> On Fri, Apr 15, 2005 at 11:44:30AM -0600, Tillman Hodgson wrote:
> > Remotely, of course. I hadn't had my first cup of coffee for the day,
> > you see ;-) The machine is no longer reachable and arp requests for it
> > go unanswered. I suspect that there is simply /no/ mac address
> > configured, making it dead to the network.
> 
> Please verify this. What version are you using? In 3.0_BETA and -current
> at least it should (a) just work, and (b) fall back to the global address
> if the card does not have a local one.

I'm running 2.0:

# uname -a
NetBSD utu.seekingfire.prv 2.0 NetBSD 2.0 (UTU) #1: Sun Apr 3 18:06:55
CST 2005  toor@utu.seekingfire.prv:/usr/src/sys/arch/sparc/compile/UTU sparc

I finally had an occasion to reboot the host a few times and play with
the eeprom settings (due to the the "couldn't ping cpu" dual-CPU
problems I reported to the list). The eeprom setting is definitely on:

# eeprom | grep local-mac
eeprom: property `security-mode' not yet supported
eeprom: property `security-password' not yet supported
eeprom: property `oem-logo' not yet supported
local-mac-address?=true

But both cards have the same MAC address:

# ifconfig le0 | grep address
        address: 08:00:20:11:fd:8d
# ifconfig hme0 | grep address
        address: 08:00:20:11:fd:8d

Note that I understand why the MACs are normally the same on SUN hosts.
Normally I agree with the reasoning: I'm trying to do something unusual
this time though (explained below) ;-)

> Does your switch maybe hardwire the MAC address and refuse to overwrite it?

I assume you mean that the switch won't want to see the same MAC on two
different ports. If that's the case, I certainly hope it does that (^&

My goal, after all, is not to round-robin or fail-over between the
100Mbit and the 10Mbit NIC (which would be a net decrease in speed
either way). What I want is for the 10Mbit NIC to have it's own IP
address and MAC so that I can use for everything-but-NFS and use the
100Mbit NIC for NFS -- both on the same broadcast domain because I don't
want to use a second switch and force my other hosts to have to route to
get to the other interface. That configuration should give me a net
increase in file-serving performance, especially as I'm serving a 7-bay
DEC JBOD from this host and it gets reasonably busy.

ALternatively, if you mean that I had previously had another host
plugged into the port that I plugged the 10Mbit NIC into the switch
isn't detecting the new MAC, then I don't believe so. I used several
previously-unused ports to confirm that. It's not a very smart switch,
though, so I don't have access to command-line to confirm that. As both
NICs currently have the same MAC, I can easily understand why the switch
dropped the box when I first attempted this remotely.

> >  I noticed that ifconfig doesn't allow that (unlike,
> > for example, the ifconfig on FreeBSD/sparc64) so I couldn't do anything
> > like that from the rc scripts of the OS itself. What's the proper way to
> > do this?
> 
> There is none - it has been proposed several times, but all drivers need to
> be changed to support it (which is easy for all sun drivers).

Ok, that explains the lack of that functionality in ifconfig.

Would upgrading to a -current snapshot or 3.0-beta get me the
automagically-working bits you mentioned before?

Thanks muchly for you help,

-T


-- 
Page 5: It is impossible to learn everything about Unix. Concentrate on
what you need and what you think you will enjoy.
	- Harley Hahn, _The Unix Companion_