29 enero 2010

29 enero 2010

Direccionamiento IP

     Una Dirección IP es un número que identifica de manera lógica y jerárquica a una interfaz de un dispositivo (habitualmente un ordenador) dentro de una red que utilice el protocolo IP (Internet Protocol), que corresponde al nivel de red del protocolo TCP/IP. Dicho número no se ha de confundir con la dirección MAC que es un número hexadecimal fijo que es asignado a la tarjeta o dispositivo de red por el fabricante, mientras que la dirección IP se puede cambiar.

     Una dirección IP se implementa con un número de 32 bit que suele ser mostrado en cuatro grupos de números decimales de 8 bits (en la versión IPv4). Cada uno de esos números se mueve en un rango de 0 a 255 (expresado en decimal), o de 0 a FF (en hexadecimal) o de 0 a 11111111 (en binario). Las direcciones IP se pueden expresar como números de notación decimal: se dividen los 32 bits de la dirección en cuatro octetos. El valor decimal de cada octeto puede ser entre 0 y 255 [el número binario de 8 bits más alto es 11111111 y esos bits, de derecha a izquierda, tienen valores decimales de 1, 2, 4, 8, 16, 32, 64 y 128, lo que suma 256 en total, 255 más la 0 (0000 0000)]. Combinados los 4 octetos y se tendrá 232 o una posibilidad de 4.294.967.296 valores únicos.

128 64 32 16 8 4 2 1 Total
2 7 2 6 2 5 2 4 2 3 2 2 2 1 2 0  
1 1 1 1 1 1 1 1 255
0 0 0 0 0 0 0 0 0
 
ejemplosbinariosjl4

     En la expresión de direcciones IPv4 en decimal se separa cada octeto por un carácter único ".". Cada uno de estos octetos puede estar comprendido entre 0 y 255, salvo algunas excepciones. Los ceros iniciales, si los hubiera, se pueden obviar (010.128.001.255 sería 10.128.1.255).

Clases de IP.

      Las direcciones IP se clasifican en 5 clases: A,B,C, D y E. El factor que va a determinar la clase de una IP va a ser el octeto 1. En la actualidad se usan sólo las clases A, B y C, las clases D y E, se usan sólo para fines de estudio e investigación.

ip-class-bit-pattern

  • CLASE  A - Esta clase es para las redes muy grandes, tales como las de una gran compañía internacional. Del IP con un primer octeto a partir de 1 al 126 son parte de esta clase. Los otros tres octetos son usados para identificar cada anfitrión. Esto significa que hay 126 redes de la clase A con 16,777,214 (224 -2) posibles anfitriones para un total de 2,147,483,648 (231) direcciones únicas del IP. Las redes de la clase A totalizan la mitad de las direcciones disponibles totales del IP. En redes de la clase A, el valor del bit *(el primer número binario) en el primer octeto es siempre 0.
  • CLASE  B - La clase B se utiliza para las redes de tamaño mediano. Un buen ejemplo es un campus grande de la universidad. Las direcciones del IP con un primer octeto a partir del 128 a1 191 son parte de esta clase. Las direcciones de la clase B también incluyen el segundo octeto como parte del identificador neto. Utilizan a los otros dos octetos para identificar cada anfitrión(host). Esto significa que hay 16,384 (214) redes de la clase B con 65,534 (216 -2) anfitriones posibles cada uno para un total de 1,073,741,824 (230) direcciones únicas del IP. Las redes de la clase B totalizan un cuarto de las direcciones disponibles totales del IP y tienen un primer bit con valor de 1 y un segundo bit con valor de 0 en el primer octeto.
  • CLASE  C - Las direcciones de la clase C se utilizan comúnmente para las pequeñas y medianas empresas de tamaño. Las direcciones del IP con un primer octeto a partir del 192 al 223 son parte de esta clase. Las direcciones de la clase C también incluyen a segundos y terceros octetos como parte del identificador neto. Utilizan al último octeto para identificar cada anfitrión. Esto significa que hay 2,097,152 (221) redes de la clase C con 254 (28 -2) anfitriones posibles cada uno para un total de 536,870,912 (229) direcciones únicas del IP. Las redes de la clase C totalizan un octavo de las direcciones disponibles totales del IP. Las redes de la clase C tienen un primer bit con valor de 1, segundo bit con valor de 1 y de un tercer bit con valor de 0 en el primer octeto.
  • CLASE  D - Utilizado para los multicast, la clase D es levemente diferente de las primeras tres clases. Tiene un primer bit con valor de 1, segundo bit con valor de 1, tercer bit con valor de 1 y cuarto bit con valor de 0. Los otros 28 bits se utilizan para identificar el grupo de computadoras al que el mensaje del multicast esta dirigido. La clase D totaliza 1/16avos (268,435,456 o 228) de las direcciones disponibles del IP.
  • CLASE  E - La clase E se utiliza para propósitos experimentales solamente. Como la clase D, es diferente de las primeras tres clases. Tiene un primer bit con valor de 1, segundo bit con valor de 1, tercer bit con valor de 1 y cuarto bit con valor de 1. Los otros 28 bits se utilizan para identificar el grupo de computadoras que el mensaje del multicast esta dirigido. La clase E totaliza 1/16avos (268,435,456 o 228) de las direcciones disponibles del IP.

