¿Cuáles son las razones para ver un ARP incompleto?

Como se mencionó en esta publicación :

El motivo para ver un ARP incompleto es que «Se envió una solicitud de ARP para esa dirección, pero el host con esa dirección no está funcionando en la LAN, por lo que no hay respuesta»

Entonces, si un conmutador multicapa envía una solicitud ARP a un servidor y no obtiene respuesta, ARP se marcará como incompleto en la tabla ARP del conmutador.

Pero, ¿qué pasa si el servidor envía una solicitud ARP al cambia pero no recibe respuesta? ¿El servidor mostrará ARP incompleto en su tabla ARP y el switch no mostrará ninguna entrada?

Suponiendo que lo anterior sea correcto, podemos decir que si ve la entrada ARP incompleta en un dispositivo local, el problema está con el dispositivo en el otro extremo de la conexión (o cableado)? ¿O hay algunas excepciones?

Comentarios

  • Como señala @RonTrunk, un interruptor es un dispositivo transparente de capa 2 que no sabe ni le importa sobre el direccionamiento de capa 3 (IP), por lo que no ‘ t usa o responde a ARP. El conmutador se puede administrar, por lo que la administración del conmutador es como un host en la red y tiene una interfaz de capa 3 que usa y responde a ARP, pero eso no tiene nada que ver con la función de conmutación, que todavía no sabe nada sobre la capa 3. No ‘ t confunda ARP en dispositivos de capa 3 con la tabla de direcciones MAC de los conmutadores. Mucha gente los confunde.
  • ¿El conmutador actúa como puerta de enlace L3 o simplemente como conmutador L2?
  • @cpt_fink, sí por » switch » Me refiero a un conmutador multicapa (puerta de enlace L3)

Respuesta

Para un conmutador de capa 3, el módulo de capa 3 en el conmutador es un enrutador y funciona como un enrutador, que funciona como cualquier otro host para ARP. Un conmutador de capa 3 sigue siendo principalmente un conmutador de capa 2, y el conmutador de capa 2 todavía actúa como un conmutador de capa 2. Las partes de la capa 3 y la capa 2 de un interruptor de capa 3 están realmente separadas. Las interfaces de capa 3 (tanto las interfaces virtuales como las interfaces físicas configuradas como interfaces de capa 3) usarán una tabla ARP, pero las interfaces de capa 2 usarán una tabla de direcciones MAC.

Cuando un host, incluyendo un enrutador o el módulo de enrutamiento en un conmutador de capa 3, envía una solicitud ARP y no recibe respuesta, marca la entrada de la tabla ARP como incomplete.

Pero, ¿qué pasa si el servidor envía una solicitud ARP al conmutador pero no recibe respuesta? ¿El servidor mostrará ARP incompleto en su tabla ARP y el switch no mostrará ninguna entrada?

Eso depende. Si un host envía una solicitud ARP a otro host, incluido un enrutador, pero aún no ha recibido una respuesta, la entrada de la tabla ARP del host se marcará incomplete para la dirección IPv4 del enrutador.

Lo que el enrutador tiene en su tabla ARP depende de si el enrutador recibió o no la solicitud ARP, y si el enrutador ya tiene una entrada de tabla ARP para el host.

  • Un enrutador con una entrada de tabla ARP existente para el host seguirá teniendo esa entrada hasta que el enrutador la purgue debido a un tiempo de espera. El tiempo de espera no es obligatorio por el RFC, pero el RFC tiene una sección que trata sobre la posibilidad de usar un tiempo de espera para las entradas de la tabla ARP, y la mayoría de los hosts hacen esto:

    Puede ser deseable tener una tabla de envejecimiento y / o tiempos de espera. La implementación de estos está fuera del alcance de este protocolo.

  • Si el enrutador nunca recibió la solicitud ARP, y no tenía entrada para el host, entonces no habrá ninguna entrada en la tabla ARP del enrutador.
  • Si el enrutador recibió la solicitud ARP del host, pero la respuesta al host se perdió, el enrutador tendrá un ARP completo entrada de la tabla para el host.

Para comprender cómo funciona ARP, debe leer RFC 826, una Protocolo de resolución de direcciones Ethernet o conversión de direcciones de protocolo de red a direcciones Ethernet de 48 bits para la transmisión en hardware Ethernet . Recuerde que ARP funciona para IPv4, pero no para IPv6, que tiene ND (Descubrimiento de vecinos) en lugar de ARP.

Respuesta

Se requiere una resolución ARP exitosa para que dos nodos IPv4 se comuniquen en un segmento de capa 2 común (generalmente Ethernet).

Las solicitudes ARP incompletas tienen dos razones básicas.

  1. La solicitud de ARP no ha sido respondida. O el nodo de destino no ha recibido la solicitud ARP o no se ha recibido su respuesta. El nodo de destino puede estar inactivo.

  2. La máscara de red del nodo de origen no está configurada correctamente.El nodo de origen considera todos los destinos dentro de su propia subred local o en el enlace: espera poder hablar con ellos directamente a través de su interfaz Ethernet, sin la ayuda de un enrutador de puerta de enlace.

    Cuando p. Ej. un nodo dentro de la subred 192.168.0.0/24 está configurado incorrectamente con 192.168.0.10/16 considera un destino como 192.168.16.1 local. No intentará usar una puerta de enlace, sino un ARP directo que permanece incompleto.

Ya sea que el nodo de origen o de destino / siguiente salto sea un enrutador, conmutador multicapa o el nodo final no importa.

