elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.


Tema destacado: Recuerda que debes registrarte en el foro para poder participar (preguntar y responder)


  Mostrar Mensajes
Páginas: 1 2 3 4 5 6 [7] 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
61  Programación / Programación C/C++ / Interfaz de red activa en C en: 13 Octubre 2012, 10:58 am
¡Buenas a todos!

Estoy haciendo un programa en C para linux al cual le voy a pasar por parametro una interfaz de red (ej.: eth0) y quiero comprobar que dicha interfaz de red esta activa y lista para enviar o recibir datos....

¿Como hago esta comprobacion?

Gracias, un saludo.
62  Programación / Programación C/C++ / Re: ayuda con sockets en: 12 Octubre 2012, 15:48 pm
Bueno creo que ya he dado con el problema...

En realidad esta en la funcion htons(). La funcion htons(u_16) recibe un numero de 16 bits, pero tu le estas pasando un int puertosd que es de 32 bits, por eso te da fallo de segmentacion. Para solucionarlo debes declararte el puertosd como unsigned short puertosd. Y luego ten cuidado con el scanf(puertosd) porque ya no puedes usar %d para leer creo que debes hacerlo asi scanf("%hd", &puertosd);

Un saludo.
63  Seguridad Informática / Hacking / Re: Redireccionar IP router en: 12 Octubre 2012, 14:01 pm
¡Buenas a todos!

Gracias por sus respuestas.

La idea es...supongamos que a mi router estan llegando paquetes que no son para el, es decir, la ip de mi router es 1.2.3.4, y los paquetes tienen srcIp 6.7.8.9 y destIp 9.8.7.6. Cuando esos paquetes llegan a mi router lo que quiero es que me los reenvie a mi PC :P Pero claro, el router por defecto esto no lo permite y por tanto debo configurar el iptables del router de tal forma que los paquetes con srcIP 6.7.8.9 sean enviados a mi PC y yo luego hago un forward.

Asi que me imagino que debo configurar el INPUT del iptables....ahora me queda saber como hacerlo...

¿Alguna idea?

NOTA: esto no es en LAN por eso debo configurar el INPUT del router

Gracias, un saludo.
64  Programación / Programación C/C++ / Dont fragment iphdr C en: 12 Octubre 2012, 11:59 am
¡Buenas a todos!

Necesito editar el flag de dont fragment de la cabecera IP pero no se como hacerlo pues en el struct iphdr no hay campo para editar los flags...

¿alguien sabe como editar los flags de la cabecera ip?

Nota: estoy programando Raw Sockets en C para linux

Gracias, un saludo.
65  Programación / Programación C/C++ / Re: ayuda con sockets en: 12 Octubre 2012, 11:55 am
¡Buenas ankora45!

El problema lo tienes en esta linea:
Código
  1. sock.sin_addr.s_addr = inet_addr(host->h_addr);

Mira este enlace que hablan sobre tu problema
http://foro.elhacker.net/programacion_cc/asignar_ip_a_una_sockaddrin-t217251.0.html

Un saludo.
66  Programación / Programación C/C++ / Re: Problema con sprintf() en: 12 Octubre 2012, 02:47 am
Muchas gracias por las aclaraciones, enseguida me pondre a corregir.

Un saludo.
67  Programación / Programación C/C++ / Problema con sprintf() en: 11 Octubre 2012, 15:24 pm
¡Buenas a todos!

Tengo un problemilla con sprintf(). El problema esta en que me duplica la cadena y no coge bien las variables....

Esta es la funcion:
Código
  1. char * httpPacket(char *httpDatos){
  2.  
  3.        char packet[65536]={""};
  4.        sprintf(packet,"HTTP/1.1 200 OK\r\nDate: Thu, 22 Mar 2012 02:02:42 GMT\r\nContent-Type: text/html; charset-UTF-8\r\nContent-Encoding: gzip\r\nContent-Lengh: %d\r\nServer: gws\r\n\r\n%s",sizeof(httpDatos), httpDatos);
  5.        printf("paquete: %s\n",packet);
  6.        return (char *) packet;
  7.  
  8. }

La variable httpDatos contiene codigo html...

Y el printf(packet) tiene como salida esto:

Citar
paquete: HTTP/1.1 200 OK
Date: Thu, 22 Mar 2012 02:02:42 GMT
Content-Type: text/html; charset-UTF-8
Content-Encoding: gzip
Content-Lengh: 4
Server: gws

HTTP/1.1 200 OK
Date: Thu, 22 Mar 2012 02:02:42 GMT
Content-Type: text/html; charset-UTF-8
Content-Encoding: gzip
Content-Lengh: 4
Server: gws



Cuando en realidad deberia ser asi:

Citar
paquete: HTTP/1.1 200 OK
Date: Thu, 22 Mar 2012 02:02:42 GMT
Content-Type: text/html; charset-UTF-8
Content-Encoding: gzip
Content-Lengh: 34
Server: gws

<html>
     <h1>Prueba</h1>
</html>

Si os fijais, duplica la cabecera, pone mal el campo Content-Length y no muestra el codigo html...

¿Donde esta el fallo?
68  Programación / Programación C/C++ / system(variable) en C linux en: 5 Octubre 2012, 21:14 pm
¡Buenas a todos!

Sabeis como puedo hacer una linea como esta en C?

Código
  1. system("programa -a param1 -b %s -c param3", intVar);

Gracias, un saludo.
69  Programación / Programación C/C++ / Re: funcion getPayloadTcp() en C en: 4 Octubre 2012, 13:55 pm
¡Buenas!

La funcion getPayload ya la tengo bien hecha solo tengo una duda. Para calcular la suma de todas las cabeceras y que funcione correctamente debo hacer lo siguiente.
Código
  1. int hdrSize=( sizeof (struct ethhdr) + sizeof(struct iphdr) + sizeof(struct tcphdr) + 12 );

¿El 12 magico porque debo sumarselo?

Creo que esos 12 bytes son 8 de la cabecera ethernet y 4 de la cabecera tcp. Cocretamente son:

7 bytes del preambulo de la cabecera ethernet
1 byte del delimitador del inicio de trama de la cabecera ethernet
4 bytes del campo de opciones de la cabera tcp.

Esto creo que se debe a que el struct ethhdr solo tiene los campos srcMAC destMAC y protocolo, y el strcut tcphdr no inculye el campo de opciones....

¿mis sospechas son correctas?

Un saludo.
70  Comunicaciones / Redes / longitud cabecera ethernet en: 4 Octubre 2012, 13:37 pm
¡Buenas a todos!

¿La longitud de la cabecera ethernet es constante o es variable?

Es que estoy haciendo un programa y para separa el payload de las cabeceras de un paquete TCP, debo calcular primero la logitud de todas las cabeceras (tamaño(cabeceraEthernet) + tamaño(cabeceraIp) + tamaño(cabeceraTcp)). Y resulta que para que me funcione perfectamentente a la suma de todas las cabeceres le debo sumar 12....y no se porque...

¿Es posible que por usar wifi se le añadan datos a la cabera ethernet?
Páginas: 1 2 3 4 5 6 [7] 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines