SUMMARY: Changing the IP Address of a Solaris 2.2 Machine

From: Rodney Campbell (
Date: Wed Oct 20 1993 - 19:25:25 CDT

Thanks to the Following who responded:

 (Scott Bond)
 (Edsel Adap)
 (Dave Curado)

          etnsed! (Amanul Haque)
          Richard Elling <>
 (Sumner Hushing)
          "Susan Thielen" <>
 (Dan Jiracek)
 (Ty Van Duong)
          Kerien Fitzpatrick <>
          Pauline van Winsen - Uniq Professional Services <>
          Pat Cain (Denver) <pjc@denver.ssds.COM>

No real answer was forthcoming. I received a number of suggestions but I
had not revealed in my original message that I had already tried these.


> Did you change the broadcast address in the
> /etc/netmasks file? I have seen problems there.
> Also yo did not mention that you changed the
> /etc/hostname.le0 file
I have a Subnetted Class B and my netmasks file contains:
This is as it should be.
I did not change the hostname so no need.


> You may need to change entries in DNS
Done this.


> What *you* need is a very big screwdriver. ;^)
> Er, um, having played with solaris for a coupl'a weeks, we threw
> up our hands and got the 4.1.3c cd and having been living happily
> ever after. (hey, when sun stops supporting 4.1.3 -- I read today
> that NT is being ported to the Sparc.)
> OK - so how do you change that nasty IP address -- I dunno.
> But I *do* this:
> cd /etc/rc3.d
> grep ip *
> grep Your_IP_address_here *
> grep Your_Hostname_here *
> Well, you get the's gotta be in there.
I had tried doing a reccursive grep fro "149.135" and the hostname from
the root directory to no avail. It is not in any other file in the


> I once had a similar error of bad address, and it turned out to be a
> misconfigured netmasks file, the file that declares what class of network
> the machine running in. And since your changing the class of your address
> C to B, this could easily be the case. Whatever you do, a reinstall is not
> necessary.

I am not changing from a C to a B. I am changing from one C to another C
within our Class B network.

> On boot up there are about 4 ifconfig lines that execute in the
> /etc/init.d/rootuser file (assuming that 2.2 is the same as 2.3, what I am
> currently running), the first bootup file that is executed and not it is
> /etc/rc2.d. Isolate which one is causing the error with echo statements
> and go from there. It is likely something quite simple. Good luck.


> I ran into the same problem and was forced to reinstall the OS (due to the
> lack of time) and reinstall NIS+ etc. The machine in question was my server :(


> You've got a typo in your hosts file. The same thing would happen in 4.1.x.
I had thought of this and modified my hosts file as follows:
# Internet host table
# localhost loghost

With only one space between the IP Address and the hostname (no TABS etc)
and a comment character so I could enable and disable the relevant line.
This still did not work.


> I loaded two 2.2 machines on one net, then switched them to another
> using the technique you mentioned, and they did come up and operate. I
> did, however, have to reload them both later, for reasons I perceived
> at the time to be unrelated to the failure you experienced.


> Make sure you've changed netmask and resolv.conf if it's
> applicable.. The line that's probably giving you
> trouble is
> /etc/rc2.d/S72inetsvc:/usr/sbin/ifconfig -au netmask + broadcast +

Yeah I had found it and tried to use manual commands after bootup to kick
things along and all I could get out of it was something like:

le0: flags=863<UP,POINT-TO-POINT,RUNNING,MULTICAST> mtu 1500
        inet ->
        ether 8:0:20:11:c9:e
Why it chose to make this a point to point link I don't know?

> That'll give ya the ifconfig prob...
> Solaris ain't so bad!! If I had 5 years experience with
> it, it wouldn't be no different that 4.*!!!
> You should run the sys-unconfig utility. It looks like the initial install.
Might try this if all else fails.

> After you change the IP address, halt it ( telinit 0 ), then boot -r to
> reconfigure the machine; I've done it in the past ( 4 months ago ); I think
> this is the way; try and let me know; good luck.

Yeah tried that too.


> Ifconfig: bad address (in 4.1.3) occurred when the hostname.le0 didn't
> get changed to reflect the new name/IP address. Also, it was possible
> to get these messages if other hostname.le0.* (we use emacs so it would
> print the message for hostname.le0~)

This file only has the hostname in it and I didn't change that.


> Just for grins, have you tried changing the hostname as well? Maybe there
> is some IP <-> hostname mapping which is causing hassles. (You'll need
> to change /etc/hostname.le0 as well as hosts & defaultrouter.)

Yeah, I might just try this and see what happens.

> boot -r does a reconfig of devices, but I fail to see why the hardware
> would cache an IP address.
> /etc/netmasks is ok? is there any info in /etc/ethers?

/etc/ethers is a NIS map and it has an entry for this host but I didn't
change it's name so it shouldn't be a problem.

> other than that, trying running /usr/bin/truss on ifconfig & see if that
> gives you any clues.
> BTW, have you read the friendly warning from the ifconfig man page?
> Note: It is recommended that the names broadcast, down,
> private, trailers, up, and the other possible option names
> not be selected when choosing host names. Choosing anyone
> of these names as host names will cause bizarre problems
> that can be extremely difficult to diagnose.

Yeah saw this but as the name is "bazille" it shouldn't be a problem


> /etc/hostname.le*
> /etc/nodename
> /etc/defaultrouter
> /etc/netmasks
> those are the files affected by a network change under Solaris 2.x...


Rodney Campbell - Telecom Aust |Email :
   Advanced Network Products   |Snail : Level 1, 18-20 Orion Rd, Lane Cove West
 Customised Software Solutions |  -  PO Box A792, Sydney South 2000, Australia.
        Centre - Sydney        |Phone : +61 (0)2 911 3123   Fax: +61 2 911 3199

This archive was generated by hypermail 2.1.2 : Fri Sep 28 2001 - 23:08:26 CDT