Respuesta

La tabla ARP del conmutador solo la utiliza la interfaz de gestión del conmutador para el tráfico IP generado por el propio conmutador.

De lo contrario, los conmutadores solo miran la información de la capa 2. No entienden el ARP.

Comentarios

  • sí, me refiero a un conmutador multicapa

Respuesta

Otra posible razón: configuración incorrecta de dhcpcd

Agrego esta respuesta, aunque (probablemente) no está directamente relacionada con la pregunta específica anterior, es relevante en algunos casos

Si la configuración de ip / dhcp estática de un sistema es incorrecta, esto puede aparecer como un efecto secundario indirecto.

En mi caso específico, tenía una máquina Linux que moví ubicaciones y cambié la configuración de la red. ngs para.

Olvidé actualizarlos en /etc/dhcpcd.conf, cuando volví a mover la máquina.

Este es mi dhcpcd.conf

interface eth0 static ip_address=192.168.1.8/24 static routers=192.168.1.254 #static routers=192.168.1.1 static domain_name_servers=127.0.0.1 

Cuando estaba » roto «, tenía la línea static routers=192.168.1.254 comentada, y la línea debajo de #static routers=192.168.1.1 no estaba comentada.

Esto hizo que arp mostrara una entrada no válida (» incompleta «) para la dirección 192.168.1.1.

Aunque moví este sistema hace una semana y luego lo moví hace unos días, no tenía ni idea de lo que estaba mal con eso. Por lo que pude ver, pude conectarlo a mi red local, ssh bien, y no hubo problemas apareciendo con ip addr. traceroute tampoco mostraba información útil, solo sugería que todas las consultas iban a través de un solo salto al » nombre de host de la máquina «. Obviamente, eso no tenía sentido y estaba mal, pero no me dio ninguna indicación sobre cuál era el problema – implicaba que todas las consultas se estaban resolviendo (de alguna manera) en el misma máquina. Por cierto, esta máquina hace DNS.

No está directamente relacionado con la cuestión de OP, pero puede ser muy útil para otras personas que tengan este problema en el futuro, y esta es la única forma que ha encontrado hasta ahora de diagnostíquelo, ya que no hay mucho más que parezca estar mal.

Solo algunas notas sobre cómo diagnostiqué esto

  • Al usar esta máquina como servidor DNS para otras máquinas en el red, esas máquinas no pudieron resolver las solicitudes de DNS externas
  • Podría ssh en el servidor DNS (eso se esperaría ya que su IP está configurada como estática, y el conmutador / enrutador también espera ver una máquina con esto IP estática conectada a la red Ethernet local a través del conmutador).
  • Lo primero que indicó algún problema fue sudo apt update falló. (Dado que se trata de un servidor DNS, no tiene interfaz gráfica y, por lo tanto, aunque ejecutar algo como un navegador web habría indicado este problema mucho antes, o desde el icono de la bandeja del escritorio de red, no tiene ninguna de esas cosas).
  • ping 8.8.8.8 también estaba fallando, sin embargo, ssh y hacer ping a las máquinas locales estaban bien
  • Revisé /etc/network/interfaces[.d] sin embargo, todos los archivos en estos directorios estaban en blanco / configurados en los valores predeterminados, ya que el software DNS los administra
  • No hubo errores / advertencias en el software DNS al conectarse al servidor DNS a través de la interfaz web proporcionada
  • Empecé a comprobar cosas como ip addr (sin problemas) y arp. Ya dije traceroute no indicó cuál podría ser el problema, pero sí indicó que estaba sucediendo algo extraño.
  • La búsqueda de motivos por los que arp podría tener una entrada incompleta me guió por las líneas correctas
  • Encontré esta pregunta ( https://serverfault.com/questions/765380/when-do-stale-arp-entries-become-failed-when-never-used ) y comencé a buscar cómo eliminar las entradas arp
  • Elimino la entrada con arp -d 192.168.1.1
  • Sin embargo, siguió regresando
  • Intenté conectarme a 192.168.1.1 en mi red local desde otra máquina, sin embargo, no me sorprendió no poder hacer esto o hacer ping porque no hay máquinas en mi red con esta dirección
  • Por lo general, esta dirección sería la dirección de su puerta de enlace / un enrutador ISP en aplicaciones domésticas
  • Esto me recordó que había configurado un adaptador de red en la otra ubicación para tener la dirección 192.168.1.1, y que la computadora que estaba conectada a esta dirección se estaba utilizando como un enrutador para conectar las redes 192.168.0.X y 192.168.1.X
  • La ubicación original está en la red 192.168.1.X, la ubicación a la que me mudé estaba en 192.168.0.X
  • Dado que la mayoría de 192.168.1.X/24 Las redes usan 192.168.1.1 como puerta de enlace predeterminada, al ver que esta IP no despertó sospechas inicialmente y no parecía » raro » por cualquier motivo
  • Sin embargo, cambié la puerta de enlace predeterminada en dhcpcd.conf como se describió anteriormente y el problema se resolvió
  • Lección aprendida, al crear una red extraña de computadora a computadora fuera del sitio temporalmente, asigne al adaptador del enrutador / NIC una IP estática extraña como 192.168.1.50 – eso podría ayudar a recordarse a uno mismo o indicar que algo fuera de lo común está configurado en un archivo de configuración en algún lugar

Comentarios

  • Desafortunadamente, las configuraciones de host / servidor están fuera de tema aquí, pero se pueden manejar en Server Fault para una empresa s red.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *