So I've tried to add both the listening client, and the connecting client as well. The listening client is fine, but the connecting client is not. I've attached all the logs below:
Also, note that I barely made any modifications to the samples. I assume it's just supposed to work out of the box right? The only changes I made was to print out the GUID on the server, so that on the clients I know what GUID to connect to:
Server Log:
Code: Select all
root@martin:~/Downloads# wine NATCompleteServer.exe
Server GUID is: 1085367777379512699
IPs:
HostName: martin
1. 127.0.0.1
2. 127.0.0.1
3. 127.0.0.1
Using port 61111
002c:fixme:kernelbase:AppPolicyGetThreadInitializationType 0xfffffffa, 0x7bfe74
Started on 138.68.233.235|61111
NAT traversal server.
See http://www.dx.net/raknet_dx.php for discounted server hosting
Select which features to support.
NatTypeDetectionServer
Requirements: Requires 4 IP addresses
Description: Determines router type to filter by connectable systems.
One instance needed, multiple instances may exist to spread workload.
Support NatTypeDetectionServer? (y/n): N
NatPunchthroughServerFramework
Requirements: None
Description: Coordinates NATPunchthroughClient.
Support NatPunchthroughServerFramework? (y/n): Y
RelayPlugin
Requirements: None.
Description: Relays messages between named connections.
Support RelayPlugin? (y/n): Y
CloudServer
Requirements: None.
Description: Single instance cloud server that maintains connection counts
Useful as a directory server to find other client instances.
Support CloudServer? (y/n): Y
Starting NatPunchthroughServerFramework...
Success.
Starting RelayPlugin...
Success.
Starting CloudServer...
Success.
Supported features: NatPunchthroughServerFramework, RelayPlugin, CloudServer
Entering update loop. Press 'q' to quit.
Listening Client:
Code: Select all
Enter local port, or press enter for default:
NAT traversal client
Supported operations:
UPNPFramework
Requires server: No
Description: Use UPNP to open the router
NatTypeDetectionFramework
Requires server: Yes
Description: Determines router type to avoid NAT punch attempts that cannot
succeed.
NatPunchthoughClientFramework
Requires server: Yes
Description: Causes two systems to try to connect to each other at the same
time, to get through routers.
Router2Framework
Requires server: No
Description: Connect to a peer we cannot directly connect to using the
bandwidth of a shared peer.
UDPProxyClientFramework
Requires server: Yes
Description: Connect to a peer using a shared server connection.
Do you have a server running the NATCompleteServer project? (y/n): Y
Executing UPNPFramework
Failed UPNPFramework
Proceeding to next stage.
Executing NatTypeDetectionFramework
Failed NatTypeDetectionFramework
Proceeding to next stage.
Executing NatPunchthoughClientFramework
Enter IP of system NatPunchthroughServer, or press enter for default: 138.68.233.235
Enter port of system NatPunchthroughServer, or press enter for default: 61111
Connecting...
Enter RakNetGuid of the remote system, which should have already connected
to the server.
Or press enter to just listen.
Listening
My GUID is 67555774598987172
Calculating port stride from 138.68.233.235|61111
CALCULATING_PORT_STRIDE timeout
Other Client:
Code: Select all
Enter local port, or press enter for default:
NAT traversal client
Supported operations:
UPNPFramework
Requires server: No
Description: Use UPNP to open the router
NatTypeDetectionFramework
Requires server: Yes
Description: Determines router type to avoid NAT punch attempts that cannot
succeed.
NatPunchthoughClientFramework
Requires server: Yes
Description: Causes two systems to try to connect to each other at the same
time, to get through routers.
Router2Framework
Requires server: No
Description: Connect to a peer we cannot directly connect to using the
bandwidth of a shared peer.
UDPProxyClientFramework
Requires server: Yes
Description: Connect to a peer using a shared server connection.
Do you have a server running the NATCompleteServer project? (y/n): y
Executing UPNPFramework
Failed UPNPFramework
Proceeding to next stage.
Executing NatTypeDetectionFramework
Failed NatTypeDetectionFramework
Proceeding to next stage.
Executing NatPunchthoughClientFramework
Enter IP of system NatPunchthroughServer, or press enter for default: 138.68.233.235
Enter port of system NatPunchthroughServer, or press enter for default: 61111
Connecting...
Enter RakNetGuid of the remote system, which should have already connected
to the server.
Or press enter to just listen.
1076360901365999200
Calculating port stride from 138.68.233.235|61111
CALCULATING_PORT_STRIDE timeout
Starting ID_NAT_PUNCHTHROUGH_REQUEST to guid 1076360901365999200.
Punchthrough attempt to guid 1076360901365999200 failed due to ID_NAT_TARGET_NOT_CONNECTED.
Failed: ID_NAT_TARGET_NOT_CONNECTED
Failed NatPunchthoughClientFramework
Proceeding to next stage.
Executing Router2Framework
Failed Router2Framework
Proceeding to next stage.
Executing UDPProxyClientFramework
Failed UDPProxyClientFramework
Connectivity not possible. Exiting
I'd also like to note that the clients always say that they failed to load UPNPFramework, and NatTypeDetectionFramework. I assume those are irrelevant and should work regardless?