• Publicidad

Sockets en Perl sobre el mismo puerto

¿Ya sabes lo que es una referencia? Has progresado, el nível básico es cosa del pasado y ahora estás listo para el siguiente nivel.

Sockets en Perl sobre el mismo puerto

Notapor PHAMTOM » 2011-01-13 04:51 @243

Buenas, estoy haciendo un programa en Perl, que lo que tiene que hacer es enviar "muchos sockets" a un servidor y puerto especifico.

Hice primero el proyecto en VisualBasic, que funciona perfectamente.
Al utilizar el comando netstat -a, veía como se ejecutaban los sockets y enviaba al host y puerto específico, para ello en el VisualBasic utilicé un arreglo de winsock.

Pero a la hora de hacer el script en Perl me tomé, que el script que hice, solo mandaba 1 socket en vez de mandar muchas conexiones. Parte del código Perl es así:

Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
  1. use IO::Socket::INET;
  2. $x = 0;
  3. system("pause");
  4. system("cls");
  5. print "\nIp del servidor --> ";
  6. chomp($ip=<STDIN>);
  7. print("\nPuerto ");
  8. chomp($puerto=<STDIN>);
  9. print("\nSlot del servidor default 50 --> ( Solo Numeros ) ");
  10. chomp($slot=<STDIN>);
  11. system("cls");
  12. while($x<=$slot)
  13. {
  14. $x++;
  15. $k=IO::Socket::INET->new( PeerAddr => "$ip",
  16. PeerPort => "$puerto" ,
  17. Proto => "tcp");
  18. print "[+]Socket Connect" . "\n";
  19. }
  20. system("pause>nul");
Coloreado en 0.003 segundos, usando GeSHi 1.0.8.4


Al ejecutar el código Perl, utilicé el comando netstat -a, pero vi que solo hace una conexión, o sea, que manda un solo socket...

¿Puedo hacer que envíe muchos sockets distintos al puerto como lo hice con VisualBasic?
¿Necesito usar un array o hash? ¿Cómo sería para definirlos con muchos objetos de sockets? Muchas gracias de antemano.

PHAMTOM
PHAMTOM
Perlero nuevo
Perlero nuevo
 
Mensajes: 1
Registrado: 2011-01-13 04:47 @241

Publicidad

Re: Sockets en Perl sobre el mismo puerto

Notapor explorer » 2011-01-13 07:27 @352

Bienvenido a los foros de Perl en Español, PHAMTOM.

Dejando que sean los expertos en comunicaciones los que mejor te respondan, antes te diré que ese programa lo he probado en mi Linux y sí que funciona. De hecho, tenía reservas con el '$k =', pero aún así, funciona: en el netstat aparecen todas las conexiones (hasta que las cierra el servidor, claro).

También depende del servidor que tengas al otro lado. Si solo admite una conexión por cliente por cada IP, pues ahí tendrías una respuesta.

Lo dicho... a ver si algún experto se anima a contestarte.
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Re: Sockets en Perl sobre el mismo puerto

Notapor creating021 » 2011-01-13 13:53 @620

:o No soy experto en comunicaciones, pero si capto la intención de PHAMTOM (hacer un programa que haga DoS), entonces eso de
Al ejecutar el código Perl, utilicé el comando netstat -a, pero vi que solo hace una conexión, o sea, que manda un solo socket...
realmente quiere decir "Al ejecutar el código, sólo hace una conexión por cada iteración del while. La pregunta vendría siendo ¿cómo hago para que las conexiones se realicen simultáneamente?" :lol:

¿Es eso lo que quieres hacer?

En general, hay varios comentarios para hacer:
  • ¿Por qué usas system("pause") y no sleep?
  • ¿Por qué no inicializas las variables con my?
  • ¿Por qué nunca cierras la conexión o por qué no tiene un timeout?
  • ¿Por qué todavía hay personas que insisten con VB?
Expect the worst, is it the least you can do?
Avatar de Usuario
creating021
Perlero frecuente
Perlero frecuente
 
Mensajes: 595
Registrado: 2006-02-23 16:17 @720
Ubicación: Frente al monitor

Re: Sockets en Perl sobre el mismo puerto

Notapor Leo_Gutierrez » 2011-01-14 17:59 @791

¿Por qué hacer un DoS en vez de hacer algo más útil?
Leo_Gutierrez
Perlero nuevo
Perlero nuevo
 
Mensajes: 91
Registrado: 2008-08-20 23:38 @026

Re: Sockets en Perl sobre el mismo puerto

Notapor explorer » 2011-01-15 11:03 @502

Quizás no está haciendo un DoS, sino una prueba de estrés, algo común cuando se está preparando un sistema que debe responder a miles de peticiones por segundo.
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Re: Sockets en Perl sobre el mismo puerto

Notapor creating021 » 2011-01-15 11:46 @532

Quizás no está haciendo un DoS, sino una prueba de estrés, algo común cuando se está preparando un sistema que debe responder a miles de peticiones por segundo.

Yo pensé esa posibilidad pero noté que el código no hace petición alguna al servidor, sólo se conecta a un puerto.

Falta ver a qué servidor se está conectando.
Expect the worst, is it the least you can do?
Avatar de Usuario
creating021
Perlero frecuente
Perlero frecuente
 
Mensajes: 595
Registrado: 2006-02-23 16:17 @720
Ubicación: Frente al monitor


Volver a Intermedio

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 8 invitados