Netzwerkproblem

Übersicht BlitzBasic Beginners-Corner

Neue Antwort erstellen

 

Schoasch

Betreff: Netzwerkproblem

BeitragSa, Nov 15, 2008 9:57
Antworten mit Zitat
Benutzer-Profile anzeigen
Hi,
ich möcht mich jetzt auch ein wenig mit der Netzwerkprogrammierung befassen und habe mir dafür den
Robkurs angesehen und durchgearbeitet.
Zum testen der Proggramme habe ich mir einen alten PC neben meinem neuen aufgestellt und and den Router angesteckt.

Ich wollte anfangs einfach mal etwas ganz simples per UDP schreiben: Verbindung per Port 8000 aufbauen, ein PC sendet ein Wort an den anderen, fertig. (Dazu brauche ich ja auch nur einen Port)

und so sieht der Code aus:
PC-Sender:
Code: [AUSKLAPPEN]


UDP = CreateUDPStream(8000)
WriteLine(udp,"hallo")

SendUDPmsg udp,[ip adresse-beide pc's haben die gleiche],8000

End


PC-Empfänger
Code: [AUSKLAPPEN]

udp = CreateUDPStream(8000)

WaitKey
IP_Adresse = RecvUDPMsg(udp)
Text 0,0,IP_adresse


Also ich starte das Spiel mit dem empfänger pc, schicke dann die nachricht mit dem Sender-PC, drücke dann ne Taste auf dem empfänger pc aber IP_adresse = 0, das heißt er hat keine Nachricht empfangen...

Die Firewall blockt nicht denn ich habe die Ports 8000 per UDP freigegeben.
Kann mir wer sagen was ich falsch mache?

Danke schon mal im Vorraus,
mfg
Schoasch

juse4pro

BeitragSa, Nov 15, 2008 10:02
Antworten mit Zitat
Benutzer-Profile anzeigen
wie?

beide rechner haben die selbe, das solltest du ändern (ich glaub das geht eigentlich garnicht...)
Portfolio |LinkedIn |XING
 

Schoasch

BeitragSa, Nov 15, 2008 10:10
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich habe mich auch gewundert aber ich habe einfach beide Pc's mit einem Lankabel am Router angeschlossen und Beide haben komischerweise die gleiche IP (wenn man in google eingibt - wie ist meine ip)

Was mir aber aufgefallen ist, wenn ich auf meine LAN verbindung gehe und dort nach meiner ip nachschaue steht da: 10.0.0.10 - und beim anderen 10.0.0.5.
Aber das das IP Adressen sind?

mfg
 

DjDETE

BeitragSa, Nov 15, 2008 10:37
Antworten mit Zitat
Benutzer-Profile anzeigen
Die IP im Lannetzwerk oder überhaupt im Internen Netzwerk ist immer einen andere, wie die im Internet.
Um deine IP im Lan anzeigen zu lassen, die du im Lannetzwerk benutzen musst, musst du in der Eingabeaufforderung "ipconfig" natürlich ohne die "" eingeben.
MfG DeTe

Edit: Ja das sind IP-Adressen, wieso auch nicht?
Aktuelles Projekt: XXX |XXX | 3% der v1b fertig
www.emu-soft.de.vu Für die Homepage suche ich noch Linktauschpartner, bei Interesse einfach melden.
 

Schoasch

BeitragSa, Nov 15, 2008 10:51
Antworten mit Zitat
Benutzer-Profile anzeigen
ok danke für deine Antowort =)
also ich habe den Befehl ausgeführt und er verschwand immer nach c.a. einer viertel sekunde (es war sehr schwer genau zum richtigen Zeitpunkt einen Screenshot zu machen)

es steht nun folgendes da:

Windows IP Konfiguration

Ethernetadapter LAN-Verbindung 2:

Verbindungsspezifisches DNS-Suffix:
IP Adresse......................10.0.0.10
Subnetzmaske................255.255.255.0
Standartgateway............10.0.0.138

Welches wäre das richtige?

Ich habe alle drei probiert mit einem noch einfacheren Code per Direct-Play:

spiel1 = HostNetGame("Game1")

spiel1 = JoinNetgame("Game1",[IP-Adressen])


spiel 1 war beim Hosten immer 2 und beim zweiten PC beim joinen immer 0.

mfg

Jo0oker

