README 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140
  1. This is the source for the BIND 10 testing branch known as
  2. the parkinglot. This is a simple authoritative server used
  3. to provide identical records for many zones, such as in
  4. a DNS parking service.
  5. BUILDING
  6. Simple build instructions:
  7. autoreconf --install
  8. ./configure
  9. make
  10. Requires autoconf 2.59 or newer.
  11. Use automake-1.11 or better for working Python 3.1 tests.
  12. Install with:
  13. make install
  14. TEST COVERAGE
  15. Doing code coverage tests:
  16. make coverage
  17. Does the following:
  18. make clean-coverage
  19. Zeroes the lcov code coverage counters and removes the coverage HTML.
  20. make perform-coverage
  21. Runs the C++ tests (using googletests framework).
  22. make report-coverage
  23. Generates the coverage HTML, excluding some unrelated headers.
  24. The HTML reports are placed in a directory called coverage/.
  25. RUNNING
  26. You can start the BIND 10 processes by running bind10 which is
  27. installed to the sbin directory under the installation prefix.
  28. The default location is:
  29. /usr/local/sbin/bind10
  30. For development work, you can also run the bind10 services from the
  31. source tree:
  32. ./src/bin/bind10/run_bind10.sh
  33. (Which will use the modules and configurations also from the source
  34. tree.)
  35. The server will listen on port 5300 for DNS requests.
  36. CONFIGURATION
  37. Commands can be given through the bindctl tool.
  38. The server must be running for bindctl to work.
  39. The following configuration commands are available
  40. help: show the different command modules
  41. <module> help: show the commands for module
  42. <module> <command> help: show info for the command
  43. config show [identifier]: Show the currently set values. If no identifier is
  44. given, the current location is used. If a config
  45. option is a list or a map, the value is not
  46. shown directly, but must be requested separately.
  47. config go [identifier]: Go to the given location within the configuration.
  48. config set [identifier] <value>: Set a configuration value.
  49. config unset [identifier]: Remove a value (reverts to default if the option
  50. is mandatory).
  51. config add [identifier] <value>: add a value to a list
  52. config remove [identifier] <value>: remove a value from a list
  53. config revert: Revert all changes that have not been committed
  54. config commit: Commit all changes
  55. config diff: Show the changes that have not been committed yet
  56. EXAMPLE SESSION
  57. ~> bindctl
  58. ["login success "] login as root
  59. > help
  60. BindCtl, verstion 0.1
  61. usage: <module name> <command name> [param1 = value1 [, param2 = value2]]
  62. Type Tab character to get the hint of module/command/paramters.
  63. Type "help(? h)" for help on bindctl.
  64. Type "<module_name> help" for help on the specific module.
  65. Type "<module_name> <command_name> help" for help on the specific command.
  66. Available module names:
  67. help Get help for bindctl
  68. config Configuration commands
  69. Xfrin same here
  70. Auth same here
  71. Boss same here
  72. > config help
  73. Module config Configuration commands
  74. Available commands:
  75. help (Get help for module)
  76. show (Show configuration)
  77. add (Add entry to configuration list)
  78. remove (Remove entry from configuration list)
  79. set (Set a configuration value)
  80. unset (Unset a configuration value)
  81. diff (Show all local changes)
  82. revert (Revert all local changes)
  83. commit (Commit all local changes)
  84. go (Go to a specific configuration part)
  85. > config show
  86. Xfrin/ module
  87. Auth/ module
  88. Boss/ module
  89. > config show Xfrin
  90. transfers_in: 10 integer
  91. > config go Auth
  92. /Auth> config show
  93. database_file: None string
  94. /Auth> config set database_file /tmp/bind10_zones.db
  95. /Auth> config commit
  96. /Auth> config go /
  97. > config show Auth/
  98. database_file: /tmp/bind10_zones.db string
  99. > config diff
  100. {}
  101. > config set Auth/foobar
  102. Error: missing identifier or value
  103. > config set Auth/database_file foobar
  104. > config diff
  105. {'Auth': {'database_file': 'foobar'}}
  106. > config revert
  107. > config diff
  108. {}
  109. > quit