README 3.06 KB
Newer Older
Jeremy C. Reed's avatar
Jeremy C. Reed committed
1
2
3
4
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.
5

6

7
8
9
10
BUILDING

Simple build instructions:

11
12
13
  autoreconf
  ./configure
  make
14

15
16
17
18
Requires autoconf 2.59 or newer.

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

19
20
21

TEST COVERAGE

22
23
Doing code coverage tests:

24
  make coverage
25
26
	Does the following:

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

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

33
  make report-coverage
Jeremy C. Reed's avatar
Jeremy C. Reed committed
34
35
	Generates the coverage HTML, excluding some unrelated headers.
	The HTML reports are placed in a directory called coverage/.
36
37
38
39
40
41
42
43
44
45
46
47

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

Jeremy C. Reed's avatar
Jeremy C. Reed committed
48
49
50
Commands can be given through the tool bindctl;
cd src/bin/bindctl
sh run_bindctl
51

Jeremy C. Reed's avatar
Jeremy C. Reed committed
52
The server must be running for bindctl to work.
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76

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

Jeremy C. Reed's avatar
Jeremy C. Reed committed
77
~> sh run_bindctl
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
> 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>