BeitragSa, Nov 15, 2008 13:41
Antworten mit Zitat
Benutzer-Profile anzeigen
Also,
es ist so, du hast eine IP adresse vom Provider bekommen(Die nutz der router für den Internet zugang).
Intern wird das über NAT geregelt.
Das heisst, im Netzwerk haben alle eine verschiedene IP, wenn du jetzt aber unter (z.B.: www.wieistmeineip.de) schaust, zeigt er die "Providerip" an, und das ist ja nur eine.(Nat regelt z.B. das alle Datenpakete richtig bei dem richtigen PC ankommen.

P.S.: Bitte korrigiert mich!
lg Jo0oker
Tehadon, das kostenlose 3D RPG
www.tehadon.de
http://www.blitzforum.de/worklogs/14/
Das Abenteuer wird beginnen!
 

DjDETE

BeitragSa, Nov 15, 2008 13:44
Antworten mit Zitat
Benutzer-Profile anzeigen
Das richtige ist wie der Name schon sagt, die IP Adresse.
@Jo0ker: Da gibt es nichts zu korrigieren.
MfG DeTe
Aktuelles Projekt: XXX |XXX | 3% der v1b fertig
www.emu-soft.de.vu Für die Homepage suche ich noch Linktauschpartner, bei Interesse einfach melden.
 

Schoasch

BeitragSa, Nov 15, 2008 14:23
Antworten mit Zitat
Benutzer-Profile anzeigen
Erstmals danke für eure Antworten!
Also ich hab mich im internet auch noch ein bisschen schlau gemacht und bin dann auch auf diese LAN IP gestoßen.

Allerdings sollte die IP dann nicht 192.168.xxx.xxx und nicht 10.0.0.10 sein?
Zumindest funktioniert der Code mit 10.0.0.10 nicht es liefert einfach immer eine 0 zurück (Der host bekommt eine 2 da das Spiel richtig erstellt wird aber der zweite PC kann sich nicht verbinden) Die LAN IP kann man ja ändern.

Vieleicht hilft ja die Information, dass wir bei Telekom sind.


mfg
 

DjDETE

BeitragSa, Nov 15, 2008 14:56
Antworten mit Zitat
Benutzer-Profile anzeigen
Das hat mit deinem Internetprovider nichts zu tun. Und deine IP kann durchaus richtig sein, da die IP ja aus Bytes besteht(0-255), du könntest also auch eine IP von 0.0.0.0 haben.
Probier es mal mit 2 Ports, normalerweise ist das bei 2 PC's nicht nötig, aber vlt. hilfts ja.
MfG DeTe
Aktuelles Projekt: XXX |XXX | 3% der v1b fertig
www.emu-soft.de.vu Für die Homepage suche ich noch Linktauschpartner, bei Interesse einfach melden.
 

Schoasch

BeitragSa, Nov 15, 2008 15:14
Antworten mit Zitat
Benutzer-Profile anzeigen
ok ich werds probieren und euch am abend bescheid geben

mfg

edit:

es funktioniert selbst mit 2 Streams nicht

edit2:

Aber mit diesem einzeiligen Code mit HostGame und JoinGame sollte man doch auch schon sehen können ob sich der PC mit einem verbinden kann...

Naja wenn hier keiner mehr weiterweis werde ich wohl am Montag einen Computertechniker fragen.

Danke trotzdem für eure Hilfe,
mfg,
Schoasch
 

Schoasch

BeitragSa, Nov 22, 2008 11:19
Antworten mit Zitat
Benutzer-Profile anzeigen
hmm soeben ist mir die Idee gekommen, dass vieleicht der Router schuld ist..

wäre das möglich?

danke schon mal im vorraus,
mfg
Schoasch

ozzi789

BeitragSa, Nov 22, 2008 11:54
Antworten mit Zitat
Benutzer-Profile anzeigen
Wenn der Port 8000 gesperrt ist kannst du noch lange probieren Wink
0x2B || ! 0x2B
C# | C++13 | Java 7 | PHP 5
 

da_poller

BeitragSa, Nov 22, 2008 15:44
Antworten mit Zitat
Benutzer-Profile anzeigen
pack des empfangen in eine schleife.. denn soo schnell wie das intern alles passiert(senden) wirst du nciht das empfangs tool per waitkey zum empfangen animieren können heir ein beispiel..

sender:
Code: [AUSKLAPPEN]

UDP = CreateUDPStream(8000)

while not keyhit(1)
  if mousehit(1)
    SendUDPmsg udp,127.0.0.1,8000
  Endif
wend


empfänger:

Code: [AUSKLAPPEN]

UDP = CreateUDPStream(8000)
Local x
repeat
  x=RecvUDPMsg(udp)
until x=0
print x



so in etwa könnte das hinhauen ist jetzt nur im browser eben getippt hoffe ich konnte damit helfen da ich NICHT vermute das es an deinem netzwerk liegt sondern einfach das der empfänger die nachricht verpasst(zeittechnisch

Neue Antwort erstellen


Übersicht BlitzBasic Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group