diff --git a/FAQ.md b/FAQ.md index 5062b54..76bb12c 100644 --- a/FAQ.md +++ b/FAQ.md @@ -70,50 +70,6 @@ https://github.com/rustdesk/rustdesk/issues/509 # Hardware requirement for RustDesk server. The hardware requirements are very low, the minimum configuration of the cloud server is enough, and the CPU and memory requirements are the minimum. Regarding the network size, if the TCP hole punching direct connection fails, the relay traffic will be consumed. The traffic of a relay connection is between 30k-3M/s (1920x1080 screen), depending on the resolution settings and screen update. If it is only for office work demand, the traffic is around 100K/s. -# Deploy RustDesk server in intranet. - -First you should set relay server with public ip (you need to fix NAT hairping problem to use public ip in intranet first) explicitly on "settings" -> "relay" of web console. Or you can set relay server (public ip) explcitly on controlled side (remote side, the device you want to control). - -Try [force relay](https://github.com/rustdesk/rustdesk/wiki/FAQ#force-relay) if you encounter connection problem. - -Go to [access logs](https://github.com/rustdesk/rustdesk/wiki/FAQ#access-logs) on controlled side, you can see more details about failures, also check connection logs `%AppData%\RustDesk\log\RustDesk_rCURRENT.log` on controlling side. - -If you host the server in your intranet with some type of routers, you may have network problem because of NAT hairping. - -Here is how ChatGPT explains NAT hairping. - -> Now, let's say you're inside your network, on your laptop, and you try to access that same web server using its public IP address or domain name. -> -> - Without NAT Hairpinning: Your request goes to your router, which sees that the destination IP is its own public IP. Normally, the router expects traffic destined for its public IP to come from the internet (external network). It might get confused, or simply not know how to route the traffic back to the internal server, and the connection will fail. -> -> - With NAT Hairpinning: When your router has NAT Hairpinning enabled, it recognizes that the request from an internal device is destined for its own public IP (which is also configured to forward to an internal server). Instead of sending the request out to the internet and then trying to route it back in (which is inefficient and often fails), the router intelligently redirects the request directly back into the internal network to the correct internal IP address of the server. - -One simple solution for NAT hairping (loopback) is that both internal and external use domain. Internally, use an internal DNS Server (or modify your hosts file) to point the domain to an intranet IP. - -https://rustdesk.com/docs/en/self-host/nat-loopback-issues/ - -https://www.reddit.com/r/rustdesk/comments/13fkdyd/comment/jjvm6j1/?utm_source=share&utm_medium=web2x&context=3 - -https://github.com/rustdesk/rustdesk-server/issues/24#issuecomment-1234029480 - -https://github.com/rustdesk/rustdesk/issues/732#issuecomment-1300514997 - -https://github.com/rustdesk/rustdesk/issues/732#issuecomment-1319433120 - -https://www.reddit.com/r/rustdesk/comments/1174mgw/comment/j9e9avt/?context=3 - -https://github.com/rustdesk/rustdesk-server/issues/200#issuecomment-1543710510 - -https://github.com/rustdesk/rustdesk-server/issues/134#issuecomment-1303437173 - -https://github.com/rustdesk/rustdesk-server/discussions/353#discussioncomment-8427782 - -NAT Reflection Mode: https://www.reddit.com/r/PFSENSE/comments/fp9h1f/can_someone_explain_to_me_what_is_nat_reflection/ - -![image](https://github.com/user-attachments/assets/70c05272-1b37-489e-bc48-178f6628e809) -![image](https://github.com/user-attachments/assets/1831bd14-f7db-4065-ac9f-9ba5f18ab8ef) - -> Also make sure your relay server has correct key, https://github.com/rustdesk/rustdesk/issues/7358 # X11 error: connection refused (login as root) @@ -178,16 +134,6 @@ https://github.com/rustdesk/rustdesk/wiki/FAQ/#deploy-rustdesk-server-in-intrane -# Connection log on server side. - -https://github.com/rustdesk/rustdesk-server/blob/4d6d439b1ad797f8f8741a42672fa46c1503672e/src/rendezvous_server.rs#L608 - -You need to enable it via env `RUST_LOG=debug`, e.g. - -``` -RUST_LOG=debug ./hbbs .... -``` - # How does it work? https://github.com/rustdesk/rustdesk/wiki/How-does-RustDesk-work%3F @@ -368,7 +314,6 @@ Ensure your relay server (`hbbr` which uses TCP `21117` port) is running on the ![image](https://github.com/user-attachments/assets/90c51c37-8ec4-4bcf-96e3-e8d21b60c878) - # Connection reset by the peer - Try out using force relay https://github.com/rustdesk/rustdesk/wiki/FAQ#force-relay. @@ -400,20 +345,6 @@ An user reported this, the `hbbr` logs below show the relay succeeded but close [2025-06-06 05:59:43.138910 +00:00] INFO [src/relay_server.rs:471] Relay of [::ffff:11.12.29.91]:22903 closed ``` -# CTRL-ALT-DEL does not work -- Make sure you install RustDesk on Windows, a system service is required for this so you have to install -- Check if `HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System\SoftwareSASGeneration`registry have correct value, 1 or 3. https://knowledge.broadcom.com/external/article/21517/ctrlaltdel-does-not-work-on-remote-contr.html - -# Unable to display image despite screen sharing being enabled on Android -We encountered this issue when there are multiple RustDesk clients operating on Android, one being the public release and the other a custom client. If you initiate the service of one client and subsequently start the service of the other, you will not be able to retrieve an image. To rectify this, you must forcibly close the first client (making sure it's not running in the background) and then restart the other one. If the issue persists, please reboot your Android device. - -# Modify Login Screen (gdm) session from Wayland to X11 -https://rustdesk.com/docs/en/client/linux/#login-screen -Above may not work in some distro or gnome version, here is fix (may be not proper) https://github.com/rustdesk/rustdesk/issues/8106#issuecomment-2122537264 - -# Prevent Android service from being killed by the system -https://github.com/rustdesk/rustdesk/issues/6192#issuecomment-1848358333 - # Failed to connect via rendezvous server: Please try later Ensure the controlled side can connect to `hbbs` with tcp `21116` port (`telnet server-ip 21116`) @@ -438,8 +369,64 @@ The controlled side works fine with UDP `21116` port, but it can not connect to ![image](https://github.com/user-attachments/assets/db2be786-89e3-4a2a-9702-d511fa453feb) +# CTRL-ALT-DEL does not work +- Make sure you install RustDesk on Windows, a system service is required for this so you have to install +- Check if `HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System\SoftwareSASGeneration`registry have correct value, 1 or 3. https://knowledge.broadcom.com/external/article/21517/ctrlaltdel-does-not-work-on-remote-contr.html +# Deploy RustDesk server in intranet. +First you should set relay server with public ip (you need to fix NAT hairping problem to use public ip in intranet first) explicitly on "settings" -> "relay" of web console. Or you can set relay server (public ip) explcitly on controlled side (remote side, the device you want to control). + +Try [force relay](https://github.com/rustdesk/rustdesk/wiki/FAQ#force-relay) if you encounter connection problem. + +Go to [access logs](https://github.com/rustdesk/rustdesk/wiki/FAQ#access-logs) on controlled side, you can see more details about failures, also check connection logs `%AppData%\RustDesk\log\RustDesk_rCURRENT.log` on controlling side. + +If you host the server in your intranet with some type of routers, you may have network problem because of NAT hairping. + +Here is how ChatGPT explains NAT hairping. + +> Now, let's say you're inside your network, on your laptop, and you try to access that same web server using its public IP address or domain name. +> +> - Without NAT Hairpinning: Your request goes to your router, which sees that the destination IP is its own public IP. Normally, the router expects traffic destined for its public IP to come from the internet (external network). It might get confused, or simply not know how to route the traffic back to the internal server, and the connection will fail. +> +> - With NAT Hairpinning: When your router has NAT Hairpinning enabled, it recognizes that the request from an internal device is destined for its own public IP (which is also configured to forward to an internal server). Instead of sending the request out to the internet and then trying to route it back in (which is inefficient and often fails), the router intelligently redirects the request directly back into the internal network to the correct internal IP address of the server. + +One simple solution for NAT hairping (loopback) is that both internal and external use domain. Internally, use an internal DNS Server (or modify your hosts file) to point the domain to an intranet IP. + +https://rustdesk.com/docs/en/self-host/nat-loopback-issues/ + +https://www.reddit.com/r/rustdesk/comments/13fkdyd/comment/jjvm6j1/?utm_source=share&utm_medium=web2x&context=3 + +https://github.com/rustdesk/rustdesk-server/issues/24#issuecomment-1234029480 + +https://github.com/rustdesk/rustdesk/issues/732#issuecomment-1300514997 + +https://github.com/rustdesk/rustdesk/issues/732#issuecomment-1319433120 + +https://www.reddit.com/r/rustdesk/comments/1174mgw/comment/j9e9avt/?context=3 + +https://github.com/rustdesk/rustdesk-server/issues/200#issuecomment-1543710510 + +https://github.com/rustdesk/rustdesk-server/issues/134#issuecomment-1303437173 + +https://github.com/rustdesk/rustdesk-server/discussions/353#discussioncomment-8427782 + +NAT Reflection Mode: https://www.reddit.com/r/PFSENSE/comments/fp9h1f/can_someone_explain_to_me_what_is_nat_reflection/ + +![image](https://github.com/user-attachments/assets/70c05272-1b37-489e-bc48-178f6628e809) +![image](https://github.com/user-attachments/assets/1831bd14-f7db-4065-ac9f-9ba5f18ab8ef) + +> Also make sure your relay server has correct key, https://github.com/rustdesk/rustdesk/issues/7358 + +# Unable to display image despite screen sharing being enabled on Android +We encountered this issue when there are multiple RustDesk clients operating on Android, one being the public release and the other a custom client. If you initiate the service of one client and subsequently start the service of the other, you will not be able to retrieve an image. To rectify this, you must forcibly close the first client (making sure it's not running in the background) and then restart the other one. If the issue persists, please reboot your Android device. + +# Modify Login Screen (gdm) session from Wayland to X11 +https://rustdesk.com/docs/en/client/linux/#login-screen +Above may not work in some distro or gnome version, here is fix (may be not proper) https://github.com/rustdesk/rustdesk/issues/8106#issuecomment-2122537264 + +# Prevent Android service from being killed by the system +https://github.com/rustdesk/rustdesk/issues/6192#issuecomment-1848358333 # Command line