CZ-NIC / knot-resolver

Knot Resolver - resolve DNS names like it's 2024
https://www.knot-resolver.cz/
Other
362 stars 59 forks source link

[BUG] v5.2.1 Issues loading dnstap module #71

Closed MillsyBot closed 3 years ago

MillsyBot commented 3 years ago

Hello Knot team,

Great job on a performant DNS resolver! This is an amazingly easy to install service with loads of different options!

However, we are running into an issue on v5.2.1 when attempting to load the dnstap module :(

We think it might be tied to some build dependencies that are not being pulled in. We are using ubuntu18.04 and we are installing using apt.

Here is the error we are getting:

error: module 'kres_modules.dnstap' not found:
    no field package.preload['kres_modules.dnstap']
    no file '/usr/lib/knot-resolver/kres_modules/dnstap.lua'
    no file '/usr/lib/knot-resolver/kres_modules/dnstap/init.lua'
    no file './kres_modules/dnstap.lua'
    no file '/usr/share/luajit-2.1.0-beta3/kres_modules/dnstap.lua'
    no file '/usr/local/share/lua/5.1/kres_modules/dnstap.lua'
    no file '/usr/local/share/lua/5.1/kres_modules/dnstap/init.lua'
    no file '/usr/share/lua/5.1/kres_modules/dnstap.lua'
    no file '/usr/share/lua/5.1/kres_modules/dnstap/init.lua'
    no file '/usr/lib/knot-resolver/kres_modules/dnstap.so'
    no file './kres_modules/dnstap.so'
    no file '/usr/local/lib/lua/5.1/kres_modules/dnstap.so'
    no file '/usr/lib/x86_64-linux-gnu/lua/5.1/kres_modules/dnstap.so'
    no file '/usr/local/lib/lua/5.1/loadall.so'
    no file '/usr/lib/knot-resolver/kres_modules.so'
    no file './kres_modules.so'
    no file '/usr/local/lib/lua/5.1/kres_modules.so'
    no file '/usr/lib/x86_64-linux-gnu/lua/5.1/kres_modules.so'
    no file '/usr/local/lib/lua/5.1/loadall.so'
[system] failed to load module 'dnstap'
error occurred here (config filename:lineno is at the bottom, if config is involved):
stack traceback:
    [C]: in function 'load'
    [string "return table_print(modules.load('dnstap'))"]:1: in main chunk

When we attempt to build the docker container from this repo

Message: --- dnstap module dependencies ---
Dependency libprotobuf-c found: YES 1.3.1
Dependency libfstrm found: YES 0.4.0
Program protoc-c found: NO
Message: ----------------------------------

When we add protobuf-c-compiler to the Docker build (line 11) we get a more positive result

Message: --- dnstap module dependencies ---
Dependency libprotobuf-c found: YES 1.3.1
Dependency libfstrm found: YES 0.4.0
Program protoc-c found: YES (/usr/bin/protoc-c)
Message: ----------------------------------

Is there something else we might be missing?

Thanks for taking the time to look over this issue. Have a great day!

vcunat commented 3 years ago

Our packages are built without dnstap support so far. It's more like a missing feature than a bug. I think we will add it into packages soon.

By the way, for further issues see #50.

nicki-krizek commented 3 years ago

Thanks for reporting. Moving to https://gitlab.nic.cz/knot/knot-resolver/-/issues/655