Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

DHCP server connection check mechanism #26

Open
bakip opened this issue Apr 15, 2019 · 2 comments
Open

DHCP server connection check mechanism #26

bakip opened this issue Apr 15, 2019 · 2 comments

Comments

@bakip
Copy link

bakip commented Apr 15, 2019

I use KEA 1.5 DHCP server and default dhcplb configuration . When I close kea-dhcp4.service, available stable servers do not update and request packets are trying to send to inactive dhcp server. Then I try poweroff dhcp server and still dhcplb try to send to closed dhcp server. free_conn_timeout does not check connection?

@pmazzini
Copy link
Contributor

Hi @bakip, we do not have a connection check mechanism. It is up to the user to keep the list of servers up to date.

With regards to dhcplb not updating the list of hosts, I'll take a look at it in #24.

Internally we extend DHCPServerSourcer to use our service discovery mechanism instead of relying in file updates.

That said, feel free to submit a PR if you want to add a connection check.

@pallotron
Copy link
Member

@bakip thanks for opening this issue. @pmazzini already pointed out in our internal version we extend DHCPServerSourcer, that has logic to pull the list of active servers talking to our internal service discovery system.

In terms of the opensource solution, you are gonna need to write something within your infrastructure that keeps the text files updated and adds/removes servers as they come and go from your infra.

A health check connection logic is tricky... what would such health check consist of?

  • you can try simply sending ICMP (ping) messages to the targets hosts, but the fact that they reply to ICMP does not mean they are healthy (as in, serving dhcp traffic)
  • you can make a dhcp request... but what should be in the payload? it's unclear.

this is why we chose to do no health-checking, it really is depending on the infrastructure you are running.
That said, if you have ideas and are willing to write some go code you can definitely send us a PR with your idea and we will happily review and merge :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants