Discussion:
255.255.255.255
(too old to reply)
h***@gmail.com
2016-09-27 21:19:29 UTC
Permalink
I am working on getting some diskless Sun machines running again.

At one point in booting, the host broadcasts to a server using 255.255.255.255.
Specifically, this is contacting the bootparamd server.

Compiling bootparamd on either FreeBSD or Linux, it does not
receive such requests. Compiling on OS X, it does.

I have rarp, tftp, and nfsd running on FreeBSD just fine, but
can only complete the boot with bootparamd on OS X.

In more detail, it works like this:

Client broadcasts (not using IP) to an RARP server,
to ask for its IP address.

RARP server unicasts the reply (again, not IP).

Client unicasts using UDP to a tftp server, using the
server address of the replying RARP server. Using
TFTP, it downloads the boot program.

Boot program runs, and uses RARP to again ask for
its IP address. (It isn't passed through from above.)

Client broadcasts to UDP/IP address 255.255.255.255
for a bootparamd server.

Using the callbootd test program, I can verify that the
server responds to unicast requests on both FreeBSD
and Linux.

I use the same C source, and same /etc/bootparams file
on all hosts, though with changes in #include file names
that are system specific. (Such as the directory for rpc.h.)

Are all hosts supposed to accept UDP broadcasts to 255.255.255.255?

thanks,

-- glen
r***@gmail.com
2017-04-27 13:58:17 UTC
Permalink
Post by h***@gmail.com
I am working on getting some diskless Sun machines running again.
At one point in booting, the host broadcasts to a server using 255.255.255.255.
Specifically, this is contacting the bootparamd server.
Compiling bootparamd on either FreeBSD or Linux, it does not
receive such requests. Compiling on OS X, it does.
I have rarp, tftp, and nfsd running on FreeBSD just fine, but
can only complete the boot with bootparamd on OS X.
Client broadcasts (not using IP) to an RARP server,
to ask for its IP address.
RARP server unicasts the reply (again, not IP).
Client unicasts using UDP to a tftp server, using the
server address of the replying RARP server. Using
TFTP, it downloads the boot program.
Boot program runs, and uses RARP to again ask for
its IP address. (It isn't passed through from above.)
Client broadcasts to UDP/IP address 255.255.255.255
for a bootparamd server.
Using the callbootd test program, I can verify that the
server responds to unicast requests on both FreeBSD
and Linux.
I use the same C source, and same /etc/bootparams file
on all hosts, though with changes in #include file names
that are system specific. (Such as the directory for rpc.h.)
Are all hosts supposed to accept UDP broadcasts to 255.255.255.255?
thanks,
-- glen
All hosts should accept incoming IPv4 packets with a destination address of 255.255.255.255, the Limited Broadcast Address, if they receive it. Packets sent to this address will not pass through routers, so if there is a router between the sender and your intended recipient, the recipient isn't receiving it. You can verify this with tcpdump.

Ron

Loading...