Skip to content

Implement ICMP-based host checking #18

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

Open
krustowski opened this issue Apr 4, 2025 · 4 comments
Open

Implement ICMP-based host checking #18

krustowski opened this issue Apr 4, 2025 · 4 comments
Assignees
Labels
documentation Improvements or additions to documentation enhancement New feature or request question Further information is requested
Milestone

Comments

@krustowski
Copy link
Member

The proposed usage of ICMP would mean utilizing a "more native" way of how to check a generic host's availability/reachability. At the moment, we tend to use an SSH port check to do the same thing.

@krustowski krustowski added documentation Improvements or additions to documentation enhancement New feature or request question Further information is requested labels Apr 4, 2025
@Tackx
Copy link
Member

Tackx commented Apr 4, 2025

TBC: either use ICMP when http is not specified and no port is specified either in the JSON or add a new field (e.g. type). The first option would be backwards compatible.

@krixlion
Copy link
Contributor

If no one is currently working on this I'm willing to implement this feature.

Since the standard library does not currently have utilities for parsing ICMP messages I'd have to consider importing either the official experimental ICMP module or some other third-party module. Is the zero-dependency requirement on dish non-negotiable?

I can write it from scratch but by doing so I'd reinvent the wheel and add a considerable amount of complexity to something which otherwise could be a rather simple feature. That being said it sounds like a fun exercise.

@Tackx
Copy link
Member

Tackx commented Apr 11, 2025

I think we would prefer to keep the zero deps label, but ultimately it should be decided by @krustowski.

@krixlion krixlion self-assigned this Apr 13, 2025
@Tackx Tackx added this to the v1.11.0 milestone Apr 13, 2025
@krustowski
Copy link
Member Author

Hm, my bad. I haven't considered the complexity behind ICMP implementation in Go atm well. I tried using that experimental module once, which is quite useful. But yep, it would require using it as a dependency. And I would rather go on with the zero-dep approach.

Thank you for your involvement, @krixlion

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
documentation Improvements or additions to documentation enhancement New feature or request question Further information is requested
Projects
None yet
Development

No branches or pull requests

3 participants