moonlight-stream / moonlight-chrome

GameStream client for ChromeOS
GNU General Public License v3.0
733 stars 161 forks source link

0.7.1 Unable to pair at all outside of localhost (Solved) #255

Closed ghost closed 7 years ago

ghost commented 7 years ago

I can pair with myself locally just fine, but doing anything outside of that just doesn't work.

I'm running the latest version of GeForce Experience (3.6.0.74) with the latest video drivers (382.33) and I have all of the necessary ports forwarded according to the setup guide and some other. Basically 47984-48010 UDP/TCP, 35043 UDP/TCP, 7 UDP, 9 UDP

I'm trying to host for another client. I've tried having them forward the ports as well. I've tried using 0.7.0. I've tried disabling firewall, reinstalling GeForce Experience, and hosting with Nvidia Gamestream first to make sure it works, which it does. I don't have any of the programs with known compatibility issues installed. I've run out of ideas.

Each time, the only thing we ever get is a failure to connect. "Are you sure the host is on?" Nothing has ever changed with any of my attempted fixes. Does anyone have any idea what I could do to make this work?

jacobmix commented 7 years ago

Think you're missing some? My bad. You just doing all from 47984 to 48010. Here's what i got tho: GeForceSharePorts TCP: 35043,47984,47989,47991,47995-47996,48010 | UDP: 47989,47992,47998-48000,48010 Then 7, and 9 as other rules of course. (Doesn't matter if all the ports are in the same rule or not) Edit: You only really need these below, but if you got problems you can try forwarding the rest. TCP 47984, 47989, 48010 UDP 47998, 47999, 48000, 48002, 48010 Try added these, and see if that helps? Can you ping the other machine? Also some people have had issues with the latest released version. But don't seem to have problems when they download, and build their own from the master. I have a build i made you can download from here if you'd like tho. moonlight-chrome_Master_(v0.7.1)_May-08-2017 Right-click it, and Left-click download. Also got a script GameStreamFirewall in there to open the ports in the firewall, and some other stuff. Note: To use the extension unpack it to a place that wont change. Like C:\Users\UserHere\Desktop\Things\Google stuff\Extensions So it's like this: C:\Users\UserHere\Desktop\Things\Google stuff\Extensions\moonlight-chrome Then go to chrome://extensions/ Enable "Developer mode", and click "Load unpacked extension" Point it to the ...\Extensions\moonlight-chrome folder. Then enable it. You should then be able to click "Launch" to start it. Note2: Might want the "DevWarningPatch" from the mega link. (No longer works. You can just disable the Moonlight extension when not in use) Since Chrome will keep asking you with a popup if you want to run your unpacked extensions at startup.

jacobmix commented 7 years ago

Wait... This might sound stupid. But do you not have "GeForce Experance>Settings>Shield>Gamestream>On" for the machine you're trying to connect to? Don't think having "Settings>Allow expermental featues" Is needed.

ghost commented 7 years ago

I have all of the correct ports forwarded. I attempted it again with the version of Moonlight you provided, this time with my firewall off just in case, and it still doesn't work. And yeah, I do have that setting turned on in GeForce Experience.

jacobmix commented 7 years ago

Does host machine show anything on YourLocalIPHere:47989/serverinfo? If nothing that's a problem. (Googling My IP is a good way of getting your public IP. To get your local one open a CMD window, and type ipconfig /all Then find your network, and look for you IPv4 address) If you got nvstreamer.exe running. Try closing it in (Admin) Task Manager. Again try make sure everything is setup in GeForce Experiance just in case: GeForceSetup1 GameStream on (and add games) : GeForceSetup2 GeForceSetup3 Can you ping the other PC tho? Open up a CMD window, and type ping IPHERE If the ping is successful it means that both PCs can talk to each other at least. Have you tried GeForce Experience's own Share: GameStream Co-Op? Btw what is your OS (Like: Windows 10, 7, Linux, ect), and Chrome version? chrome://settings/help Info from chrome://gpu might also help.

ghost commented 7 years ago

When you asked if anything showed up on YourLocalIPHere:47989/serverinfo I'm assuming you meant if I typed that into Chrome, so that's what I did. I'm not sure if this is the kind of thing you were hoping for, but it's what I got. Just a white page with that text on it. I saw status_message="OK" so I assumed it was probably an okay result.

I'm running the latest version of Chrome which, as of today, is 59.0.3071.86. I'm on Windows 7 SP1.

Both computers are running the latest version of GeForce Experience 3.6.0.74 and video drivers 382.33.

I also went to chrome://gpu and got all of this information

I didn't have any nvstreamer.exe running, but there was nvstreamuseragent.exe, which is probably not the same thing. I'm guessing that because it reopened after I closed it, what with it being a system process and all.

I have share turned on; Allow friends to join a game and play as a guest? is set to yes. I have the game we planned on playing added to the list of shit on the shield page. Both computers are able to ping each other. We have used Nvidia's own GameStream co-op in the past and it continues to work now.

jacobmix commented 7 years ago

Everything seems fine from what you've posted above. Have you tested this with other computes? What does the log/console say? https://github.com/moonlight-stream/moonlight-chrome/wiki Maybe try "Deleting all stored pairings" with the command from the page above, and delete/remove all versions of Moonlight. Then reinstall it? (Using the unpacked version since i've tested that, and it works) Might also have to test if the ports are actually open. Sites like http://www.yougetsignal.com/tools/open-ports/ | http://canyouseeme.org/ should be able to test it well enough. if you wanna test if the two PCs can directly speak through the ports. You can use something like paping to test this. (Though this is probably not needed, and there might be better options for this since i haven't tested it.)

