28 de febrero de 2008

Redes - Ubuntu

Buenas, en este tuto, intentaré "formarlos" un poco más sobre comandos importantes de redes y otros con el objetivo de que si algún dia tengas un problema, reportes toda la información necesaria.

Antes que nada, como siempre, hay que aclarar un par de temas:

Bien, el primer paso que vamos a tratar, será un poquito de redes.

Redes:

Como todos sabran, el mundillo de internet funciona por IPs (que derivan de los protocolos TCP/IP (Transmission Control Protocol/Internet Protocol)). Pero, que es una IP y que hace?

Una IP es un conjunto de bits que dan un nombre al ordenador dentro de la red. mas info aca http://es.wikipedia.org/wiki/Direcci%C3%B3n_IP

Junto a una IP, va asociada una máscara de sub-red. La máscara de sub-red, esta formada por unos a la izquierda y ceros a la derecha hasta completar la longitud de la IP y separa la información de red de la información de host en la IP.

Por ejemplo, si tenemos la IP: 192.168.1.30 y la máscara 255.255.255.0 (tambíen se puede escribir como /X siendo la X la cantidad de unos de la máscara. En el caso 255.255.255.0, sería /24), aplicando la operación lógica AND bit a bit, encontraremos que tenemos como dirección de red: 192.168.1.0 y posibilidad de poner 253 hosts distintos.

Comandos importantes sobre redes (recordar que puedes aplicar la ayuda con man ):

- ifconfig

Este comand, nos muestra toda la información posible sobre las interfícies de red que tenemos activas. Si se le añade -a, nos muestrará TODAS las interfícies, activas o no.

Un ejemplo de ifconfig es este:

eth0 Link encap:Ethernet HWaddr 00:A0:D1:A0:CF:30
inet addr:192.168.1.33 Bcast:192.168.1.255 Mask:255.255.255.0
inet6 addr: fe80::2a0:d1ff:fea0:cf30/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:1866 errors:0 dropped:0 overruns:0 frame:0
TX packets:1707 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:1552464 (1.4 MiB) TX bytes:283573 (276.9 KiB)
Interrupt:16

En donde podemos distinguir lo siguiente:

eth0

Nombre de la interfície

Link encap:Ethernet

Tipo de conexión. En este caso, Ethernet

HWaddr 00:A0:D1:A0:CF:30

Dirección MAC de la targeta de red

inet addr:192.168.1.33

Dirección IP asociada a la interfície

Bcast:192.168.1.255

Dirección de Broadcast. Esta dirección se utiliza para enviar mensages a todos los PCs conectados a la misma red

Mask:255.255.255.0

Máscara de sub-red

inet6 addr: fe80::2a0:d1ff:fea0:cf30/64

IP y máscara de sub-red en IPv6

RX packets:1866 errors:0 dropped:0 overruns:0 frame:0

Paquetes de datos recibidos.

TX packets:1707 errors:0 dropped:0 overruns:0 carrier:0

Paquetes de datos enviados

Esa es la información más relevante de ifconfig.

- netstat -r

Con esto, podremos ver nuestra tabla de encaminamiento. Esta tabla es la que utiliza el ordenador, los routers, etc para saber por donde tiene que enviar la información.

Un ejemplo es:

Kernel IP routing table
Destination Gateway Genmask Flags MSS Window irtt Iface
192.168.1.0 * 255.255.255.0 U 0 0 0 eth0
link-local * 255.255.0.0 U 0 0 0 eth0
default 192.168.1.1 0.0.0.0 UG 0 0 0 eth0

Y el significado de cada columna es:

Destination

Nombre de la dirección de red de destino

Gateway

Dirección IP de la puerta de enlace

Genmask

Máscara de sub-red

Iface

Interfície por donde tirará el paquete

Como se utiliza esta tabla?

Cuando decidas conectarte con Ubuntu-es, en primer lugar, el PC averigua la IP y una vez con la IP, le aplica la Genmask (máscara de sub-red). Si el resultado coincide con la dirección que hay en Destination, tira el paquete por la interfície que marca Iface. Si hay algún Gateway, tira el paquete por Iface con destino al Gateway. Es bastante sencillo.

Cosas a saber:

link-local es el bucle local y corresponde a la IP 127.0.0.1 (esta es la IP que tiene todo ordenador para conectar consigo mismo (aunque no esteis conectados a internet))

default es la dirección por defecto por donde tirará los paquetes si no encuentra un camino antes. Corresponde a la IP 0.0.0.0 y vereis que si le aplicas la máscara que tiene asociada a cualquier IP, siempre os dará la default.

- ping

Estamos ante uno de los comandos más utilizados para el testeo de redes. Este comando, envia unos cuantos bits de datos al destino que querais y cuando un ordenador recibe un ping, su obligación es contestarlo.

Sirve para verificar que las conexiones estan bien echas. Por ejemplo, haced:

ping (en mi caso, ping 192.168.1.1)

Veras q os sale algo así:

ping 192.168.1.1
PING 192.168.1.1 (192.168.1.1) 56(84) bytes of data.
64 bytes from 192.168.1.1: icmp_seq=1 ttl=254 time=3.02 ms
64 bytes from 192.168.1.1: icmp_seq=2 ttl=254 time=0.695 ms
64 bytes from 192.168.1.1: icmp_seq=3 ttl=254 time=0.689 ms
64 bytes from 192.168.1.1: icmp_seq=4 ttl=254 time=0.688 ms

--- 192.168.1.1 ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3001ms
rtt min/avg/max/mdev = 0.688/1.273/3.022/1.010 ms

Que significa todo esto?

PING 192.168.1.1 (192.168.1.1) 56(84) bytes of data.

Indica que estamos haciendo un ping a la dirección 192.168.1.1 con 56 bytes de datos (84 bytes sumando la cabecera)

64 bytes from 192.168.1.1: icmp_seq=1 ttl=254 time=3.02 ms
64 bytes from 192.168.1.1: icmp_seq=2 ttl=254 time=0.695 ms
64 bytes from 192.168.1.1: icmp_seq=3 ttl=254 time=0.689 ms
64 bytes from 192.168.1.1: icmp_seq=4 ttl=254 time=0.688 ms

Nos dice que hemos recibido correctamente 64 bytes de datos desde la dirección IP 192.168.1.1. Además, nos indica algunos parámetros de la cabecera TCP/IP tales como el número de secuencia y el TTL (Time To Live). También nos muestra el tiempo que ha tardado el paquete en ir y volver

Fijarse que el primer paquete tarda un poquito más. Eso es porque primero tiene que resolver la dirección MAC del destino y una vez con la respuesta, envia el ping. Para los demás, como que ya tiene la dirección MAC guardada, no le hace falta consultarlo de nuevo.

--- 192.168.1.1 ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3001ms
rtt min/avg/max/mdev = 0.688/1.273/3.022/1.010 ms

Estadísticas de las peticiones. Dice que se han enviado 4 paquetes, de los cuales, 4 se ha recibido respuesta. Eso implica que el 0% de los paquetes enviados, se han perdido. Posteriormente, teneis una pequeña estadística del tiempos.

1 comentarios:

Anónimo dijo...

Excelente articulo, felicitaciones y espero que sigas publicando articulos asi como esta bien detallado.

Edgar.

 
Design by Wordpress Theme | Bloggerized by Free Blogger Templates | coupon codes