Socket funktioniert nicht



  • unskilled schrieb:

    um einen richtigen fehlercode zu bekommen und dann bekommen wir auch nur heraus (...)
    falsche ip/hostname
    falscher port
    router firewall blockt port
    pc blockt port
    ...

    Du stellst dir das alles ein bisschen zu einfach vor.
    Über den Error-Code des TCP/IP Stack kann man maximal folgende Fälle unterscheiden:
    * Keine Antwort
    * Verbindung wurde "aktiv" abgelehnt
    * Verbindung wurde angenommen (=Erfolg)

    Und zwar ganz einfach deswegen, weil TCP gar nicht mehr Fälle unterscheiden kann. Wer die Verbindung blockt bekommt man so ohne weiteres nicht heraus. Und nichtmal den Fall "falsche IP" kann man zuverlässig erkennen, da die meisten Firewalls/Router so eingestellt sind, dass sie nicht "aktiv ablehnen", sondern sich einfach tot stellen wenn sie eine Verbindung nicht haben wollen.



  • ist mir schon klar. ich wollte damit nicht sagen, dass mit dem errorcode eindeutig bestimmt werden kann, was genau nicht geht...
    aber man kann den fehler halt eingrenzen.

    nach wie vor tippe ich aber auf den router : P



  • Ich habe eine Fehlerüberprüfung so gemacht:
    C/C++ Code:
    int errorcode = GetLastError()
    C/C++ Code:
    int errorcode = GetLastError()
    stimmt das so? (oder ist das total falsch xD) rauskam: 10015 ich finds aber unlogisch...

    <edit 21.5.12> Es war doch errno: 100060, also zeitüberschreitung, sry... </edit>



  • Ich habe eine Fehlerüberprüfung so gemacht:

    int errorcode = GetLastError()
    

    stimmt das so? (oder ist das total falsch xD) rauskam: 10015 ich finds aber unlogisch...

    <edit 21.5.12> Es war doch errno: 100060, also zeitüberschreitung, sry... 🙄 </edit>



  • Die funktionsrückgabewerte hab ich geprüft -> connect() geht nicht. Wie kann ich dem router die ausnahme mitteilen?? Weitere infos, etc. frühenstens dienstag 😞



  • virusscript24 schrieb:

    Wie kann ich dem router die ausnahme mitteilen??

    Na indem du ihn entsprechend konfigurierst.
    STFW



  • Aber dann muss der anwender das ja auch machen...

    Es kann ja auch sein,dass die IP fasch is.
    Die IP hab ich über www.wieistmeineip.de rausgefunden.
    Dann hab ich noch die ausprobiert, die unter ipv4 bei
    ipconfig in der cmd kam. Dann hab ich auch noch ne hamachi nummer...

    hat aber nur bei der hamachi nummer gefunzt. 😞
    (auch nur am localhost)

    Außerhalbnicht mehr...



  • virusscript24 schrieb:

    Aber dann muss der anwender das ja auch machen...

    Wer ist 'der anwender'?
    Wenn Du einen Service laufen lässt, der auf Port xy lauscht, dann kann das natürlich nur funktionieren, wenn Dein Router Anfragen auf xy nicht blockt. Denn sonst merkt Dein Service ja gar nicht, dass da ein Client ist, der sich verbinden möchte.



  • @virusscript24
    Dir fehlen dummerweise Grundlagen, und zwar so viele, dass ich nicht denke dass ein Thread in diesem Forum geeignet ist da Abhilfe zu schaffen.
    Lies dich ein wenig in die Themen TCP/IP, Routing und Netzwerke i.A. ein.

    Dann wirst du vermutlich irgendwann selbst verstehen was da passiert und warum. Und auch was du für Möglichkeiten hast es zum Laufen zu bekommen.



  • Ok, ich versuchs...

    Trotzdem Danke 🙂



  • Ok, jetzt geht's 😃
    Lag am Virenscanner 😡

    Trotzdem danke undvsrs, dass ich eure Zeit verplempert habe. 🙄
    Tut mir echt leid...


Anmelden zum Antworten