~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~ [ freetext search ] ~ [ file search ] ~

Linux Cross Reference
Linux/Documentation/networking/decnet.txt

Version: ~ [ 2.4.0 ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

  1                     Linux DECnet Networking Layer Information
  2                    ===========================================
  3 
  4 1) Other documentation....
  5 
  6    o Project Home Pages
  7        http://www.sucs.swan.ac.uk/~rohan/DECnet/index.html - Kernel info
  8        http://linux-decnet.sourceforge.net/                - Userland tools
  9 
 10    o FTP sites
 11        ftp://ftp.sucs.swan.ac.uk/pub/Linux/DECnet/
 12                 - Swansea University Computer Society DECnet Archive
 13                   (contains kernel patches and info)
 14                 - Mirror of userland tools on ftp.dreamtime.org
 15                 - Mirror of Alexey Kuznetsov's iproute2 package and
 16                   other utilities
 17 
 18        ftp://linux-decnet.sourceforge.net/pub/linux-decnet/ 
 19                 - Patrick Caulfield's archive of userland tools and
 20                   Eduardo Serrat's kernel patches
 21 
 22 2) Configuring the kernel
 23 
 24 Be sure to turn on the following options:
 25 
 26     CONFIG_DECNET (obviously)
 27     CONFIG_PROC_FS (to see what's going on)
 28     CONFIG_SYSCTL (for easy configuration)
 29 
 30 if you want to try out router support (not properly debugged yet)
 31 you'll need the following options as well...
 32 
 33     CONFIG_DECNET_ROUTER (to be able to add/delete routes)
 34     CONFIG_NETLINK (to allow rtnetlink)
 35     CONFIG_RTNETLINK (for communication with the kernel routing layer)
 36     CONFIG_NETFILTER (will be required for the DECnet routing daemon)
 37 
 38 3) Command line options
 39 
 40 The kernel command line takes options looking like the following:
 41 
 42     decnet=1,2
 43 
 44 the two numbers are the node address 1,2 = 1.2 For 2.2.xx kernels
 45 and early 2.3.xx kernels, you must use a comma when specifying the
 46 DECnet address like this. For more recent 2.3.xx kernels, you may
 47 use almost any character except space, although a `.` would be the most
 48 obvious choice :-)
 49 
 50 There used to be a third number specifying the node type. This option
 51 has gone away in favour of a per interface node type. This is now set
 52 using /proc/sys/net/decnet/conf/<dev>/forwarding. This file can be
 53 set with a single digit, 0=EndNode, 1=L1 Router and  2=L2 Router.
 54 
 55 There are also equivalent options for modules. The node address can
 56 also be set through the /proc/sys/net/decnet/ files, as can other system
 57 parameters.
 58 
 59 Currently the only supported devices are ethernet and ip_gre. The
 60 ethernet address of your ethernet card has to be set according to the DECnet
 61 address of the node in order for it to be recognised (and thus appear in
 62 /proc/net/decnet_dev). There is a utility available at the above
 63 FTP sites called dn2ethaddr which can compute the correct ethernet
 64 address to use. The address can be set by ifconfig either before at
 65 at the time the device is brought up. If you are using RedHat you can
 66 add the line:
 67 
 68     MACADDR=AA:00:04:00:03:04
 69 
 70 or something similar, to /etc/sysconfig/network-scripts/ifcfg-eth0 or
 71 wherever your network card's configuration lives.
 72 
 73 You will also need to set /proc/sys/net/decnet/default_device to the
 74 device you want DECnet to route packets out of when no specific route
 75 is available. Usually this will be eth0, for example:
 76 
 77     echo -n "eth0" >/proc/sys/net/decnet/default_device
 78 
 79 There is a list of what the other files under /proc/sys/net/decnet/ do
 80 on the kernel patch web site (shown above).
 81 
 82 4) Run time kernel configuration
 83 
 84 This is either done through the sysctl/proc interface (see the kernel web
 85 pages for details on what the various options do) or through the iproute2
 86 package in the same way as IPv4/6 configuration is performed.
 87 
 88 Documentation for iproute2 is included with the package, although there is
 89 as yet no specific section on DECnet, most of the features apply to both
 90 IP and DECnet, albeit with DECnet addresses instead of IP addresses and
 91 a reduced functionality.
 92 
 93 If you want to configure a DECnet router you'll need the iproute2 package
 94 since its the _only_ way to add and delete routes currently. Eventually
 95 there will be a routing daemon to send and receive routing messages for
 96 each interface and update the kernel routing tables accordingly. The
 97 routing daemon will use netfilter to listen to routing packets, and
 98 rtnetlink to update the kernels routing tables. 
 99 
