the right path on windows is WINDOWS\system32\drivers\etc\hosts
[olsrd.git] / lib / nameservice / README
1 ---------------------------------------------------------------------
2 NAMESERVICE PLUGIN FOR OLSRD
3 by Bruno Randolf <bruno.randolf@4g-systems.biz>
4 ---------------------------------------------------------------------
5
6 a simple DNS replacement for OLSR networks
7
8 this plugin distributes host name information over OLSR
9 and writes a file in /etc/hosts format. this file can be 
10 used to resolve hostnames on the local system and/or be
11 read by a DNS server like "dnsmasq", to make the names 
12 available via ordinary DNS to other clients as well.
13
14 the default location of the hosts file is
15 "/var/run/hosts_olsr" on unixes
16 "C:\WINDOWS\hosts_olsr" on windows
17
18
19 ---------------------------------------------------------------------
20 PLUGIN PARAMETERS (PlParam)
21 ---------------------------------------------------------------------
22
23 PlParam "name" "my-name.mesh"
24
25         the name of this OLSR node (main address).
26         can be specified multiple times
27
28 PlParam "IP.ADDR" "another-name.mesh"
29
30         a name for a specified IP address.
31         the IP address has to be either from one of the olsr 
32         interfaces or within a HNA network we announce.
33         can be specified multiple times
34
35 PlParam "filename" "/name/of/hosts_file"
36
37         which file to write to.
38         (default: /var/run/hosts_olsr)
39
40 PlParam "interval" "SEC"
41
42         interval for sending NAME messages in seconds.
43         (default: 120 - 2 minutes)
44
45 PlParam "timeout" "SEC"
46
47         validity time for received NAME messages.
48         (default: 3600 - 1 hour)
49
50 PlParam "suffix" ".olsr"
51
52         local suffix which is appended to all received names
53         (default: "")
54
55
56 ---------------------------------------------------------------------
57 SAMPLE CONFIG
58 ---------------------------------------------------------------------
59
60 add in /etc/olsrd.conf:
61
62 LoadPlugin "olsrd_nameservice.so.0.2"
63 {
64         PlParam "name" "thisismyname.mesh"
65 }
66
67
68 ---------------------------------------------------------------------
69 USING THE NAME INFORMATION
70 ---------------------------------------------------------------------
71
72 to use the name information distributed by the plugin actually for
73 name resolution you can do one of the following.
74
75 UNIX VARIANTS:
76
77 * overwrite /etc/hosts
78         be sure you have nothing in /etc/hosts which you still need and
79         configure the plugin with PlParam "filename" "/etc/hosts"
80         
81 * link /etc/hosts (only on unix variants)
82         ln -s /var/run/hosts_olsr /etc/hosts
83         
84 * use dnsmasq
85         if you want to make the names available via ordinary DNS
86         you can use dnsmasq to read the hosts file and serve it to
87         users. add the following to dnsmasq.conf and restart dnsmasq
88         addn-hosts=/var/run/hosts_olsr
89         
90 WINDOWS:
91
92 * overwrite C:\WINDOWS\system32\drivers\etc\hosts
93         be sure you have nothing in the file which you still need 
94         and configure the plugin with
95         PlParam "filename" "C:\WINDOWS\system32\drivers\etc\hosts"
96         
97
98 ---------------------------------------------------------------------
99 TODO
100 ---------------------------------------------------------------------
101   
102  * implement a small DNS server into the plugin?
103  * or make dynamic DNS updates for bind?
104
105 ---------------------------------------------------------------------
106 EOF / 03.03.2005