HenriWahl / dhcpy6d

MAC address aware DHCPv6 server written in Python
https://dhcpy6d.de
GNU General Public License v2.0
94 stars 27 forks source link

Doesn't automatically pull in python-dnspython on Debian 9 #14

Closed James-E-A closed 6 years ago

James-E-A commented 6 years ago

When installing version 0.7.1(-1) on a fresh Debian 9.4.0 installation, it doesn't pull in the necessary dependencies.

This creates an error message about missing the DNS module during installation, and it's not at all obvious how to fix the error afterwards (when the DUID needs to be made by-hand).

James-E-A commented 6 years ago

(for some reason, even when DUID generation fails, the package is still tagged as fully-installed, so not even apt-get install -f will finish up the configuration after the dependencies have been manually acquired.)

HenriWahl commented 6 years ago

Thanks for the hint. Actually the package is still built on a Debian 8 because it worked, so it might be a good idea to port the packaging to Debian 9. I will check this asap. After resolving the DNS issue - does it work at all?

James-E-A commented 6 years ago

Yeah, it's actually a pretty great server! Once I had generated and inserted the DUID manually, it really works well. 😄👍 (Although, it might be good to at least document which of the three config files scattered across /etc is the one which must be edited to make it actually respond to clients. I figured it out, it's not a massive undertaking; but it's the kind of troubleshooting that doesn't seem like it belongs out-of-the-box.)

\<offtopic>
Only thing that seemed "off" was that it temporarily semi-broke the OS's default DNS suffix (the IPv4 server WAS advertising it; the IPv6 server was NOT: it showed up in Win10 Task Manager, but most applications seemed not to resolve the domains); I fixed it by hard-coding the network's specific domain $sitexxx$.hsv.al.us.xn--l3h.$mydomain$ into the config file. (The IPv4 server is the canonical/authoritative source of site domain information)

but that (i.e., slaving an aspect of dhcpy6d's configuration to a source) is probably pretty easy to implement with something like a DHCP(v4) client hook, if it ever becomes an issue.

HenriWahl commented 6 years ago

Thanks for the hint - added the info to documentation.

Regarding the offtopic: what was the configuration statement to tell clients about the DNS suffix?

HenriWahl commented 6 years ago

Now with https://github.com/HenriWahl/dhcpy6d/commit/db1c16b5104289fd07cfb427b6e9cd013af78e85 the package builds with Debian 9 and has the python-dns dependencies included.

karaluh commented 6 years ago

Still not properly fixed. python-dnspython is only suggested and not dependent on. From the control file:

Depends: adduser, ucf, init-system-helpers (>= 1.18~), python, python:any (<< 2.8), python:any (>= 2.7.5-5~) Suggests: python-dnspython, python-mysqldb, python-psycopg2

Edit: OK, I see that it's fixed in the code, but the binary package doesn't have the fix included.

HenriWahl commented 6 years ago

Where did you get the binary from?

Edit: Found it on homepage - building new package right now.

HenriWahl commented 6 years ago

Uploaded fixed package - thanks for the hint!