Thread IO-Socket als MITM-Server (10 answers)
Opened by Aendrew at 2017-07-03 21:48

rosti
 2017-07-04 21:59
#186783 #186783
User since
2011-03-19
3216 Artikel
BenutzerIn
[Homepage]
user image
Was sagt denn die Dokumentation zum return-value der Methode send() ?

Und überhaupt: accept liefert bei eingehenden Daten ein neues Socket, nämlich das Socket über das Daten an den Client zurückgesendet werden sollen. D.h., der Schleifenkopf muss so aussehen:

Code (perl): (dl )
1
2
3
4
5
6
7
# $server ist eine Instanz IO::Socket::INET
while ( my $client = $server->accept ){
   # Daten vom client aus socket lesen
   my $data = <$client>;
   # sende daten an client zurück
   print $lient, $data;
}


Du solltest Dir darüber im Klaren sein, wer client und wer server ist. Es gibt einen lokalen Client der Daten via Socket senden und empfangen kann. Und es gibt einen Server der auf eingehende Verbindungen wartet und bei jedem Dateneingang über die accept Methode ein neues Socket zu dem Client liefert der gerade eben Daten gesendet hat.

IO::Socket::INET erbt von IO::Handle, ist also wie ein Dateihandle zu betrachten und bringt die entsprechenden Methode zum Lesen und zum Schreiben mit.

Und nochmal nachgefragt: Was zeigt netstat -an, läuft Dein Server?

View full thread IO-Socket als MITM-Server