jueves, 31 de marzo de 2011

NAT


¿Qué es NAT (Network Address Translation)?


NAT (Network Address Translation - Traducción de Dirección de Red) es un mecanismo utilizado por routers IP para intercambiar paquetes entre dos redes que se asignan mutuamente direcciones incompatibles. Consiste en convertir en tiempo real las direcciones utilizadas en los paquetes transportados. También es necesario editar los paquetes para permitir la operación de protocolos que incluyen información de direcciones dentro de la conversación del protocolo.


El uso más común es permitir utilizar direcciones privadas (definidas en el RFC 1918) y aún así proveer conectividad con el resto de Internet. Esto es necesario debido a la progresiva escasez de direcciones provocada por el agotamiento de éstas. Se espera que con el advenimiento de IPv6 no sea necesario continuar con esta práctica.


Un router NAT cambia la dirección origen en cada paquete de salida y, dependiendo del método, también el puerto origen para que sea único. Estas traducciones de dirección se almacenan en una tabla, para recordar qué dirección y puerto le corresponde a cada dispositivo cliente y así saber donde deben regresar los paquetes de respuesta. Si un paquete que intenta ingresar a la red interna no existe en la tabla de traducciones, entonces es descartado. Debido a este comportamiento, se puede definir en la tabla que en un determinado puerto y dirección se pueda acceder a un determinado dispositivo, como por ejemplo un servidor web, lo que se denomina NAT inverso o DNAT (Destinationion NAT).


NAT tiene muchas formas de funcionamiento, entre las que destaca.


Estático


Realiza un mapeo en la que una dirección IP privada se traduce a una correspondiente dirección IP pública de forma unívoca. Normalmente se utiliza cuando un dispositivo necesita ser accesible desde fuera de la red privada.


NAT dinámico


Una dirección IP privada se traduce a un grupo de direcciones públicas. Por ejemplo, si un dispositivo posee la IP 192.168.10.10 puede tomar direcciones de un rango entre la IP 200.85.67.44 y 200.85.67.99. Implementando esta forma de NAT se genera automáticamente un firewall entre la red pública y la privada, ya que sólo se permite la conexión que se origina desde ésta última.


Sobrecarga


La forma más utilizada de NAT proviene del NAT dinámico, ya que toma múltiples direcciones IP privadas y las traduce a una única dirección IP pública utilizando diferentes puertos. Esto se conoce también como PAT (Port Address Translation - Traducción de Direcciones por Puerto), NAT de única dirección o NAT multiplex pública. Así se evita los conflictos de direcciones entre las distintas redes.


Fuente: http://www.adslfaqs.com.ar







¿IPv6 o NAT? IPv4 se acaba


Nadie duda de que las direcciones IPv4 de Internet se están agotando, pero eso no significa que los ISP se actualizarán directamente a IPv6. Otras alternativas están sobre la mesa, como la adopción de NAT de nivel de operador para compatir las escasas direcciones IPv4 entre sus nuevos usuarios.


Mientras que IPv4 utiliza direcciones de 32 bits y puede soportar hasta 4.300 millones de dispositivos conectados directamente a Internet,IPv6 emplea direcciones de 128 bits y admite un número prácticamente ilimitado de dispositivos (2 elevado a 128, en concreto). Y el explosivo crecimiento de Internet y el cambio en los patrones de su uso evidencian que las direcciones IPv4 tienen los días contados.


Según Internet World Stats, el pasado mes de mayo Internet tuvo 1.800 millones de usuarios, muchos de los cuales tenían más de un dispositivo conectado a la Red, un ordenador y un smartphone, por ejemplo.Claramente, los 4.300 millones de direcciones IPv4 no son suficientes y, de acuerdo con las estimaciones de los expertos, podrían agotarse en algún momento de 2011 ó 2012. En el pasado abril, sólo quedaban por asignar el 8% del total de las direcciones IPv4 posibles.


Por tanto, los operadores deben decidir ya que enfoque seguirán para resolver el problema.


