DarkMultiPlayer Client

DarkMultiPlayer Client

38.8k Downloads

Client can't connect server with IPv6.

Sanmilie opened this issue · 53 comments

commented

Sever is'it ok, I can connect a Telnet on server but the plugin client can't connect server with ipv6 address.
I try all know format for ip adresse i try also only IPV6 DNS name. Not resolve ipv6 only AAAA. Not accept any literal format
[2010:aa::a]
2010:aa::a
say connecting indefinitly. But not connect server.

commented

Have you tried typing the whole IPv6 address instead?

commented

Same Issue .... say connecting but nothing.

commented

Is the server set to bind to all IPs (::)?

commented

try ipv6.google.com as adress .. it say not DNS Host not resolve.

commented

Yes ... i connect server with Telnet client.

commented

Could you upload your KSP.log please?
EDIT: it's located at your KSP install directory

commented
commented

Why are you using a custom compiled version of DMP? Also, the log doesn't contain the part where you try to connect to the server.
EDIT: if you're trying to connect to ipv6.google.com it's obvious that it won't work...

commented

Nop release version. 0.2.3.1

commented

same issue in 0.2.3.0 with KSPV1.1.2

commented

I don't think your network infrastructure supports full IPv6 or DNSv6.

commented

All my network is ipv6 ..
my server is located at this ipv6 address
2620:ac:4000::39 : 6703
i can connect server with Telnet with this address
i can connect ipv6.google.com with my browser

commented

i have ARIN entry...
I have all ipv6 block 2620:ac:4000::/48

commented

If you're saying that you can connect to your server with this address, what's the output? A bunch of random characters?

commented

[20:31:27][DEBUG] : Loading settings...
[20:31:27][DEBUG] : System.IO compression works: True, test time: 5 ms.
[20:31:27][DEBUG] : Loading plugins!
[20:31:27][DEBUG] : Done!
[20:31:27][INFO] : Starting DMPServer v0.2.3.1, protocol 41
[20:31:27][INFO] : Loading universe...
[20:31:27][INFO] : Starting SUBSPACE server on port 6703...
[20:31:27][INFO] : Starting HTTP server...
[20:31:27][INFO] : Ready!
[20:31:30][DEBUG] : Online players is now: 0, connected: 1
[20:31:30][INFO] : New client connection from [2620:ac:4000::39]:33842
[20:31:41][INFO] : Invalid DMP message from [2620:ac:4000::39]:33842
[20:31:41][INFO] : Disconnecting client Unknown, sent CONNECTION_END (Invalid DM
P message. Disconnected.) to endpoint [2620:ac:4000::39]:33842
[20:31:41][DEBUG] : Online players is now: 0, connected: 0

commented