Know this is a lot of questions. But network stuff can be finicky.

ghost commented 7 years ago

I think I've found the problem. According to Nmap, all of the ports that I had assumed were forwarded and opened have actually been closed or filtered this entire time. Apparently, trying to forward them in my router settings didn't do shit. I must have done something wrong. That said, I have absolutely no idea what I could change to make it work.

jacobmix commented 7 years ago

If your router supports UPnP (And it's turned on) you can use something like PortMapper (Need Java installed on the PC) Also got the port settings here for GameStream so you can just import them. PortMapperSettings.rar (It's going into the the files, and copy pasting something tho. So not a simply click on an import button) Tho weird that port forwarding in your router doesn't seem to work... You sure you're using the right local IP? Making your IP is static might also be a good idea. Note: Moonlight Chrome v0.7.2 has been released. I have yet to test the official release. But hopefully it works, and doesn't have the problem the official release of v0.7.1 had.

ghost commented 7 years ago

I'm probably retarded. I think that the ports are correctly forwarded. None of the port-checking shit can actually tell you if a port is open if nothing is using the port when you check it. I tested this by hosting a Terraria server on different ports and checking the port before and during. They all seem to work fine.

v0.7.2 didn't work.

My IP is static. Everything is configured properly on the Nvidia end of things. I went back and tried deleting all stored pairings, but that didn't work because I can't pair, so there are none. I did notice, however, that this message is constantly repeating in the log: Failed to parse serverinfo from HTTPS, falling back to HTTP

Followed by some shit that doesn't look like it has any useful info. https://pastebin.com/bpjUL0cU

I'm guessing that's not supposed to happen.

jacobmix commented 7 years ago

Hmm... Nothing i can clearly see to fix this. Might just be some security on your router or something. You could try to use something like Hamachi/Tunngle/ect. Might get some delay. But might "work". Not sure i can solve this one. Could try talking through Discord/ect, and use TeamViewer to see if i might notice something that way. But think this is just too specific/finicky of a problem. Hope you find the answer to your problem, and get it working tho.

If you ever fix this be sure to come back, explain how, mark as solved, and close. (Tho if you want me to keep looking into this. Add me on Discord JacobMIX#3049)

Edit: Yeah i didn't notice you opened the ports to 192168.0.1 (.1 usually being the router) https://puu.sh/weU5Z/fb07f15f51.png Good to see you got it working tho.

ghost commented 7 years ago

I was right, I am retarded.

I was forwarding the ports to the wrong address. I was trying to forward them to the local gateway as opposed to the local host address. It works as intended now.