Page 1 of 2

How do I find the Origin2000 MAC address?

Posted: Sun Oct 24, 2004 1:37 pm
by loonvf
Hi all,

I am trying to network install an Origin2000.
And following Ian's procedures I need to have the MAC address
of the Origin2000.
It's a deskside system with only the standard communications module
with the one ethernet port.

Because I don't have a working disk with IRIX I cannot use the
usual IRIX commands so I am looking for the Command Monitor
way of getting the MAC address.
printenv only shows the netaddr = 192.0.2.1

I hope some of you can help me. I did some searching in techpub
documents but I couldn't find anything specific for Origin2000 machinery.

Francois

Re: How do I find the Origin2000 MAC address?

Posted: Sun Oct 24, 2004 2:07 pm
by GeneratriX
loonvf wrote:printenv only shows the netaddr = 192.0.2.1

I hope some of you can help me. I did some searching in techpub
documents but I couldn't find anything specific for Origin2000 machinery.

Francois


Hello Francois! ;)

192.0.2.1 is an official internal test address from SGI.

Don't try to stablish any kind of communication using such address; because it can't access the ethernet hardware; in fact is only a virtual address for testing purposes.

Check on any other SGI box, the way to change to a physiq network layout!

Good luck! ;)

Posted: Sun Oct 24, 2004 3:10 pm
by Dr. Dave
On an SGI, the serial number of the machine is it's primary MAC address... if there's a serial number sticker on the unit, you may be in luck and would be able to use that.

At least that's so on the desktop systems.

Posted: Sun Oct 24, 2004 4:12 pm
by zafunk
You may have to prefix the serial number with 0800 to get the full mac address. At least, I had to do this with my Origin 200. The same applies if you enter lmhostid (but the system has to have a running install to do that!).

RTC

Posted: Sun Oct 24, 2004 4:25 pm
by GeneratriX
Dr. Dave wrote:On an SGI, the serial number of the machine is it's primary MAC address... if there's a serial number sticker on the unit, you may be in luck and would be able to use that.

At least that's so on the desktop systems.


Yup!; assumming that the RTC (Real Time Clock) is working/operative.
If it's not the true, only GOD knows! :D

Posted: Sun Oct 24, 2004 4:41 pm
by acronym
if it's @ home put it infront of any consumer router - check what address has connected through the routers config screen

@ work you'll have to ask the networking people what the address is on a give jack or port number.

I suppose this is all assumed if the machine is set to dhcp

Posted: Sun Oct 24, 2004 5:22 pm
by Dr. Dave
also, Ethereal (from Freeware) works great as a network sniffer, and can usually show all the info on your network in short order.

Posted: Mon Oct 25, 2004 12:26 am
by loonvf
Hi all,

Thanks so far for your reply.
The serial number sticker is not to be trusted since parts are probably
swapped in the past with another machine.

But I might be able to connect a simple broadband router to the machine
and see what information that returns.

Also Ethereal might be an option.

But actually I was hoping for the Command Monitor solution.

I let you know my progress and in the mean time any usefull advice
is very welcome offcourse.

Posted: Mon Oct 25, 2004 2:16 am
by jan-jaap
The MAC address is the system serial number only for workstations.

For big iron, the serial number is of the form Sxxxxxx where 'x' is a digit
The MAC address can be seen from the PROM: type 'printenv' and look for a line like eaddr=08:00:69:xx:yy:zz

Posted: Mon Oct 25, 2004 2:49 am
by hamei
jan-jaap wrote:The MAC address can be seen from the PROM: type 'printenv' and look for a line like eaddr=08:00:69:xx:yy:zz


can you 'setenv eaddr' to whatever you want this way also ?

Posted: Mon Oct 25, 2004 3:53 am
by jan-jaap
hamei wrote:can you 'setenv eaddr' to whatever you want this way also ?


It's not quite that easy.
The environment variables are stored in a serial EEPROM. There are read/write variables, stored from the start address upwards, and read-only variables, stored top-down. The eaddr is the only defined read-only variable.

The notable exception is the Indy, which stores the variables in the timer chip. The result is that if the timer battery dies, the Indy refuses to boot and has an eaddr of ff:ff:ff:ff:ff. For the Indy, you can change the eaddr.

