Problem connecting using DotNet v3 RC2 DLL

Options
Sectoid Dev
edited March 2012 in DotNet
I hope this hasn't been covered elsewhere, but I don't see any reference to anyone else having this issue.

I'm using the Hello World part 1 example program and am not able to connect to the server when using the Photon3DotNet.dll reference that is part of the Photon-DotNet_v3-0-0-3-RC2-SDK zip file.
However, I can connect fine simply switching the reference in the project to the dll from v3-0-0-0-RC1 and rebuilding the solution.

The Photon config file is unchanged from the download. I'm using the server v3-0-12-2468-RC4, version 3.0.3.734

Here is error log message

7920: 21:34:38.039 - CENetThreadPool::Process - Exception - ENetPeer::HandleIncomingCommands() - ENetPeer::NotifyReceive()- Invalid message, magic number incorrect: 0xf3 PeerId: 19 Datagram: 00 13 00 02 00 00 02 12 71 D9 BA 72 01 FF 00 04 00 00 00 14 00 00 00 00 00 00 00 00 0A BB 0E E6 06 00 01 04 00 00 00 39 00 00 00 01 F3 00 01 06 01 03 00 00 07 4C 69 74 65 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 - ........q..r...........................9.............Lite................................ from: 127.0.0.1:56040 on: 127.0.0.1:5055

Can you confirm this problem?

Comments

  • Tobias
    Options
    We had to change an identifier value (magic byte) in the RC versions but we updated the downloads for server and client SDKs, so they work together.
    I just unzipped Photon-DotNet_v3-0-0-3-RC2_SDK and ExitGames-Photon-Server-SDK_v3-0-12-2468-RC4. The pre-built Realtime Demo exe connects just fine.

    Make sure to build the Hello World example with RC4. In best case, you re-build client and server with the assemblies from the new SDKs.
  • You were right that I was using the a mismatched release of the server and the client SDKs. So I got that straightened out, but am still having an issue connecting using anything later than server RC3. I've been content to develop against that for last four weeks, but this has been bugging me.

    Using the default configuration of the latest Server RC 7 and DotNet 3-0-0-7, when I run the prebuilt realtime demo, I get this error in the log

    10468: 23:11:19.513 - Peer: 0 address change - addresses are different size: 128 and 16 and families: AF_INET6 - AF_INET

    and sometimes I'll get a C++ runtime error of R6025 - Pure Virtual Call


    I have noticed that on server start-up, I'm loading the .NET 4 CLR

    6148: 23:06:16.557 - About to load CLR - versions available:
    6148: 23:06:16.557 - v2.0.50727
    6148: 23:06:16.557 - v4.0.30319
    6148: 23:06:16.557 - No preference in configuration file, will load latest.
    6148: 23:06:16.557 - About to load version: "v4.0.30319"
    6148: 23:06:16.557 - Loaded version: "v4.0.30319"
    6148: 23:06:22.185 - Photon host runtime loaded

    and the realtime.exe.conf is configured for v2.0.50727

    So, this seems like it could be an issue. I'm still learning the ins and outs of .NET, so what's your opinion on this and how do I fix it?


    Thanks
  • Tobias
    Options
    I think the version of the DotNet runtime is no issue in this case. Running the demo in 2.0 and the server in 4.0 is OK. They know each other only by UDP conversations which are the same for either platform and runtime.

    What's interesting is to see the "addresses are different size: 128 and 16 and families: AF_INET6 - AF_INET".
    This seems to point into the IPv6 direction. Does your system/router uses this already?
    I will point a few colleagues to this topic. I expect them to know more about IPv6 handling.
  • I noticed the difference in INET families also. I'm not using IPv6 anywhere on my network. I unchecked the IPv6 protocol in the network adapter, but that made no difference. I even tried upgrading the driver for the network card, but the issue still persists. I also tried disabling the firewall software to see if that made any difference, but nope.
  • Philip
    Options
    What is also strange - is your peer is changing the address. We support changing ports only. So even if we had support for ipv6 it would get disconnected from the server.
  • I'm getting the errors while starting the real time demo exe that comes prebuilt with the DotNet SDK, so the peers shouldn't have any unexpected behavior. There must be something going on with my setup in particular since I'm the only one having this issue. I am getting crash dump files and the error causes Photon to crash. Is there a way to read or submit the crash files? I'm out of ideas otherwise.
  • Tobias
    Options
    For some reason (which we can't see), your client gets a IPv6 address before it reaches the server, which are not yet supported by Photon.

    The DotNet SDKs Realtime Demo is configured to connect to localhost. I think we are using that name explicitly, instead of the IP 127.0.0.1.
    Maybe you can switch to use the IP instead? A vague guess is that your sytems applies a IPv6 address to "localhost"?!...

    Aside from this, we can't see the cause for this. Maybe you try to search the internet why and how IPv6 is accidentally used in your OS.
  • OK, I'm certain I've tried 127.0.0.1 before, but I'll experiment with it. It definitely sounds like something funky on my setup, else it would be easy to reproduce otherwise. I'll let you know what I find.
  • Just a heads up. My issue has gone away. I don't know what that actual fix was. I removed IPv6 from my system entirely, but still had the error. I put it back on last night because I was tired of not having access to the home groups on my other win 7 machines. Now the demo-realtime executable in DotNet v3-0-1-2 SDK works just fine!
  • Tobias
    Options
    That's somewhat weird. Maybe it was some configuration in IPv4 versus IPv6? No idea.
    Good that it's resolved. Thanks for the heads up!