¿Cómo asignan los enrutadores las direcciones IP?

14

¿Cómo asigna un enrutador una dirección IP? ¿Es esto aleatorio o hay un método establecido?

Parece que el mismo dispositivo, independientemente de la hora en que estuvo conectado, parece tener la misma IP asignada. ¿El enrutador conoce la dirección MAC y asigna la misma IP o hay algo más?

agz
fuente
¿Una ip en una red o tu propia PC personal?
Christopher Chipps
si tiene el tiempo y le interesa aprenderlo en profundidad, eche un
Lorenzo Von Matterhorn

Respuestas:

13

Las direcciones IPv4 generalmente se asignan usando el protocolo DHCP. Cómo sucede esto, depende del servidor DHCP particular que se ejecuta en el enrutador ...

  • Con DHCP, las direcciones se arriendan por un cierto período de tiempo, por lo que si un dispositivo se reinicia solicita una dirección antes de que expire el contrato de arrendamiento anterior, el enrutador generalmente proporciona la misma dirección anterior (basada en la identificación del cliente DHCP o en la dirección MAC).

  • Algunos servidores DHCP recuerdan qué dirección se emitió incluso durante un tiempo después de que expire el contrato de arrendamiento, por lo que siempre dan la misma dirección al mismo dispositivo.

  • Si el dispositivo no se vio anteriormente, depende de la implementación; por lo general, la nueva dirección se elige al azar, pero a veces de forma secuencial y, a veces, en función de algún tipo de hash en la dirección MAC para que el enrutador al menos intente proporcionar antigua dirección de nuevo.

Por ejemplo, para citar la página dhcpd.conf(5)del manual del servidor DHCP de ISC dhcpd :

El servidor DHCP genera la lista de direcciones IP disponibles desde un
tabla de picadillo. Esto significa que las direcciones no están ordenadas de ninguna manera.
orden ticular, por lo que no es posible predecir el orden en que
el servidor DHCP asignará direcciones IP. Usuarios de versiones anteriores
del servidor DHCP de ISC puede haberse acostumbrado al servidor DHCP
asignar direcciones IP en orden ascendente, pero esto ya no es pos‐
sible, y no hay forma de configurar este comportamiento con la versión 3 de
el servidor ISC DHCP.

Para IPv6, existe un protocolo similar DHCPv6, al que todavía se aplica la respuesta anterior.

Sin embargo, muchas redes utilizan un protocolo más simple de "autoconfiguración sin estado" en el que el enrutador solo transmite el prefijo (también conocido como dirección de red) y los dispositivos asignan sus propias direcciones IP. La asignación se realiza de dos maneras:

  • Con la "configuración automática sin estado" normal ( RFC 4862 ), la parte 'host' de las direcciones IP se basa en la dirección de hardware del dispositivo . Para las direcciones MAC de 48 bits, el segundo bit se voltea y ff:fese inserta en el medio (para rellenar hasta 64 bits)

    Por ejemplo, el prefijo 2001:470:1f0b:915::/64más la dirección MAC 48:5d:60:e8:65:8fda como resultado la dirección IP .2001:470:1f0b:915:4a5d:60ff:fee8:658f

  • Con "Extensiones de privacidad" ( RFC 4941 ), la parte 'host' se elige al azar , y también se agrega una nueva dirección cada 10 horas.

    Tenga en cuenta que las "Extensiones de privacidad" casi siempre se usan además de la dirección IP normal "sin estado" basada en MAC.

usuario1686
fuente
Menciona IPv4, ¿hay alguna diferencia con IPv6?
agz
@agovizer: Sí, actualicé la respuesta.
user1686
Si es simplemente un hash, ¿no se aplicaría una sola dirección IP a más de un host?
Pacerier
@Pacerier: depende de qué tan bien diseñado esté el hash, cuántas direcciones IP puede elegir, etc. También tenga en cuenta que dije "intenta". Si la dirección IP resultante ya está en uso, el enrutador podría asignar otra.
user1686
En el caso de una red Ad hoc, ¿cómo se asignan las direcciones IP? Como no hay servidor central.
pathe.kiran
4

Generalmente (para IPV4), el sistema utilizado se llama "DHCP" y funciona, en términos generales, de la siguiente manera.

  • El enrutador ejecuta un "servidor DHCP", que tiene una tabla con IP que se puede utilizar.
  • Cada computadora realiza una solicitud de DHCP, que es básicamente un paquete (con su dirección MAC) enviado a la red que dice "¿Qué IP puedo tener?"
  • El enrutador mira el paquete recibido y dice que aquí está su dirección IP, puerta de enlace, servidor DNS [y cualquier otra cosa]
  • La computadora luego se configura a sí misma.

La tabla del servidor DHCP puede utilizar la dirección MAC para asegurarse de que la máquina obtenga la misma dirección IP, si está disponible cada vez.

davidgo
fuente
4

Creo que es importante señalar que los enrutadores no asignan direcciones IP : los enrutadores reciben un paquete IP en una interfaz y lo envían casi sin cambios en otra interfaz (los cambios que se me ocurren están disminuyendo el TTL y actualizando la suma de comprobación de la IP paquete; incluso cambiar la dirección IP en el paquete (NAT) está más allá de la tarea de un enrutador).

Los dispositivos que se llaman enrutadores domésticos son mucho más que enrutadores, también incluyen algunas de las siguientes funcionalidades / servicios:

  • Servidor DHCP (este es el servicio que asigna direcciones IP),
  • Módem ADSL (para negociar una conexión con el ISP),
  • Cortafuegos (para filtrar conexiones entrantes y salientes),
  • Dispositivo NAT entrante y saliente (para compartir la única dirección IPv4 asignada por el ISP para todos los dispositivos en la red doméstica),
  • Enrutador,
  • Cambiar,
  • Antena WiFi
  • Servidor web,
  • Consola (web, ssh o telnet) para configurar el dispositivo,
  • Otros...

(Nota: los cortafuegos generalmente pueden hacer NAT entrante y saliente y enrutamiento, aunque esas 4 funciones se pueden hacer usando dispositivos dedicados).

En una implementación empresarial grande, el servidor DHCP a menudo se aloja en servidores dedicados de Linux o Windows (generalmente un clúster) que no tiene nada que ver con los enrutadores.

jfg956
fuente