TCP Fehler - Main Socket mit Public IP

  • Hallöchen,

    ich habe mich mal wieder etwas mit TCP beschäftigt um ein Programm zu schreiben, dass gewisse Kommunikation erleichtern soll.

    Wenn ich jetzt mit meiner öffentlichen IP den Mainsocket erstellen möchte (TCPListen) dann kommt folgender Fehler:

    Spoiler anzeigen

    WSAEADDRNOTAVAIL 10049
    Cannot assign requested address. The requested address is not valid in its context. This normally results from an attempt to bind to an address that is not valid for the local computer. This can also result from connect, sendto, WSAConnect, WSAJoinLeaf, or WSASendTo when the remote address or port is not valid for a remote computer (for example, address or port 0).


    Kann ich das nicht mit meiner öffentlichen IP machen, oder hab ich was missachtet? Wie kann ich sonst Daten aus dem Internet empfangen?

    Hier der relevante Code:

    Spoiler anzeigen
    [autoit]

    Global $Public_IP = _GetIP()
    $Main_Socket = TCPListen($Public_IP, $Port)
    If $Main_Socket <= 0 Then
    If @error = 1 Then
    MsgBox(16, "Error #01 - Socket creation fails", "IPAddr is incorrect.")
    ElseIf @error = 2 Then
    MsgBox(16, "Error #02 - Socket creation fails", "Port is incorrect." & @CRLF & "See help for more informations.")
    ElseIf @error Then
    MsgBox(16, "Error #03 - Socket creation fails", "windows API WSAGetError return value " & @error & @CRLF & "See help for more informations.")
    EndIf
    Exit
    EndIf

    [/autoit]

    Falls ich es mit meine lokalen IP Adresse funktioniere funktioniert das erstellen ohne Probleme.

    Vielen Dank für eure Hilfe,
    Aquaplant

    Einmal editiert, zuletzt von Aquaplant (6. Januar 2011 um 22:29)

  • Dankeschön, solche Beiträge habe ich schon verzweifelt gesucht, aber ist wohl wie immer an falschen suchbegriffen gescheitert.
    Mit dyndns kenne ich mich schon gut genug aus, für die Zwecke.
    Nochmal Danke :)