A portable dhcpv6 server
dibbler-server is a portable implementation of the DHCPv6 server. It supports both stateful (i.e. IPv6 address granting) and stateless (i.e. options granting) autoconfiguration. There are ports available for Linux 2.4/2.6 systems as well as MS Windows XP and 2003. They are freely available under GNU GPL version 2 (or later) license.
dibbler-server [ run | start | stop | status | install | uninstall ]
run - starts server in the console. Server can be closed using ctrl-c.
start - starts server in daemon mode.
stop - stops running server.
status - shows status of the server.
install - installs server as a service. This is not implemented yet.
uninstall - uninstall server service. This is not implemented yet.
Let's assume simple case: server should provide clients located on the eth1 link with IPv6 addresses from range 2000::100/120 and should have preference set to 7:
iface eth0 { preference 7 class { pool 2000::100-2000::1ff } }
Here is exmaple of server configured to work in a stateless mode (i.e. only options, not addresses are served). If client support option renewal, it should do so once in a 500 seconds:
log-level 7 log-mode short stateless iface eth0 { option dns-server 2000::100,2000::101 option domain example.com, test1.example.com option ntp-server 2000::200,2000::201,2000::202 option time-zone CET option sip-server 2000::300,2000::302,2000::303,2000::304 option sip-domain sip1.example.com,sip2.example.com option nis-server 2000::400,2000::401,2000::404,2000::405,2000::405 option nis-domain nis.example.com option nis+-server 2000::501,2000::502 option nis+-domain nisplus.example.com option lifetime 500 }
More examples can be found in the User's Guide.
All files are created in the /var/lib/dibbler directory. Dibbler server reads /var/lib/dibbler/server.conf file. During operation, Dibbler saves various file in that directory. Log file is named client.log.
This implementation aims at conformance to the following standards:
RFC 3315 DHCP for IPv6
RFC 3319 SIP options for DHCPv6
RFC 3646 DNS server options for DHCPv6
RFC 3736 Stateless DHCPv6
RFC 3898 NIS options for DHCPv6
Also options specified in following drafts are implemented:
draft-ietf-dhc-dhcpv6-opt-timeconfig-03.txt NTP and timezone options.
draft-ietf-dhc-dhcpv6-opt-lifetime-00.txt Option renewal.
Bugs are tracked with bugzilla, available at http://klub.com.pl/bugzilla/. If you belive you have found a bug, don't hesitate to report it.
Dibbler was developed as master thesis on the Technical University of Gdansk by Tomasz Mrugalski and Marek Senderski. Currently Marek has not enough free time, so this project is being developed by Tomasz Mrugalski. Authors can be reached at [email protected] and [email protected]
There is dibbler-client(8) manual page. You are also advised to take a look at project website located at http://klub.com.pl/dhcpv6/. As far as authors know, this is the only Windows DHCPv6 stateful implementation available. It is also one of two freely available under Linux. The other Linux implementation is available at http://dhcpv6.sourceforge.net, but it is rather outdated and seems not being actively developed.