.\" -*- coding: UTF-8 -*- .\" This man page is Copyright (C) 1999 Matthew Wilcox . .\" %%%LICENSE_START(VERBATIM_ONE_PARA) .\" Permission is granted to distribute possibly modified copies .\" of this page provided the header is included verbatim, .\" and in case of nontrivial modification author and date .\" of the modification is added to the header. .\" %%%LICENSE_END .\" .\" Modified June 1999 Andi Kleen .\" $Id: arp.7,v 1.10 2000/04/27 19:31:38 ak Exp $ .\" .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH ARP 7 "13 Agosto 2020" Linux "Manual del Programador de Linux" .SH NOMBRE arp \- Módulo ARP del núcleo de Linux. .SH DESCRIPCIÓN Este módulo de protocolo del núcleo implementa el protocolo de resolución de direcciones (Address Resolution Protocol, ARP) definido en RFC\ 826. Se usa para convertir direcciones hardware de la Capa 2 a direcciones del protocolo IPv4 y viceversa, en redes conectadas directamente. El usuario normalmente no interactúa directamente con este módulo salvo para configurarlo. En cambio, proporciona un servicio para otros protocolos dentro del núcleo. .PP Un proceso de usuario puede recibir paquetes ARP usando conectores \fBpacket\fP(7). También existe un mecanismo para gestionar la cache ARP en el espacio de usuario usando conectores \fBnetlink\fP(7). La tabla ARP también se puede controlar aplicando la llamada \fBioctl\fP(2) a cualquier conector \fBAF_INET\fP. .PP El módulo ARP mantiene una cache de asociaciones entre direcciones hardware y direcciones de protocolo. La cache tiene un tamaño limitado por lo que las entradas antiguas y menos frecuentemente usadas son eliminadas por una suerte de limpiador. Las entradas marcadas como permanentes nunca son eliminadas por dicho limpiador. La caché se puede manipular directamente mediante ioctls y su comportamiento se puede ajustar mediante la interfaz \fI/proc\fP definida más adelante. .PP Una entrada de la cache de equipos próximos se considerará caducada cuando no exista una retroalimentación positiva después de algún tiempo (consulte \fI/proc\fP más adelante). Dicha retroalimentación positiva puede ser obtenida de una capa superior; por ejemplo de una confirmación positiva (ACK) de TCP. Otros protocolos pueden señalizar la progresión del reenvío usando la opción \fBMSG_CONFIRM\fP en \fBsendmsg\fP(2). Cuando no hay progresión de reenvío ARP vuelve a intentarlo. Primero intenta consultar a un proceso arp local \fBapp_solicit\fP veces. Si esto falla y se conoce la antigua dirección MAC, se envía un sondeo unidestino durante \fBucast_solicit\fP veces. Si esto también falla, se realizará la difusión de una nueva petición ARP a la red. Las peticiones sólo se envían cuando hay datos en cola para ser enviados. .PP Linux automáticamente añadirá una entrada proxy arp no permanente cuando reciba una petición de una dirección a la que él reenvía y cuando el proxy arp esté activo en la interfaz receptora. Cuando existe una ruta de rechazo para un destino, no se añade ninguna entrada arp. .SS Ioctls Existen tres ioctls disponibles en todos los conectores \fBAF_INET\fP. Toman un puntero a una estructura \fBstruct arpreq\fP como argumento. .PP .in +4n .EX struct arpreq { struct sockaddr arp_pa; /* dirección del protocolo */ struct sockaddr arp_ha; /* diección de hardware */ int arp_flags; /* opciones */ struct sockaddr arp_netmask; /* máscara de red o dir. de protocolo */ char arp_dev[16]; }; .EE .in .PP \fBSIOCSARP\fP, \fBSIOCDARP\fP y \fBSIOCGARP\fP establecen, borran u obtienen una asociación ARP, respectivamente.Establecer y borrar asociaciones ARP son operaciones privilegiadas y sólo pueden ser realizadas por un proceso con la capacidad \fBCAP_NET_ADMIN\fP o con un UID efectivo 0. .PP \fIarp_pa\fP debe ser un conector \fBAF_INET\fP y \fIarp_ha\fP debe tener el mismo tipo que el dispositivo que se define en \fIarp_dev\fP. \fIarp_dev\fP es una cadena terminada en cero que da nombre a un dispositivo. .RS .TS tab(:) allbox; c s l l. \fIarp_flags\fP flag:Significado ATF_COM:Búsqueda completa ATF_PERM:Entrada permanente ATF_PUBL:Publicar entrada ATF_USETRAILERS:Son necesarios terminadores ATF_NETMASK:Usar una máscara de red ATF_DONTPUB:No responder .TE .RE .PP Si se activa la bandera \fBATF_NETMASK\fP, \fIarp_netmask\fP debe ser válida. La versión 2.2 de Linux no soporta entradas de proxy arp de red, por lo que debería asignar a \fIarp_netmask\fP el valor 0xffffffff o 0 para eliminar una entrada proxy arp existente. La opción \fBATF_USETRAILERS\fP está obsoleta y no debería usarse. .SS "Interfaces /proc" El módulo ARP implementa un intervalo de interfaces \fI/proc\fP configurar parámetros globales o específicos de una interfaz. Se puede acceder a esto leyendo o escribiendo los ficheros \fB/proc/sys/net/ipv4/neigh/*/*\fP. Cada interfaz del sistema tiene su propio directorio en \fI/proc/sys/net/ipv4/neigh/\fP. La configuración del directorio 'por defecto' se usa para todos los dispositivos recién creados. A menos que se indique otra cosa, las interfaces relacionadas con el tiempo se especifican en segundos. .TP \fIanycast_delay\fP (desde Linux 2.2) .\" Precisely: 2.1.79 Número máximo de unidades de tiempo (jiffies) a esperar antes de contestar a un mensaje IPv6 de solicitud de equipos próximos. El soporte "cualquier dirección" (anycast) todavía no está implementado. El valor por defecto es de 1 segundo. .TP \fIapp_solicit\fP (desde Linux 2.2) .\" Precisely: 2.1.79 El número máximo de sondeos a enviar a un demonio ARP en el espacio de usuario mediante netlink antes de recurrir a sondeos multidestino (vea \fImcast_solicit\fP). Por defecto es 0. .TP \fIbase_reachable_time\fP (desde Linux 2.2) .\" Precisely: 2.1.79 Una vez que se ha encontrado un equipo próximo, la entrada se considera válida durante, al menos, un valor aleatorio entre \fIbase_reachable_time\fP/2 y 3*\fIbase_reachable_time\fP/2. La validez de una entrada se ampliará si recibe retroalimentación positiva desde los protocolos de los niveles más altos. El valor por defecto es de 30 segundos. Este archivo está obsoleto, actualmente se usa \fIbase_reachable_time_ms\fP. .TP \fIbase_reachable_time_ms\fP (desde Linux 2.6.12) Igual que para \fIbase_reachable_time\fP, pero midiendo el tiempo en milisegundos. Por defecto toma 30000 milisegundos. .TP \fIdelay_first_probe_time\fP (desde Linux 2.2) .\" Precisely: 2.1.79 Tiempo de espera antes del primer sondeo después de que se haya decidido que un equipo ya no está activo en la red. Por defecto es 5 segundos. .TP \fIgc_interval\fP (desde Linux 2.2) .\" Precisely: 2.1.79 Periodo con el que el limpiador para las entradas de equipos próximos debería intentar ejecutarse. Por defecto es de 30 segundos. .TP \fIgc_stale_time\fP (desde Linux 2.2) .\" Precisely: 2.1.79 Determina la frecuencia con la que se comprueban las entradas en busca de equipos próximos que ya no están. Cuando se considera que un equipo vecino ya no está en la red, se resuelve de nuevo antes de enviarle datos. El valor por defecto es de 60 segundos. .TP \fIgc_thresh1\fP (desde Linux 2.2) .\" Precisely: 2.1.79 Número mínimo de entradas a guardar en la cache ARP. El recolector de basura no se ejecutará si hay menos entradas en la cache que el número indicado. Por defecto vale 128. .TP \fIgc_thresh2\fP (desde Linux 2.2) .\" Precisely: 2.1.79 Número máximo flexible de entradas a guardar en la cache ARP. El recolector de basura permitirá que el número de entradas exceda éste límite durante 5 segundos antes de realizar una recolección. El valor por defecto es de 512 entradas. .TP \fIgc_thresh3\fP (desde Linux 2.2) .\" Precisely: 2.1.79 Número máximo estricto de entradas a guardar en la cache ARP. El recolector de basura se ejecutará siempre si hay más entradas en la caché que el número indicado. Por defecto vale 1024. .TP \fIlocktime\fP (desde Linux 2.2) .\" Precisely: 2.1.79 Número mínimo de unidades de tiempo que debe permanecer una entrada ARP en la cache. Esto evita la modificación continua de la cache ARP si hay más de una asociación potencial (debido, generalmente, a una mala configuración de la red). Por defecto es 1 segundo. .TP \fImcast_solicit\fP (desde Linux 2.2) .\" Precisely: 2.1.79 Número máximo de intentos para resolver una dirección mediante multidestino/difusión antes de marcar la entrada como inalcanzable. El valor por defecto es 3. .TP \fIproxy_delay\fP (desde Linux 2.2) .\" Precisely: 2.1.79 Cuando se recibe una solicitud ARP para una dirección proxy\-ARP conocida, esperar hasta \fIproxy_delay\fP unidades de tiempo antes de responder. Esto se utiliza para evitar inundar la red en algunos casos. Por defecto vale 0,8 segundos. .TP \fIproxy_qlen\fP (desde Linux 2.2) .\" Precisely: 2.1.79 Número máximo de paquetes que se pueden encolar para direcciones proxy\-ARP. Por defecto vale 64. .TP \fIretrans_time\fP (desde Linux 2.2) .\" Precisely: 2.1.79 Número de unidades de tiempo a esperar antes de retransmitir una petición. El valor por defecto es 1 segundo. Este archivo está obsoleto, actualmentes se usa \fIretrans_time_ms\fP. .TP \fIretrans_time_ms\fP (desde Linux 2.6.12) Número de unidades de milisegundos a esperar antes de retransmitir una petición. El valor por defecto es 1 segundo. .TP \fIucast_solicit\fP (desde Linux 2.2) .\" Precisely: 2.1.79 Número máximo de intentos para enviar sondeos unidestino antes de preguntar al demonio ARP (vea \fIapp_solicit\fP). Por defecto es 3. .TP \fIunres_qlen\fP (desde Linux 2.2) .\" Precisely: 2.1.79 Número máximo de paquetes que otras capas de red pueden encolar para cada dirección sin resolver. Por defecto vale 3. .SH VERSIONES La estructura \fIstruct arpreq\fP cambió en la versión 2.0 de Linux para incluir el miembro \fIarp_dev\fP y los números de las ioctls cambiaron a la misma vez. El soporte para las antiguas ioctls se eliminó en la versión 2.2 de Linux. .PP El soporte para entradas proxy arp de red (máscara de red distinta de 0xffffffff) se eliminó en la versión 2.2 de Linux. Se reemplazó por una configuración proxy arp automática realizada por el núcleo para todos los anfitriones (hosts) alcanzables a través de otras interfaces (cuando están activos el reenvío y el proxy arp en la interfaz). .PP Las interfaces del tipo \fIneigh/*\fP no existían en versiones de Linux anteriores a la 2.2. .SH ERRORES Algunos valores del cronómetro se especifican en unidades de tiempo (jiffies), cuyo valor dependen de la arquitectura y de la versión del núcleo. Consulte \fBtime\fP(7). .PP No hay forma de indicar una retroalimentación positiva desde el espacio de usuario. Esto significa que los protocolos orientados a conexión implementados en el espacio de usuario generarán un tráfico ARP excesivo, debido a que \fIndisc\fP volverá regularmente a sondear las direcciones MAC. El mismo problema es aplicable a algunos protocolos del núcleo (p.e. NFS sobre UDP). .PP Esta página de manual mezcla funcionalidad específica de IPv4 y compartida entre IPv4 e IPv6. .SH "VÉASE TAMBIÉN" \fBcapabilities\fP(7), \fBip\fP(7), \fBarpd\fP(8) .PP RFC\ 826 para una descripción de ARP. RFC\ 2461 para una descripción del descubrimiento de equipos de IPv6 y los algoritmos base utilizados. La implementación IPv4 ARP de Linux 2.2+ usa los algoritmos IPv6 cuando éstos son aplicables. .SH COLOFÓN Esta página es parte de la versión 5.10 del proyecto Linux \fIman\-pages\fP. Puede encontrar una descripción del proyecto, información sobre cómo informar errores y la última versión de esta página en \%https://www.kernel.org/doc/man\-pages/. .SH TRADUCCIÓN La traducción al español de esta página del manual fue creada por Juan Piernas y Marcos Fouces . Esta traducción es documentación libre; lea la .UR https://www.gnu.org/licenses/gpl-3.0.html GNU General Public License Version 3 .UE o posterior con respecto a las condiciones de copyright. No existe NINGUNA RESPONSABILIDAD. Si encuentra algún error en la traducción de esta página del manual, envíe un correo electrónico a .MT debian-l10n-spanish@lists.debian.org>. .ME .