-
-
Notifications
You must be signed in to change notification settings - Fork 540
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
Extend netbird status command to include health information #1471
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
pascal-fischer
previously approved these changes
Jan 18, 2024
This happens on PSK/pubkey mismatch and is returned by wireguard in userspace mode.
pascal-fischer
previously approved these changes
Jan 18, 2024
pascal-fischer
approved these changes
Jan 22, 2024
Foosec
pushed a commit
to Foosec/netbird
that referenced
this pull request
May 8, 2024
…o#1471) * Adds management, signal, and relay (STUN/TURN) health probes to the status command. * Adds a reason when the management or signal connections are disconnected. * Adds last wireguard handshake and received/sent bytes per peer
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Describe your changes
netbird status
is run.iface
code was extended to return wireguard status (last handshake, tx/rx bytes) by peer. It is also retrieved on demand whennetbird status
is run.New status output:
Issue ticket number and link
As a user who is troubleshooting our client’s connectivity, I want to know if there are connection issues between the client and the management system.
We have 3 main layers that are used in connection discovery:
signal server (for message exchange)
management server (for network map)
stun/turn server(s) (for public IP discovery and relay connections)
For each of these components, we should validate if they are working as intended.
Another missing piece in our status command is the Wireguard handshake status, the peer transfer stats, and the endpoints used by NetBird in the connection from both ends.
Below, you can see a draft of the detailed status output after the changes are applied:
For the summarized status:
Let’s store a state that indicates when the last probe was performed against management, signal, and relay, and if the checks were positive, do not perform the probe again by default. A user can force probe with a --force-health-probe flag. If the probe check fails, next time user runs the status command we query again, regardless of the last check time.
Checklist