2
0
mirror of https://gitlab.isc.org/isc-projects/kea synced 2025-08-31 05:55:28 +00:00
JINMEI Tatuya 81f56e2daa added an experimental implementation of "optimized built-in answers".
this version records pre-rendered authors/version.bind answers and reuses
them to build responses very efficiently.
This implementation intends to show how we can customize the RRset class
by inheritance from the base abstract class to optimize response generation.


git-svn-id: svn://bind10.isc.org/svn/bind10/branches/parkinglot@562 e5f2f494-b856-4b98-b285-d166d9295462
2010-01-27 09:15:19 +00:00
2009-10-30 17:31:49 +00:00
2009-10-16 06:23:01 +00:00
2009-10-16 06:20:23 +00:00
2010-01-26 22:11:25 +00:00

This is the source for the BIND 10 testing branch known as
the parkinglot. This is a simple authoritative server used
to provide identical records for many zones, such as in
a DNS parking service.


BUILDING

Simple build instructions:

  autoreconf
  ./configure
  make

Requires autoconf 2.59 or newer.

Use automake-1.11 or better for working Python 3.1 tests.


TEST COVERAGE

Doing code coverage tests:

  make coverage
	Does the following:

  make clean-coverage
	Zeroes the lcov code coverage counters and removes the coverage HTML.

  make perform-coverage
	Runs the C++ tests (using googletests framework).

  make report-coverage
	Generates the coverage HTML, excluding some unrelated headers.
	The HTML reports are placed in a directory called coverage/.

RUNNING

At the moment there is no install yet, you can run the bind10 parkinglot
server from the source tree:
./src/bin/bind10/bind10

The server will listen on port 5300 for DNS requests.


CONFIGURATION

Commands can be given through the tool bindctl;
cd src/bin/bindctl
sh bindctl

The server must be running for bindctl to work.

The following configuration commands are available

help: show the different command modules
<module> help: show the commands for module
<module> <command> help: show info for the command


config show [identifier]: Show the currently set values. If no identifier is
                          given, the current location is used. If a config
                          option is a list or a map, the value is not
                          shown directly, but must be requested separately.
config go [identifier]:   Go to the given location within the configuration.
config set [identifier] <value>: Set a configuration value.
config unset [identifier]: Remove a value (reverts to default if the option
                           is mandatory).
config add [identifier] <value>: add a value to a list
config remove [identifier] <value>: remove a value from a list 
config revert:	Revert all changes that have not been committed
config commit: Commit all changes


EXAMPLE SESSION

~> sh bindctl
> config show
ParkingLot/	module	
> config show ParkingLot/
port:	5300	integer	(default)
zones/	list	
a_records/	list	(default)
aaaa_records/	list	(default)
ns_records/	list	(default)
> config go ParkingLot/
/ParkingLot> config show
port:	5300	integer	(default)
zones/	list	
a_records/	list	(default)
aaaa_records/	list	(default)
ns_records/	list	(default)
/ParkingLot> config show zones
/ParkingLot> config add zone tjeb.nl
Error: /ParkingLot/zone not found
/ParkingLot> config add zones tjeb.nl
/ParkingLot> config show zones
zone_name:	tjeb.nl	string	
/ParkingLot> config show
port:	5300	integer	(default)
zones/	list	(modified)
a_records/	list	(default)
aaaa_records/	list	(default)
ns_records/	list	(default)
/ParkingLot> config go /
> config show ParkingLot/port
port:	5300	integer	(default)
> config go ParkingLot/a_records/
/ParkingLot/a_records> config show
address:	127.0.0.1	string	
/ParkingLot/a_records> config add "127.0.0.2"
/ParkingLot/a_records> config show
address:	127.0.0.2	string	
/ParkingLot/a_records> 

Description
No description provided
Readme 148 MiB
Languages
C++ 94.1%
Shell 3.4%
PLpgSQL 0.7%
LLVM 0.6%
Meson 0.6%
Other 0.6%