rustdesk-server icon indicating copy to clipboard operation
rustdesk-server copied to clipboard

rustdesk-server doctor

Open paspo opened this issue 3 years ago • 1 comments

I added a small util to be run on a client machine to test for connectivity problems.

Example:

$ rustdesk-server doctor myrelay.rustdesk.com
Checking server:  myrelay.rustdesk.com

Found 1 IP addresses: 
 - 123.456.123.456

Checking IP address: 123.456.123.456
Is IPV4: true
Is IPV6: false
Reverse DNS lookup: 'vps444.provider.com' DOESN'T MATCH server address 'myrelay.rustdesk.com'
TCP Port 21114 (API): OK in 25 ms
TCP Port 21115 (hbbs extra port for nat test): OK in 21 ms
TCP Port 21116 (hbbs): OK in 21 ms
TCP Port 21117 (hbbr tcp): OK in 21 ms
TCP Port 21118 (hbbs websocket): OK in 24 ms
TCP Port 21119 (hbbr websocket): OK in 21 ms

I would like to add some more checks, like:

  • ICMP ping (maybe not needed)
  • key support (key required or not, check if a provided key is valid)
  • client register test
  • relay functionality test

As always, this is the first time I use rust, so I need vetting.

Please comment.

paspo avatar Aug 06 '22 22:08 paspo

  • ICMP ping (maybe not needed)
  • key support (key required or not, check if a provided key is valid)
  • client register test
  • relay functionality test

@rustdesk I need feedback on these ideas. Does they make sense? How can they be implemented? (I just need you to point me in the right direction, I hope I can figure out the rest)

But more important: the tests already done (DNS check, TCP ports) already covers the big part of self-hosted user problems, so we can publish these changes and leave the ideas for the future.

If you're ok, we should probably include the rustdesk-utils binary in classic docker images also.

paspo avatar Aug 08 '22 09:08 paspo

@rustdesk can you take a look on this? I really need your feedback.

paspo avatar Sep 19 '22 18:09 paspo

good job, you are good at rust now.

rustdesk avatar Sep 19 '22 22:09 rustdesk