Jump to content
Unity Insider Forum
Sign in to follow this  
Rupoman

Einfache Netzwerk Kommunikation

Recommended Posts

Hallo,

ich bin aktuell am Programmieren eines Kartenspiels.
Mein Ziel ist es eine Online Kommunikation durchzuführen. Ich habe es mit dem (veralteten) UnityEngine.Networking versucht.
Ich schaffe es innerhalb meines Netzwerks zu kommunizieren. Leider schaffe ich es nicht (ich denke es liegt an den Ports), dass sich jemand außerhalb meines Netzwerkes sich zu verbinden.

Kurz Codeausschnitte:

Server:

   HostTopology HostTopo = new HostTopology(ConConfig, 8);


        // Server Code
        HostID = NetworkTransport.AddHost(HostTopo, PORT, null);

(Client: 

HostID = NetworkTransport.AddHost(HostTopo, 0); // 2. Argument PORT falls Netzwerk

        ConnectionID = NetworkTransport.Connect(HostID, SERVER_IP, PORT, 0, out byte error);

); 

Habe ich etwas falsch gemacht, sodass sich Personen außerhalb nicht verbinden können bzw. gibt es eine bessere Alternative als dass was ich programmiert habe? (ohne gesonderte Portfreigabe oder ähnliches)
Die Kommunikation besteht nur aus Infos über Karteneffekte und Ausspielen von Karten (Bewegen).

Vielen Dank im vorraus !!
 

Share this post


Link to post
Share on other sites

Du musst das Client/Server Prinzip verstehen.

D.h. es gibt einen Server, welcher auf einem Port lauscht. Ein Client verbindet sich mit diesem Server über den Port. IdR werden in Heimnetzwerken NAT Router genutzt. D.h. um einen Server von extern zu erreichen braucht es ein Port-forwarding oder du brauchst einen Server, welcher im Interneterreichbar ist (z.B. bei einem Provider).

  • Like 2

Share this post


Link to post
Share on other sites

Danke :)

Da hab ich wahrscheinlich falsch ausgedrückt, das
Prinzip habe ich grob verstanden, meine Frage ist ob es eine andere Möglichkeit gibt, da keine Port Freigabe möglich ist.
Übergangsweise würde ich auch ohne Server sondern nur mit direkten Kommunikation dies durchführen wollen (ist nur ein Hobbyprojekt) , wenn dies möglich ist .

 

Share this post


Link to post
Share on other sites

Wie geschrieben. Der Dienst muss halt erreichbar sein. Wenn nicht bei dir, dann im Internet z.b. bei einem Provider.

Alternativ via VPN, aber das ist komplexer und du hast das selbe Problem mit dem Netzwerkport.

  • Like 1

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
Sign in to follow this  

×
×
  • Create New...