Moonlight isn't working

neku@discuss.tchncs.de to Linux Gaming@lemmy.ml – 12 points –

Hi I got the following problem. I successfully created a Tailscale network and a user from outside the network can login and connect to my network. That part works properly. We use a Fedora Linux PC as a host (Sunshine) and Moonlight Client on a Windows 10 PC. After tinkering for hours we can now see each other but I get the following issue "Request Timed Out (Error 4)" This issue always happens after inputting the PIN which is displayed on the Windows (Moonlight) on my Fedora PC (Sunshine) the client cannot connect after that but still sees my PC online and as a viable option to connect.

Additional Info: I've asked in the Moonlight Discord but I still got no answer.

13

Maybe firewalld is getting in the way. You can temporarily disable it:

sudo systemctl stop firewalld

If that doesn’t work, you can see if SELinux is the issue. Temporarily disable:

sudo setenforce 0

Be sure to re-enable SELinux:

sudo setenforce 1

Wouldn't it be better to open specific ports than disabling the entire firewall? Or am i missing something?

Better for testing to disable, then figure out ports and stuff afterward if the disable worked, I assume is the logic

The firewall was the issue. How do I enable the firewall?

Reenable the firewall with

systemctl start firewalld 

Then get the current networking zone with

firewall-cmd —get-active-zones 

It will likely be called FedoraWorkstation, if not just replace that name with whatever it is called in the following steps.

Next you should enable the ports for Moonlight, which from a quick ddg search I think this should do it:

firewall-cmd —zone=FedoraWorkstation —permanent —add-port=47998/udp

firewall-cmd —zone=FedoraWorkstation —permanent —add-port=47999/udp

firewall-cmd —zone=FedoraWorkstation —permanent —add-port=48000/udp

firewall-cmd —zone=FedoraWorkstation —permanent —add-port=47984/tcp

firewall-cmd —zone=FedoraWorkstation —permanent —add-port=47989/tcp

firewall-cmd —zone=FedoraWorkstation —permanent —add-port=48010/tcp

firewall-cmd —zone=FedoraWorkstation —permanent —add-port=47990/tcp

Then reload the firewall with:

firewall-cmd —reload

Lmk if that works

Edit: added more ports needed for the WebUI and controller support. Check the docs here if you wanna see what each port is used for

The ports you need (unless you changed any) are:

  • 47984/tcp
  • 47989/tcp
  • 48010/tcp
  • 47998/udp
  • 47999/udp
  • 48000/udp
  • 48002/udp
  • 48010/udp

Does it work inside the LAN without Tailscale?

No my Android phone with Moonlight can't connect either on the same network.

The problem should be somewhere with Sunshine. Look at the logs. Maybe a firewall is on the server.

Yep sounds like firewall issue to me. Allow the ports eric mentioned in his comment thru firewall and it should work