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