The write protection is enforced by the IRIX kernel, AFAIK. You would have to write a change-sysid utility that operates on the bare metal, like fx or sash. I'm currently investigating bare-metal programming :wink:

On the other had, there is a change-sysid utility on the squirrel.com site to overwrite the eaddr in kernel memory on various workstations.

Posted: Mon Oct 25, 2004 4:01 am
by Hakimoto
i believe the MAC adresses are hardcoded. Aren't they?

Posted: Mon Oct 25, 2004 4:15 am
by loonvf
jan-jaap wrote:The MAC address is the system serial number only for workstations.

For big iron, the serial number is of the form Sxxxxxx where 'x' is a digit
The MAC address can be seen from the PROM: type 'printenv' and look for a line like eaddr=08:00:69:xx:yy:zz



Sorry Jan-Jaap but for Origin2000 this printenv , eaddr does not seem to
work according to the IRIX Admin guide.
And I don't see the eaddr when I run printenv

Posted: Mon Oct 25, 2004 4:28 am
by jan-jaap
Hakimoto wrote:i believe the MAC adresses are hardcoded. Aren't they?


Quoting a comp.sys.sgi post from Greg Douglas:
Message-ID: <3BFB3E9B.B8723B8A@reputable.com>
Date: Tue, 20 Nov 2001 22:41:47 -0700
From: Greg Douglas <gdouglas@reputable.com>
X-Mailer: Mozilla 4.77 [en] (Windows NT 5.0; U)
X-Accept-Language: en
MIME-Version: 1.0
Newsgroups: comp.sys.sgi.hardware
Subject: Re: Where to get NVRAM chip for INDY??
References: <9te2jr$b374$1@as201.hinet.hr> <3BFA9353.A43DF691@freenet.de> <7QBK7.87996$M21.17841966@typhoon.nyroc.rr.com>
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Lines: 36
NNTP-Posting-Host: 206.168.216.12
X-Trace: 20 Nov 2001 22:41:02 -0700, 206.168.216.12




"<<>>" wrote:
>
> You can reprogram the NVRAM on an Indy?? Isn't this number used in the case
> of node-locked software liscenses? If so ... hmmm.

It sure is. Too bad Maya runs almost unusably slow on the Indy.

> Is it possible to do
> this on other SGI machines?

Probably. The only one I know for sure you can't re-program is the O2,
which has a laser etched 3 pin Dallas chip (non re-writable) on the PCI
card cage, from whence comes the MAC level ethernet address.

Indigo uses a 93C56 serial EEPROM on the backplane. Re-programmable
in circuit, at least in theory.

Indigo 2 uses a 93C56 serial EEPROM on the connector board on the back
of the machine. Probably programmable in circuit.

Octane uses a Dallas button type device, which looks like a lithium
battery, on the backplane. Not sure if it's reprogammable, Dallas
Semiconductor has started adding some security features to
their products.

Origin 200 uses a wingo board under the power/reset switch. I don't
recall which type of non volatile memory is used for the MAC address.

And then of course, there's:
http://www.squirrel.com/squirrel/sgi-sysid.html

--
Greg Douglas
http://www.reputable.com


I can add to this that the same 93C56 serial EEPROM is used in the Personal Iris. It is on the little board behind the power/reset switches. You have to almost completely disassemble the PI to get to it.

The 93C56 is writable from PROM, and from IRIX. But it's not "just" possible to "setenv eaddr". I don't know if this restriction can be circumvented by writing a utility that runs on the bare metal. As a last resort, you could remove the chip from the box and put in an EEPROM writer. The 93C56 is fairly common, and fully documented.

Of course, this only applies to the PI, Indigo and Indigo2.

PS: There are limits to the practicality of this sort of hacks, you will for example get serious mayhem on the network if two or more boxen share the same MAC address. But hey, you're all interested in the SGI hardware implementation for academic purposes only, right :wink:

Posted: Mon Oct 25, 2004 4:34 am
by jan-jaap
And for those who are interested in the layout of variables in the 93C56 serial EEPROM, have a look in /usr/include/sys/IP20nvram.h and /usr/include/sys/IP22nvram.h