clasesip

     Hay algunos IPs o rangos de IPs que están restringidos de ser usados como una dirección de IP típica, ya que se reservan para ciertas funciones:

  • Red por defecto (default).- La dirección IP de 0.0.0.0 se utiliza para la red por defecto, es decir, es utilizada por las máquinas cuando están arrancando o no se les ha asignado dirección.
  • Loopback - La dirección IP 127.0.0.1 se utiliza como la dirección del loopback. Esto significa que es utilizada por el ordenador huésped para enviar un mensaje de nuevo a sí mismo. Se utiliza comúnmente para localizar averías y pruebas de la red. El 127 está reservado para pruebas de la tarjeta de red (127.0.0.1).
  • Broadcast- Los mensajes que se dirigen a todas las computadoras en una red se envían como broadcast. Estos mensajes utilizan siempre la dirección IP 255.255.255.255.

Máscara de Red.

     Las direcciones IPs se dividen en dos partes: el nombre de la red y el nombre del host  (jerarquía de dos capas). La parte de red permite identificar a la red. La parte host permite identificar al número de host que pertenece a esa red.

     El Sistema separa las dos partes utilizando la máscara de red. La máscara de red es una cadena de 32 bits (igual que una dirección IP estándar), que tiene contando de izquierda a derecha una serie de tantos 1 como bits definan la Red dentro de la dirección IP y a continuación una serie de 0 hasta completar los 32 bits, que definen la cantidad de Host.

  • RED: 11111111 en binario, 255 en decimal.
  • HOST: 00000000 en binario, 0 en decimal.

     Cada clase de IP tiene una máscara por defecto o natural, según su clase:

     La Dirección de Red (IP Base o Nombre de Red) es la dirección que tiene su parte de host a cero y sirve para definir la red en la que se ubica.  El Sistema diferencia cuál es cual utilizando un AND Lógico:

10101100 . 00010000 . 00001010 . 00110010    = 172 .  16  . 10 . 50
(AND  lógico)
11111111 . 11111111 . 00000000 . 00000000    = 255 . 255 .  0  .  0
---------------------------------------------------------------------
10101100 . 00010000 . 00000000 . 00000000    = 172 . 16  .  0   .  0

     Si el nombre de la red toma los primeros 16 bits, tenemos los 16 bits adicionales para especificar direcciones de host, es decir 65536  (256 * 256) diferentes direcciones IP (0 a 65535), siendo:

  • 172.16.0.0 la primera dirección del rango que es el nombre de la red (la primera dirección del rango) por lo tanto no podemos utilizarla para un Host.
  • 172.16.255.255 la última (todos los bits de host son 1), dirección especial que significa "todos los hosts de la red" o dirección de difusión o broadcast, IP especial y que tampoco puede usarse para un Host.

     Por tanto, siempre tenemos que descartar la primera y última IP de cada red, por lo que generalizando tenemos que:

  • N° de hosts = (2n) - 2    donde n es el número de bits para hosts.
  • N° de direcciones = (2n)    donde n es el número de bits para hosts.

