net.exe bzw. Net Send Starten

  • eine Nachricht kommt bei mir nicht.

    Habe versucht den Port freizuschalten kommt -1
    Habe Firewall ganz ausgemacht immernoch -1

    Das einzige wo ich jetzt noch Ports freischalten könnte wäre im Router aber damit sollte das ja eigentlich nichts zu tun haben wenn ich es im Netzwerk mache oder? ?(

  • Genauer gesagt funktioniert es nur im Internet denn sonst bekommt er ja keine IP zurück und kann sich demnach auch nicht auf die IP "binden".

    @Cornfl4kes Was steht bei dir in der Msgbox ?

  • Ich denke mal TCPListen kann nur auf IPs horchen die direkt dem PC zugewiesen sind (also keine externen IPs bei Router-Nutzern)
    damit die LAN-User also auch was von haben

    [autoit]

    $Form1 = GUICreate("Choose IP but be fast", 238, 201, 303, 219)
    $inetIP = _GetIP()
    $COmboIP = GUICtrlCreateCombo( $inetIP , 10, 10) ; create first item
    GUICtrlSetData(-1, @IPAddress1 & '|' & @IPAddress2 & '|' & @IPAddress3 & '|' & @IPAddress4, @IPAddress1) ; add other item snd set a new default
    $timer = GUICtrlCreateLabel("400 ms remaining to choose the IP", 10, 70)
    GUISetState()
    for $slept = 1 to 400
    $wakeup_in = 400 - $slept
    GUICtrlSetData ( $timer, $wakeup_in & " ms remaining to choose the IP")
    sleep(1)
    Next
    $IP = GUICtrlRead ($COmboIP)
    GUIDelete()

    [/autoit]
  • Genauer gesagt funktioniert es nur im Internet denn sonst bekommt er ja keine IP zurück und kann sich demnach auch nicht auf die IP "binden".

    @Cornfl4kes Was steht bei dir in der Msgbox ?

    In der Msgbox wird meine Internet IP wiedergegeben

    Edit: Habe versucht den Port (31758) freizugeben bekomme aber leider immer noch -1

    MFG

    Einmal editiert, zuletzt von Cornfl4kes (14. Januar 2009 um 14:51)

  • Ok dann teste mal meinen Code statt

    [autoit]

    $IP = GetIP()

    [/autoit]

    und wähle da deine LAN-IP

  • jo das war es jetzt lauft der server ;)

    Danke an alle für die Hilfe

    Jam00 Bei mir lauft es jetzt ja (über Lan) wie ich es wollte ;)

    wäre trotzdem interessant zuwissen (vieleicht auch nicht nur für mich) wie es übers Internet lauft.
    Also wenn sich jemand die Arbeit machen möchte und/oder vieleicht noch eine Idee hat. Höre ich sie gerne. :D

    MFG Cornfl4kes

    Einmal editiert, zuletzt von Cornfl4kes (14. Januar 2009 um 15:06)

  • Jam00: Ich glaube das liegt nicht an deinem Script sondern an dem TCPListen-Befehl der einfach bloß IPs nutzen kann die dem PC direkt zugewiesen sind also LAN-IPs bzw. bei Modems halt die Inet-IP (denke ich zumindestens).

  • Also ich kann den Server bei mir starten, das geht immer! Und die Clienst gehen dann auch! Und auch über das Internet! Auserdem ist die IP die der Server benutz doch deine Eigen, also intern!

    mfg. Jam00

  • Mit NAT-Forwarding im Router geht das auch übers Internet wenn du als IP die vom Netzwerkadapter angegeben hast.

    @Jam wie gehst du ins Netz?

  • Denke ich auch denn mit einem Modem ist deinem Rechner die IP direkt zugewiesen sprich er "kennt" die IP mit der er im Internet steht, im Gegensatz zum Zugriff über einen Router oder Proxy wo der Rechner nur die IP seiner Netzwerkkarte und die IP der LAN-Schnittstelle seiner Gegenstelle (Router/Proxyserver) kennt. Wenn jetzt ein Routerbenutzer also wissen will mit welcher IP er im Internet vertreten ist muss er bei nem speziellen Server nachfragen von welcher IP diese Anfrage kam (Das macht _GetIP() für dich).

    TCPListen 'bindet' sich an eine Schnittstelle und damit er weiß an welche, gibst du ihm die IP der Schnittstelle mit. Du gibst ihm in deinem Script aber die IP mit die er im Internet hat. Also bindet er sich bei Modem-Nutzern an die Schnittstelle vom Modem weil die genau diese IP hat. Router-Benutzer haben aber keine Schnittstelle mit der Internet-IP (denn die Verbindung zum Internet stellt ja der Router her) deshalb findet TCPListen keine Schnittstelle an die er sich 'binden' kann und bringt Fehler -1 was dein Script zum beenden veranlasst.

    Klingt komisch ist aber so :pinch:

  • Indem man meine Version der IP-Auswahl nimmt (oder direkt @IP-Adress1 nimmt), damit funktioniert es auf jeden Fall im LAN vorausgesetzt die Firewall blockiert nicht. Wenn es bei nem Router-Nutzer auch übers Internet funktionieren soll muss der in seinem Router einstellen (lassen) das Anfragen die aus dem Internet auf den Port eingehen an den bestimmten Rechner weitergeleitet werden auf dem der Server läuft.