arp(7) Miscellaneous Information Manual arp(7) arp - Linux ARP Address Resolution Protocol ( ), RFC 826. (Layer2) IPv4 . , , -- . ARP packet(7). , ARP netlink(7). ARP ioctl (2) AF_INET. ARP . , . , , . , ioctl-. /proc, . (. /proc ) (positive feedback) , . , , TCP ACK. , MSG_CONFIRM sendmsg(2). , ARP . MAC- arp app_solicit . , MAC- , ucast_solicit . , ARP-. . Linux proxy arp, , proxy arp . (reject route) proxy arp . ioctl AF_INET ioctl-. struct arpreq. struct arpreq { struct sockaddr arp_pa; /* */ struct sockaddr arp_ha; /* */ int arp_flags; /* */ struct sockaddr arp_netmask; /* */ char arp_dev[16]; }; SIOCSARP, SIOCDARP and SIOCGARP respectively set, delete, and get an ARP mapping. Setting and deleting ARP maps are privileged operations and may be performed only by a process with the CAP_NET_ADMIN capability or an effective UID of 0. arp_pa AF_INET, arp_ha , , arp_dev. arp_dev -- , . +------------------------------------------------------------------------------------+ | arp_flags | +----------------+-------------------------------------------------------------------+ | | | +----------------+-------------------------------------------------------------------+ |ATF_COM | | +----------------+-------------------------------------------------------------------+ |ATF_PERM | | +----------------+-------------------------------------------------------------------+ |ATF_PUBL | | +----------------+-------------------------------------------------------------------+ |ATF_USETRAILERS | | +----------------+-------------------------------------------------------------------+ |ATF_NETMASK | | +----------------+-------------------------------------------------------------------+ |ATF_DONTPUB | | +----------------+-------------------------------------------------------------------+ ATF_NETMASK, arp_netmask. Linux 2.2 proxy ARP, proxy arp 0xffffffff 0. ATF_USETRAILERS . /proc ARP /proc . /proc/sys/net/ipv4/neigh/*/*. /proc/sys/net/ipv4/neigh/. <> . , , . anycast_delay ( Linux 2.2) (jiffies) (neighbor solicitation message) IPv6. anycast . -- 1 . app_solicit ( Linux 2.2) (netlink) ARP- (. mcast_solicit). -- 0. base_reachable_time ( Linux 2.2) , base_reachable_time/2 3*base_reachable_time/2 . , . -- 30 . base_reachable_time_ms ( Linux 2.6.12) , base_reachable_time, . -- 30000 . delay_first_probe_time ( Linux 2.2) , . -- 5 . gc_interval ( Linux 2.2) . -- 30 . gc_stale_time ( Linux 2.2) . , , , . -- 60 . gc_thresh1 ( Linux 2.2) , ARP. , . -- 128. gc_thresh2 ( Linux 2.2) ARP. , 5 , . -- 512. gc_thresh3 ( Linux 2.2) ARP. , . -- 1024. locktime ( Linux 2.2) . ( , - ). -- 1 . mcast_solicit ( Linux 2.2) / . , . -- 3. proxy_delay ( Linux 2.2) proxy_delay ARP- proxy ARP- . . -- 0.8 . proxy_qlen ( Linux 2.2) proxy ARP, . -- 64. retrans_time ( Linux 2.2) . -- 1 . , retrans_time_ms. retrans_time_ms ( Linux 2.6.12) . -- 1000 . ucast_solicit ( Linux 2.2) ARP (. app_solicit). -- 3. unres_qlen ( Linux 2.2) , . -- 3. Linux 2.0 struct arpreq arp_dev ioctl. ioctl Linux 2.2. proxy arp ( 0xffffffff) Linux 2.2. ( proxy arp). neigh/* Linux 2.2. , ; time(7). . , , , ARP-, ndisc MAC-. (, NFS UDP). IPv4, IPv4 IPv6. . capabilities(7), ip(7), arpd(8) ARP RFC 826. IPv6 RFC 2461. Linux 2.2+ IPv4 ARP IPv6 ( ). Dmitry Bolkhovskikh Yuri Kozlov ; GNU 3 , . . , , . Linux man-pages 6.06 31 2023 . arp(7)