Algunos operadores, como Hurricane Electric, NTT America y Verizon, están adoptando IPv6, mientras que otros, como Comcast, están siguiendo una alternativa que supone correr NAT y el nuevo protocolo IP en pilas duales. Comcast está probando el enfoque NAT llamado Dual-Stack Lite para compartir direcciones IPv4 entre múltiples clientes, pero prefiere adoptar IPv6 en la infraestructura Internet. Los tests de Comcast con IPv6 han atraido a más de 5.500 clientes. Aunque, por lo general, la comunidad Internet ha preferido adoptar mecanismos para alargar la vida de las tecnologías más antiguas en vez de actualizarse directamente a otras más nuevas, como Classless Inter-Domain Routing (CIDR) o NAT, en esta ocasión está urgiendo a los ISP y desarrolladores de contenido a adoptar IPv6 rápidamente. Según John Currant, presidente de American Registry for Internet Numbers, si los operadores de websites no se actualizan a IPv6 antes de enero de 2012, corren el riesgo de sufrir degradaciones del rendimiento. Google es uno de los principales defensores de IPv6, junto a otros de la talla de Netflix y Facebook. http://www.networkworld.es/__IPv6-o-NAT__-El-tiempo-de-IPv4-se-acaba-/seccion-actualidad/noticia-95494 Fecha: 07/06/2010

martes, 1 de marzo de 2011

RIP Problemas y Soluciones

RIP - Routing information protocol

RIP es un protocolo de encaminamiento interno, es decir para la parte interna de la red, la que no está conectada al backbone de Internet. Es muy usado en sistemas de conexión a internet como infovia, en el que muchos usuarios se conectan a una red y pueden acceder por lugares distintos.

Cuando un usuarios se conecta el servidor de terminales (equipo en el que finaliza la llamada) avisa con un mensaje RIP al router más cercano advirtiendo de la dirección IP que ahora le pertenece.

Así podemos ver que RIP es un protocolo usado por distintos routers para intercambiar información y así conocer por donde deberían enrutar un paquete para hacer que éste llegue a su destino



PROBLEMAS con RIP?

Aquí las soluciones:

1- Hold - Down (Espera)

Este proceso actúa cuando el protocolo de enrutamiento RIP está en estado activo ya que envía un paquete de datos con toda la información de enrutamiento que sea necesaria, se les conoce como actualizaciones.

Este proceso obliga al enrutador a ignorar la información de una red cuando ha transcurrido cierto tiempo después de recibir un dispositivo que no contesta.

2- Split – Horizon (Horizontes Divididos):

El Split – Horizon reduce la cantidad de información de enrutamiento incorrecta y reduce también el gasto de enrutamiento. En cierta forma elimina el problema de tener que contar hasta el infinito.

3- Poison Reverse (Actualización Inversa):

Este proceso tiene como objetivo principal impedir que se produzcan bucles de enrutamiento más grandes, donde luego envía una actualización inversa para eliminar la ruta y colocarla en espera.

4- Triggered Updates (Actualizaciones inmediatas):

Este proceso consiste en obligar a enviar una actualización de la tabla a todos los “vecinos” cuando haya cualquier modificación en ella.


Referencias:

http://neo.lcc.uma.es/evirtual/cdd/tutorial/red/protocols.

sábado, 12 de febrero de 2011

Saber cómo convertir valores decimales en valores binarios resulta útil al convertir direcciones IP en formato decimal separado por puntos, que resulta legible para los humanos, en formato binario que es legible para las máquinas. Esto generalmente se hace para realizar el cálculo de máscaras de subred y otras tareas. El siguiente es un ejemplo de una dirección IP en formato binario de 32 bits y formato decimal separado por puntos.

Dirección IP binaria: 11000000.10101000.00101101.01111001
Dirección IP decimal: 192.168.45.121

Sistema de numeración binario.

El sistema de numeración binario utiliza sólo dos dígitos, el cero (0) y el uno (1).


En una cifra binaria, cada dígito tiene distinto valor dependiendo de la posición que ocupe. El valor de cada posición es el de una potencia de base 2, elevada a un exponente igual a la posición del dígito menos uno. Se puede observar que, tal y como ocurría con el sistema decimal, la base de la potencia coincide con la cantidad de dígitos utilizados (2) para representar los números.


De acuerdo con estas reglas, el número binario 1011 tiene un valor que se calcula así:


1*23 + 0*22 + 1*21 + 1*20 , es decir:

8 + 0 + 2 + 1 = 11


y para expresar que ambas cifras describen la misma cantidad lo escribimos así:


10112 = 1110



Conversión entre números decimales y binarios


