Sockets

Tags:    php

<< < 12 > >>

Jeg er i gang med at kigge på sockets i php. Før jeg går i gang med et nyt emne af denne art så finder jeg altid et script og afprøver det sådan!!

Det script jeg har fundet er:

<?

// set some variables
$host = "127.0.0.1";
$port = 12;

// don't timeout!
set_time_limit(0);

// create socket
$socket = socket_create(AF_INET, SOCK_STREAM, 0) or die("Could not create
socket\\n");

// bind socket to port
$result = socket_bind($socket, $host, $port) or die("Could not bind to
socket\\n");

// start listening for connections
$result = socket_listen($socket, 3) or die("Could not set up socket
listener\\n");

// accept incoming connections
// spawn another socket to handle communication
$spawn = socket_accept($socket) or die("Could not accept incoming
connection\\n");

// read client input
$input = socket_read($spawn, 1024) or die("Could not read input\\n");

// clean up input string
$input = trim($input);

// reverse client input and send back
$output = strrev($input) . "\\n";
socket_write($spawn, $output, strlen ($output)) or die("Could not write
output\\n");

// close sockets
socket_close($spawn);
socket_close($socket);
?>

Jeg starter scriptet på min bærbar computer via en MS browser. Derefter loader den bare i en uendelighed men det tager jeg som om at scriptet virker! Nu går jeg ud til en anden computer starter telnet og opretter en forbindelse til 127.0.0.1 på port 12 men den siger at den ikke kan oprette en forbindelse til distinations computeren da den aktivt benægter forbindelsen.
Hvad skal jeg gøre? Jeg har et antivirus program til at køre men den stopper da ikke alle portene? Hvis det lykkes mig at oprette en forbindelse hvordan kan jeg så se at jeg har fået forbindelse? Får jeg noget tekst smækket i hovedet at jeg har oprettet en forbindelse? Eller hva?

MxS @ http://mxs.frac.dk
Slamkodning for fred



12 svar postet i denne tråd vises herunder
1 indlæg har modtaget i alt 1 karma
Sorter efter stemmer Sorter efter dato
Jeg tror, at jeg ved, hvad der er galt nu. Windows telnet sender hvert tastaturtryk for sig selv. Det betyder, at så snart du trykker en tast, bliver den sendt og læst af serveren, som derefter lukker forbindelsen.
Du kan løse problement ved at bruge Putty telnet klienten. Den kan downloades fra http://www.chiark.greenend.org.uk/~sgtatham/putty/
Åben den, udfyld "Host Name (or IP address) feltet, sæt kryds i "Telnet" og skriv
porten. Skift derefter til "Connection->Telnet" vinduet og sæt kryds i "Passive" under "Telnet negotiation mode" og tryk på "Open".


Du har ret! Jeg har (Hvad jeg selv vil kalde det) Forsket i det her i 2 uger snart og det du siger understøtter min mening :p Lyder rigtig som en forsker nu... Hehehe. Jeg har prøvet at se på det milisekund fra hvor du trykker enter til hvor der står "Ingen forbindelse til værten" og jeg har fundet ud af at den skriver noget! Ydermere har jeg fundet et andet script hvor jeg kan se at det virker, men den opførte sig også som du siger med at den sender tastetryk for sig selv!! Jeg kigger lige på den Putty Klient.
MxS @ http://mxs.frac.dk
Slamkodning for fred



Hvis du har fået svar på din post så vær venlig at lukke den.

-----------------------------------------------------------------------------

»»Mark S. Johansen



<< < 12 > >>
t