README 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145
  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. DEVELOPERS
  26. The generated run_*.sh scripts available in the src/bin directories
  27. are for running the code using the source tree.
  28. RUNNING
  29. You can start the BIND 10 processes by running bind10 which is
  30. installed to the sbin directory under the installation prefix.
  31. The default location is:
  32. /usr/local/sbin/bind10
  33. For development work, you can also run the bind10 services from the
  34. source tree:
  35. ./src/bin/bind10/run_bind10.sh
  36. (Which will use the modules and configurations also from the source
  37. tree.)
  38. The server will listen on port 5300 for DNS requests.
  39. CONFIGURATION
  40. Commands can be given through the bindctl tool.
  41. The server must be running for bindctl to work.
  42. The following configuration commands are available
  43. help: show the different command modules
  44. <module> help: show the commands for module
  45. <module> <command> help: show info for the command
  46. config show [identifier]: Show the currently set values. If no identifier is
  47. given, the current location is used. If a config
  48. option is a list or a map, the value is not
  49. shown directly, but must be requested separately.
  50. config go [identifier]: Go to the given location within the configuration.
  51. config set [identifier] <value>: Set a configuration value.
  52. config unset [identifier]: Remove a value (reverts to default if the option
  53. is mandatory).
  54. config add [identifier] <value>: add a value to a list
  55. config remove [identifier] <value>: remove a value from a list
  56. config revert: Revert all changes that have not been committed
  57. config commit: Commit all changes
  58. config diff: Show the changes that have not been committed yet
  59. EXAMPLE SESSION
  60. ~> bindctl
  61. ["login success "] login as root
  62. > help
  63. BindCtl, verstion 0.1
  64. usage: <module name> <command name> [param1 = value1 [, param2 = value2]]
  65. Type Tab character to get the hint of module/command/paramters.
  66. Type "help(? h)" for help on bindctl.
  67. Type "<module_name> help" for help on the specific module.
  68. Type "<module_name> <command_name> help" for help on the specific command.
  69. Available module names:
  70. help Get help for bindctl
  71. config Configuration commands
  72. Xfrin same here
  73. Auth same here
  74. Boss same here
  75. > config help
  76. Module config Configuration commands
  77. Available commands:
  78. help (Get help for module)
  79. show (Show configuration)
  80. add (Add entry to configuration list)
  81. remove (Remove entry from configuration list)
  82. set (Set a configuration value)
  83. unset (Unset a configuration value)
  84. diff (Show all local changes)
  85. revert (Revert all local changes)
  86. commit (Commit all local changes)
  87. go (Go to a specific configuration part)
  88. > config show
  89. Xfrin/ module
  90. Auth/ module
  91. Boss/ module
  92. > config show Xfrin
  93. transfers_in: 10 integer
  94. > config go Auth
  95. /Auth> config show
  96. database_file: None string
  97. /Auth> config set database_file /tmp/bind10_zones.db
  98. /Auth> config commit
  99. /Auth> config go /
  100. > config show Auth/
  101. database_file: /tmp/bind10_zones.db string
  102. > config diff
  103. {}
  104. > config set Auth/foobar
  105. Error: missing identifier or value
  106. > config set Auth/database_file foobar
  107. > config diff
  108. {'Auth': {'database_file': 'foobar'}}
  109. > config revert
  110. > config diff
  111. {}
  112. > quit