Convertir un número decimal al sistema binario es muy sencillo: basta con realizar divisiones sucesivas por 2 y escribir los restos obtenidos en cada división en orden inverso al que han sido obtenidos.

Por ejemplo, para convertir al sistema binario el número 7710 haremos una serie de divisiones que arrojarán los restos siguientes:


77 : 2 = 38 Resto: 1

38 : 2 = 19 Resto: 0

19 : 2 = 9 Resto: 1

9 : 2 = 4 Resto: 1

4 : 2 = 2 Resto: 0

2 : 2 = 1 Resto: 0

1 : 2 = 0 Resto: 1


y, tomando los restos en orden inverso obtenemos la cifra binaria:


7710 = 10011012




Conversión de binario a decimal

El proceso para convertir un número del sistema binario al decimal es aún más sencillo; basta con desarrollar el número, teniendo en cuenta el valor de cada dígito en su posición, que es el de una potencia de 2, cuyo exponente es 0 en el bit situado más a la derecha, y se incrementa en una unidad según vamos avanzando posiciones hacia la izquierda.

Por ejemplo, para convertir el número binario 10100112 a decimal, lo desarrollamos teniendo en cuenta el valor de cada bit:


1*26 + 0*25 + 1*24 + 0*23 + 0*22 + 1*21 + 1*20 = 83

10100112 = 8310



Sistema de numeración hexadecimal

En el sistema hexadecimal los números se representan con dieciséis símbolos: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E y F. Se utilizan los caracteres A, B, C, D, E y F representando las cantidades decima­les 10, 11, 12, 13, 14 y 15 respectivamente, porque no hay dígitos mayores que 9 en el sistema decimal. El valor de cada uno de estos símbolos depende, como es lógico, de su posición, que se calcula mediante potencias de base 16.

Calculemos, a modo de ejemplo, el valor del número hexadecimal 1A3F16:


1A3F16 = 1*163 + A*162 + 3*161 + F*160


1*4096 + 10*256 + 3*16 + 15*1 = 6719


1A3F16 = 671910


Ensayemos, utilizando la técnica habitual de divisiones sucesivas, la conversión de un número decimal a hexadecimal. Por ejemplo, para convertir a hexadecimal del número173510 será necesario hacer las siguientes divisiones:



1735 : 16 = 108 Resto: 7

108 : 16 = 6 Resto: C es decir, 1210

6 : 16 = 0 Resto: 6

De ahí que, tomando los restos en orden inverso, resolvemos el número en hexadecimal:

173510 = 6C716



Conversión de números binarios a hexadecimales y viceversa


Del mismo modo que hallamos la correspondencia entre números octales y binarios, podemos establecer una equivalencia directa entre cada dígito hexadecimal y cuatro dígitos binarios, como se ve en la siguiente tabla:


DECIMAL

BINARIO

HEXADECIMAL

0

0000

0

1

0001

1

2

0010

2

3

0011

3

4

0100

4

5

0101

5

6

0110

6

7

0111

7

8

1000

8

9

1001

9

10

1010

A

11

1011

B

12

1100

C

13

1101

D

14

1110

E

15

1111

F


La conversión entre números hexadecimales y binarios se realiza "expandiendo" o "con­trayendo" cada dígito hexadecimal a cuatro dígitos binarios. Por ejemplo, para expresar en hexadecimal el número binario 1010011100112 bastará con tomar grupos de cuatro bits, empezando por la derecha, y reemplazarlos por su equivalente hexadecimal:
.

10102 = A16

01112 = 716

00112 = 316


y, por tanto: 1010011100112 = A7316


En caso de que los dígitos binarios no formen grupos completos de cuatro dígitos, se deben añadir ceros a la izquierda hasta completar el último grupo. Por ejemplo:

1011102 = 001011102 = 2E16



La conversión de números hexadecimales a binarios se hace del mismo modo, reemplazando cada dígito hexadecimal por los cuatro bits equivalentes de la tabla. Para convertir a binario, por ejemplo, el número hexadecimal 1F616 hallaremos en la tabla las siguientes equivalencias:


116 = 00012

F16 = 11112

616 = 01102


y, por tanto: 1F616 = 0001111101102


Por: Iván Ch.

Referencias Bibliográficas:

http://platea.pntic.mec.es/~lgonzale/tic/binarios/numeracion.html

Wikipedia

CCNA Exploration