Skip to content

knot-resolver will fail to start if hostname option is not specified when using DoT #123

Description

@fuomag9

knot-resolver will fail to start if hostname option is not specified when using DoT

Feb 22 09:55:03 knot knot_resolver.manager.manager[4445]: Failed to load policy rules: failed to start 'policy-loader'
Feb 22 09:55:03 knot knot_resolver.manager.server[4445]: Uncaught generic exception during manager inicialization...
                                                         Traceback (most recent call last):
                                                           File "/usr/lib/python3/dist-packages/knot_resolver/manager/server.py", line 590, in start_server
                                                             manager = await _init_manager(config_store)
                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
                                                           File "/usr/lib/python3/dist-packages/knot_resolver/manager/server.py", line 450, in _init_manager
                                                             manager = await KresManager.create(controller, config_store)
                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
                                                           File "/usr/lib/python3/dist-packages/knot_resolver/manager/manager.py", line 109, in create
                                                             await inst._async_init(subprocess_controller, config_store)  # noqa: SLF001
                                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
                                                           File "/usr/lib/python3/dist-packages/knot_resolver/manager/manager.py", line 124, in _async_init
                                                             await config_store.register_verifier(self.load_policy_rules)
                                                           File "/usr/lib/python3/dist-packages/knot_resolver/manager/config_store.py", line 48, in register_verifier
                                                             raise DataParsingError(f"Initial config verification failed with error: {res.unwrap_err()}")
                                                         knot_resolver.utils.modeling.exceptions.DataParsingError: Initial config verification failed with error: kresd 'policy-loader' process failed to start. Config might be invalid.

works

forward:
  # encrypted public resolver, again for all names
  - subtree: .
    servers:
      - address: [ 2001:148f:fffe::1, 193.17.47.1 ]
        transport: tls
        hostname: odvr.nic.cz

doesn't work

forward:
  # encrypted public resolver, again for all names
  - subtree: .
    servers:
      - address: [ 2001:148f:fffe::1, 193.17.47.1 ]
        transport: tls

kresctl 6.0.10 will validate both configurations, but the second one will fail.

knot-resolver -V
6.0.10

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions