(SUMMARY) Re: Default broadcast address

From: andys@ulysses.att.com
Date: Mon Feb 18 1991 - 21:53:40 CST


I originally wrote:

    Sun still hasn't caught up to the rest of the world. Is there
    any magic I can do in either 4.0.3 or 4.1 to tell ifconfig that
    the default host part of a broadcast address is all 1's rather than
    all 0's. Otherwise I have to hardwire that fact in to rc scripts.

What I was really interested in was an option for ifconfig or a
kernel variable that would tell all of the IP code that broadcast
addresses are to the all 1's host rather than the all 0's host. Most
replies indicated the answer "No". Perusal of 4.0.3 sources convinced
me that they were right.

Sun please take note: people are not happy about the conflict between
Sun and the rest of the industry on this issue.
David LeVine <levine@berlioz.nsc.com> and Rich Karhuse <rak@garage.att.com>
indicated that they have made complaints to software support about
this. David has submitted a Request for Enhancement (RFE), but I
wouldn't hold my breath, gang.

Now for the suggestions:

One reply suggested that if you have Suns on your network you have to
live with 0 broadcast addresses. My experience is that this isn't
true. The diskless boots may still broadcast to 0.0.0.0, but at least
Sun reverse arp servers will respond to the 0 broadcast even if they
are configured to broadcast on 1's. In fact, we have had some very
fussy '386 based TCP/IP implementations that really piss and moan over
broadcast packets to host 0, leading to tremendous storms if there is
a lot of such activity. I strongly recommend configuring everything
on the network to broadcast to the 1's host.

As most replies noted (and I already knew), you do this explicitly
with:
   ifconfig <interface> <ip address> broadcast xx.xx.xx.255 <other_options>

My problem was having to edit all the rc.local files if the network
was reconfigured, and there is such a reconfiguration in my future.

The easiest and most elegent solution came from:
    Doug Neuhauser <doug@seismo.gps.caltech.edu>
    Jim Battan <battan@sequent.com>
    Tad Guy <tadguy@abcfd01.larc.nasa.gov>
You change /etc/rc.boot to look like:
...
                OIFS="$IFS"
                IFS="$IFS."
                set `echo /etc/hostname\.*`
                IFS="$OIFS"
                while test $# -ge 2
                do
                        shift
                        if [ "$1" != "xx0" ]; then
                                a="`shcat /etc/hostname.$1`"
                                ifconfig $1 $a up
                        fi
                        shift
                done
...

and then use /etc/hostname.le0 files that look like this:
hostfoo broadcast 138.95.16.255 netmask 0xffffff00

Note that you must then comment out the
ifconfig -a netmask + broadcast +
line in /etc/rc.local

Another interesting response came from rackow@antares.mcs.anl.gov:
    What we did to ours is made a /etc/broadcast.??? (??? == interface)
    and then made a mod to the /etc/rc* files to add a
    "shcat broadcast.$interface" the same way it determines the
    hostname. In this way the rc files are ALL the same AND to change
    something for a particular interface you do it for the files for
    that interface only. This works very well on our systems. If
    you'd like an example set of rc's and hostname.??? broadcast.???
    files let me know and I'll send them.

Jeff Nieusma <nieusma@cs.Colorado.EDU> sent a *Very* *Nice* set
of rc files showing how he wrote a generic rc, rc.boot, and rc.local
that each invoke an rc.config where *ALL* the host dependent crap
goes. I will pass that along verbatim in a separate posting, as it
is rather long. I may see about incorporating his ideas here.

Thanks to all who replied, even if it was just a nudge for this
summary:
    Tom Conroy <trc@esd.3com.com>
    enger@seka.scc.com (Robert M. Enger)
    gmc@premises1.Quotron.COM
    rackow@antares.mcs.anl.gov
    "(Alain Brossard EPFL-SIC/SII)" <brossard@sasun1.epfl.ch>
    bob@kahala.soest.hawaii.edu (Bob Cunningham)
    Tad Guy <tadguy@abcfd01.larc.nasa.gov>
    berlioz.nsc.com!levine (David LeVine)
    bshaw@vlsic2.csc.ti.com (Bob Shaw)
    zu@zellweger.ch (Ueli Zuberbuehler)
    Jeff Nieusma <nieusma@cs.Colorado.EDU>
    doug@seismo.gps.caltech.edu
    Richard Karhuse <rak@garage.att.com>
    Jim Battan <battan@sequent.com>
    matt@wbst845e.xerox.com (Matt Goheen)
    riess@evax.uta.edu (Bill Riess)

--
Andy Sherman/AT&T Bell Laboratories/Murray Hill, NJ
AUDIBLE:  (201) 582-5928
READABLE: andys@ulysses.att.com  or att!ulysses!andys
What? Me speak for AT&T?  You must be joking!



This archive was generated by hypermail 2.1.2 : Fri Sep 28 2001 - 23:06:11 CDT