100 The DECnet raw socket layer has been removed since it was there purely
101 for use by the routing daemon which will now use netfilter (a much cleaner
102 and more generic solution) instead.
103 
104 5) How can I tell if its working ?
105 
106 Here is a quick guide of what to look for in order to know if your DECnet
107 kernel subsystem is working.
108 
109    - Is the node address set (see /proc/sys/net/decnet/node_address)
110    - Is the node of the correct type 
111                              (see /proc/sys/net/decnet/conf/<dev>/forwarding)
112    - Is the Ethernet MAC address of each Ethernet card set to match
113      the DECnet address. If in doubt use the dn2ethaddr utility available
114      at the ftp archive.
115    - If the previous two steps are satisfied, and the Ethernet card is up,
116      you should find that it is listed in /proc/net/decnet_dev and also
117      that it appears as a directory in /proc/sys/net/decnet/conf/. The
118      loopback device (lo) should also appear and is required to communicate
119      within a node.
120    - If you have any DECnet routers on your network, they should appear
121      in /proc/net/decnet_neigh, otherwise this file will only contain the
122      entry for the node itself (if it doesn't check to see if lo is up).
123    - If you want to send to any node which is not listed in the
124      /proc/net/decnet_neigh file, you'll need to set the default device
125      to point to an Ethernet card with connection to a router. This is
126      again done with the /proc/sys/net/decnet/default_device file.
127    - Try starting a simple server and client, like the dnping/dnmirror
128      over the loopback interface. With luck they should communicate.
129      For this step and those after, you'll need the DECnet library
130      which can be obtained from the above ftp sites as well as the
131      actual utilities themselves.
132    - If this seems to work, then try talking to a node on your local
133      network, and see if you can obtain the same results.
134    - At this point you are on your own... :-)
135 
136 6) How to send a bug report
137 
138 If you've found a bug and want to report it, then there are several things
139 you can do to help me work out exactly what it is that is wrong. Useful
140 information (_most_ of which _is_ _essential_) includes:
141 
142  - What kernel version are you running ?
143  - What version of the patch are you running ?
144  - How far though the above set of tests can you get ?
145  - What is in the /proc/decnet* files and /proc/sys/net/decnet/* files ?
146  - Which services are you running ?
147  - Which client caused the problem ?
148  - How much data was being transfered ?
149  - Was the network congested ?
150  - If there was a kernel panic, please run the output through ksymoops
151    before sending it to me, otherwise its _useless_.
152  - How can the problem be reproduced ?
153  - Can you use tcpdump to get a trace ? (N.B. Most (all?) versions of 
154    tcpdump don't understand how to dump DECnet properly, so including
155    the hex listing of the packet contents is _essential_, usually the -x flag.
156    You may also need to increase the length grabbed with the -s flag. The
157    -e flag also provides very useful information (ethernet MAC addresses))
158 
159 7) Mailing list
160 
161 If you are keen to get involved in development, or want to ask questions
162 about configuration, or even just report bugs, then there is a mailing
163 list that you can join, details are at:
164 
165 http://sourceforge.net/mail/?group_id=4993
166 
167 8) Legal Info
168 
169 The Linux DECnet project team have placed their code under the GPL. The
170 software is provided "as is" and without warranty express or implied.
171 DECnet is a trademark of Compaq. This software is not a product of
172 Compaq. We acknowledge the help of people at Compaq in providing extra
173 documentation above and beyond what was previously publicly available.
174 
175 Steve Whitehouse <SteveW@ACM.org>
176 

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~ [ freetext search ] ~ [ file search ] ~

This page was automatically generated by the LXR engine.
Visit the LXR main site for more information.