☺♦♦♦lg˶┴╦ı|─Êãòf¼┌Ïa☺}£2ºßU[>p↨╠öã!╔S♥■Ç%╦▄.·øªlç¡F¸c╗:└±×eîed°>s£YÊıcü³‗ÐUxþ║Á
XÅ▼N╬¢↓G_¶└fõ­¨'
E▓I─¹pÚõH Ò░║
ıÏ´2ÁÄ@ï├♥2kqçÝƽ¥↕¦ıëÊM$4{i9│æ
☺Ãq{Ë║¯F\¾=~s└
∟Q¹·¸♥e_hi
:÷/Ít8ÇX┬KN¤]ÖÉã@^Ù¥↨∟$_╗Ð╬║P☺│♦§·Ä.▬Éôbµ░O{▀c┼ö°d»N7╣ÙxMójã┴ÿI┌b a»»╦êÏf╠®JX%W£ ♦Á¢ÔÈB×C­° ¿ÄÒòê■║3IÁÒã_▒ýB-§2bá░$öö↔Ç6▲l┌ÉÀ¢>┼┤¤rN‗þ ´]0ÞpN¥ûÇ°iO☺k}â¶8I 5¿¶¡|x%┐«í<sÑ┐ON▲á↔∟·7─ıv│c¶╦¦Í×↨╣Á<:ä°(■éÊW,█[¼.4÷ÿ+ý;q/Ï─┴╦Hð╦×\ý ¶Öº¶▲wdm XÀãûþ>s_}D a~3g3:☺ïÄ~oó▼\­6╬├ ┬0il ♦▒Þì+2n┼♠│ìÛ=cß↓↔Þ¶½wèM<\║8J1¶Ã].ê↓■cK☺¦ ¶lA|¿Òà®Ó▬Lâ§Y:^?¯Í┤î╝é♠¼0╝┤IÔÂÐþ6ù IÐöx4ÅjÃChıN║┐uuLQWÛ:¤x'Ð_²_{£¥┬/¶mZ]DzRg>iÃþ fÅ#A[øÕ?▼☻b0l║Lª¬↕▼ªR↨╠Sâ¹f▒@kð┌▲▼☺Ïék? ↔═Õ¼±┬↔ÈFÞð&C╬æ9££j►¸Æ£-ÑÐÅáµ█
«å▼Í
úôl$þ ¸█2FIs±¤È¹%mS►─↔LD7GÛJ8
↓┼
°ÍñËxêñRsïF£»↨♠ë╠ãEåG'ýƒ▼¡ó↕:/¡µÍ■WR¶╦kq¬┴²ÜÿÊ
C(ù‗MrÅ}µ┘h¸»P↨´╚©7$[Ë▄å)Q♠Liy{Hß¡!do┌kbs┬IpÕ½¤Æ;p_╬Lñ±SöÊÄ6Aº▄ÖÌ╦ ×þô§Dª7║ §r}%ûËåV╗[ËEz▓î\ÈÁC┘╗ý(C¥Ìh»i'ÁóÆö─«¢Ó♥‗¯øa,╩Äí8w2W§┴W☺à/¡ö<♦ïvç┤µKO╩sxþ¼Õä_Ö┘
_]Þ▒Éɶ÷-■5 ê░¬UDçc▒\ÉÝÒ>5=r

commented

this is the Telnet side

commented

Seems like your DMP Client sends invalid messages (heck, it reports itself as a custom build). Redownload the client from here and try it again?

commented

Have you tried connecting to your local IPv6 address instead of your public one?

commented

same issue with the local link fe80::5c8f:62af:fac8:ad23

commented

work with Telnet not Client

[20:31:27][DEBUG] : Loading plugins!
[20:31:27][DEBUG] : Done!
[20:31:27][INFO] : Starting DMPServer v0.2.3.1, protocol 41
[20:31:27][INFO] : Loading universe...
[20:31:27][INFO] : Starting SUBSPACE server on port 6703...
[20:31:27][INFO] : Starting HTTP server...
[20:31:27][INFO] : Ready!
[20:31:30][DEBUG] : Online players is now: 0, connected: 1
[20:31:30][INFO] : New client connection from [2620:ac:4000::39]:33842
[20:31:41][INFO] : Invalid DMP message from [2620:ac:4000::39]:33842
[20:31:41][INFO] : Disconnecting client Unknown, sent CONNECTION_END (Invalid DM
P message. Disconnected.) to endpoint [2620:ac:4000::39]:33842
[20:31:41][DEBUG] : Online players is now: 0, connected: 0
[20:33:10][DEBUG] : Online players is now: 0, connected: 1
[20:33:10][INFO] : New client connection from [2620:ac:4000::39]:33847
[20:33:30][INFO] : Disconnecting client Unknown, endpoint [2620:ac:4000::39]:338
47, Connection timed out
[20:33:30][DEBUG] : Online players is now: 0, connected: 0
[20:41:10][DEBUG] : Online players is now: 0, connected: 1
[20:41:10][INFO] : New client connection from [fe80::5c8f:62af:fac8:ad23%19]:339
23
[20:41:30][INFO] : Disconnecting client Unknown, endpoint [fe80::5c8f:62af:fac8:
ad23%19]:33923, Connection timed out
[20:41:30][DEBUG] : Online players is now: 0, connected: 0

commented

connect try

commented

I am:

  • sure that everyone understood that it works with telnet
  • unsure whether your telnet connection is able to get to a state that triggers the error mentioned above.
commented

no problem with ipv4

commented

Can you upload the logs again? The previous one did not contain the line with the error trying to connect to your server.

commented
commented

Can you please click connect and don't press disconnect until it gives an error, and upload the log again?

commented

It never give error .. wait indefinitly

commented

Just wait, it will throw an error eventually.

commented

[LOG 20:42:49.004] [1259.686] DarkMultiPlayer: Trying to connect to fe80::5c8f:62af:fac8:ad23, port 6703
Ten minute no error it just wait

commented

20 min no error i still waiting in connecting state

commented

Have you tried what @ThomasKerman suggested, that was downloading the 0.2.3.1 release version from godarklight.info.tm/dmp?

EDIT: just a note here, you say that it can't resolve your IPv6 but it can resolve your AAAA record. In case you don't know, the AAAA record is a DNS record for IPv6 addresses.

commented

ok i Retry immediatly with this version

commented

game restart with the godarklight.info.tm/dmp version

commented

PS U:> ping srv-sanmilie.sro.ca

Envoi d'une requête 'ping' sur srv-sanmilie.sro.ca [2620:ac:4000::39] avec 32 octets de données :
Réponse de 2620:ac:4000::39 : temps<1ms
Réponse de 2620:ac:4000::39 : temps<1ms
Réponse de 2620:ac:4000::39 : temps<1ms
Réponse de 2620:ac:4000::39 : temps<1ms

Statistiques Ping pour 2620:ac:4000::39:
Paquets : envoyés = 4, reçus = 4, perdus = 0 (perte 0%),
Durée approximative des boucles en millisecondes :
Minimum = 0ms, Maximum = 0ms, Moyenne = 0ms
PS U:>

But plugin in game report DNS Error

commented

I just issued a DNS lookup for your address and it says there was an error looking it up. If you have just added that record, wait a few hours for the change to propagate.

commented

nop if you try ipv6.google.com in the plugin you received also a dns error

commented

PS U:> ping ipv6.google.com

Envoi d'une requête 'ping' sur ipv6.l.google.com [2607:f8b0:4006:80b::200e] avec 32 octets de données :
Réponse de 2607:f8b0:4006:80b::200e : temps=10 ms
Réponse de 2607:f8b0:4006:80b::200e : temps=10 ms
Réponse de 2607:f8b0:4006:80b::200e : temps=10 ms
Réponse de 2607:f8b0:4006:80b::200e : temps=10 ms

Statistiques Ping pour 2607:f8b0:4006:80b::200e:
Paquets : envoyés = 4, reçus = 4, perdus = 0 (perte 0%),
Durée approximative des boucles en millisecondes :
Minimum = 10ms, Maximum = 10ms, Moyenne = 10ms
PS U:>

commented

What is the error that you get in both cases, can you share a screenshot?

commented

connect try 2
connect try 3

commented

in ipv4 it's work
-snip-

but not in ipv6

commented

-snip-

commented

It's something wrong with your install then. The error is no host found. I'm afraid we can't help more.

commented

IPv6 is not ready, code review is need for client connetion.

commented

i found this on codesource ....
DNS resolver in .net not resolve actualy IPv6 address
Client Application

Again, an IPv6 client application is very similar to an IPv4 application.

-snip-

commented

You're wrong, IPv6 is supported by DMP, and we are not responsible for a faulty setup you may have. I just tried a sample project that uses the same methods as DMP uses to lookup host names, and could confirm that if you have a problem in your v6 setup (in mine I don't have v6 on the router, so I can only use v4), it returns "no such host is known".

However, I'm not so sure about the method working flawlessly with v6 in .NET 3.5, which may be the case, and we can't help because Unity won't update their Mono version, leaving us stuck with .NET 3.5.

commented

Solution : refactor code with socket.. tcpclient not work in ipv6

commented

my setup is good .. framwork have some limitation Telnet is build in C not in c#

commented

Can you try running this ipv6 tester? It'll just try to call .GetHostEntry for ipv6.google.com and share a screenshot with the result?

commented

test

commented

Right, so your setup is working, sorry. What is wrong is .NET 3.5 then,
which unfortunately we can't do anything about it. Use IPv4 for now.

commented

Usage of winsock2 api directly can make connection working in ipv6
i have try this and it's work well...

-snip-

commented

Can you please post any code you have to Pastebin or similar?

And we are not going to use an external library to fix Unity's problem. Winsock2 is Windows only and if we used it, DMP would become Windows only, because it would depend on a Windows only library. And we are also not using any library for networking, because the Client is using .NET 3.5 and we can't upgrade because Unity is stuck in this version.