tabla-de-mascaras       Utilizando el esquema de clases definido, cuando una empresa tiene menos de 255 computadoras conectadas en una red, le basta con utilizar una red clase C. Si tuviera 260 computadoras o 1.000, se vería obligada a moverse a una red clase B, en la que por tener 16 bits para hosts, la cantidad de direcciones disponibles es 65536 (incluyendo nombre de red y broadcast). De esta forma se pone en evidencia la desventaja más grande del sistema de redes con clases. En el ejemplo nuestro, la empresa se vería obligada a desperdiciar 65.276 y 64.536 direcciones respectivamente.

     Para resolver este problema se planteó la creación de Subredes (Subnetting).

Subredes (Subnetting).

     El esquema nombre de red + nombre de host se pensó inicialmente para redes sencillas, en las que cada empresa contaba con una sola red y una sola salida a Internet. El crecimiento de las redes empresariales y la necesidad de contar con más de un punto de salida a internet, llevó a un replanteo del esquema de direccionamiento, porque para contar con más de una red las empresas debían desperdiciar muchas direcciones.

     El término Subred, implica dividir la dirección IP en tres capas: nombre de red + nombre de subred + nombre de host.

     En resumen, las subredes se obtienen quitando bits al campo de nombre de host, es decir, que mientras más bits tengamos para nombre de host, más subredes podremos definir. En el caso de las subredes, la cantidad de 1 en la máscara de red no necesariamente debe ser múltiplo de 8.

     Para calcular las subredes se aplica la siguiente fórmula:

  • Para el caso de las subredes: Es 2 elevado a la cantidad de bits (los unos), que se tomaron para crear subredes menos 2: 2[bits de subred] – 2
  • Para el caso de los Hosts: Es 2 elevado a la cantidad restante desde host que quedan (los ceros): 2[bits de hosts] - 2

     El “menos 2” es debido a que se descartan las direcciones de subred y de broadcasts de la red, aplicando estas fórmulas se obtiene las cantidades de subredes y de hosts por subred utilizables.

Ejemplo:

Si partimos de una red clase C del tipo 192.168.0.0, con una máscara de red 255.255.255.0

Contamos con 8 bits para nombres de host. Entonces podemos tomar entre 1 y 6 bits del último byte de la dirección para el nombre de subred. Si tomamos 2 bits nuestra máscara de red queda:

11111111  .  11111111  .  11111111  .  11 000000
    255      .       255      .      255      .      192     

24 bits de nombre de Red + 2 bits para Subredes + 6 bits para hosts

Por cada bit que avancemos sobre el nombre de host, multiplicamos por 2 el número de subredes, y dividimos por 2 la cantidad de direcciones disponibles en cada subred. En el ejemplo anterior, tomamos 2 bits, por lo tanto conseguimos 4 subredes, con 64 direcciones disponibles en cada una (256 del total de hosts de la red dividido 4).

La lista de subredes para el ejemplo sería:

Subred Nombre Subred Rango IPs Broadcast
Primera 192.168.0.0 192.168.0.1 –> 192.168.0.62 192.168.0.63
Segunda 192.168.0.64 192.168.0.65 –> 192.168.0.126 192.168.0.127
Tercera 192.168.0.128 192.168.0.129–> 192.168.0.190 192.168.0.191
Cuarta 192.168.0.192 192.168.0.193 –> 192.168.0.254 192.168.0.255

Se mantiene la convención en la que la primera dirección de la subred es el nombre de la subred, y la última es la dirección de difusión (broadcast).

De todo esto podemos deducir las siguientes relaciones:

Si x es el número de bits que tomamos para definir las subredes, entonces:

No de Subredes = 2x

para el ejemplo: x = 2   =>   Nº de Subredes = 22 = 4

Si n (8 - x) es el número de bits que quedan para nombre de host:

Nº de direcciones de cada subred = 2n

para el ejemplo: n = 6  =>  Nº de direcciones = 26 = 64

Por tanto, teniendo en cuenta que 2 direcciones por cada subred no se destinan a equipos:

Nº de direcciones de equipos = (2n)-2

Para el ejemplo: n = 6  =>  Nº de direcciones de equipos =  (26) – 2  =  62

(por ejemplo para la segunda subred: desde 192.168.0.65 a 192.168.0.126)

ipsubnethostaddressesclassc

1 comentarios:

Anónimo dijo...

Muy buen Blog! te felicito me sirvio de mucha ayuda.
gracias!

Publicar un comentario