1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62
|
***********************************************************
RPLD comes with no warranty not even an implied warranty.
By using rpld, you agree to the terms and conditions set
forth in the LICENCE file which can be found at the top level of
the rpld distribution.
***********************************************************
You should read the man pages for rpld(1) and rpld.conf(5) available as text
in the doc directory.
RPLD implements the IBM RIPL protocol, used to network boot some machines. It
DOES NOT implement the Novell style RPL/IPX protocol. If your are not sure
which protocol you are using see the section "Troubleshooting".
Config file:
rpld by default looks at the file /etc/rpld.conf. The format of this file is
as follows (see also rpld.conf.sample):
At the top level only HOST blocks are allowed, inside the host block you
can have FILE blocks, and Ethernet, execute, blocksize, framesize
directives. FILE blocks can contain path, load, offset, length and linux
directives. Each host may have multiple file BLOCKS in which case the
BLOCKS will be downloaded in inverse order.
BUGS/FEATURES:
rpld speaks reverse engineered RPL from a very small number of RPL servers
and clients (currently one of each).
Linux doesn't have mainstream LLC-1 sockets support. rpld gets LLC-1 packets
through a PF_PACKET socket, which may impose an unacceptable load on the
system.
The NetBSD support is also done with BPF and no filtering, again this
may impose an unacceptable load.
Some boot ROMs pretend not to see packets if (blocksize % 4) != 0
Troubleshooting:
The default packet transmit rate of flat out may cause problems on old network
cards or 100Mb networks. Edit project.h and change the definition of
PACKET_DELAY. The server gets no acknowledgement from the clients so it can
only detect a dropped packet when the client times out (typically 1s) and
requests a retransmit.
You can dump all RPL packets on your network using tcpdump:
# tcpdump -x -s 2048 ether[14]=0xfc and ether[15]=0xfc
Also included in the distribution is a program called ana, ana is a horrid
piece of kludgey C code which will try to parse RPL packets [it's not the
same parser that rpld uses it's the one I wrote first]. We reverse engineered
the protocol so it's very likely we've not implemented a whole bunch of stuff.
If you have problems send us your capture files. Also you may want to enable
promisc mode and or allmulti mode before running ana.
The authors can be contacted at <james@fishsoup.dhs.org> and
<chris@ex-parrot.com>
|