Skip to Content
Understanding Linux Network Internals
book

Understanding Linux Network Internals

by Christian Benvenuti
December 2005
Intermediate to advanced
1066 pages
33h 38m
English
O'Reilly Media, Inc.
Content preview from Understanding Linux Network Internals

Chapter 28. Neighboring Subsystem: Address Resolution Protocol (ARP)

Chapter 27 described the services provided by the infrastructure common to all neighboring protocols. This chapter will show how ARP, the protocol used by IPv4, fits into the modular design of the infrastructure. Readers familiar with ARP may have seen the outlines of its behavior in the description of the general neighboring subsystem in the previous chapters, although the nomenclature used to describe the subsystem is drawn more from IPv6's ND protocol than from ARP.

The presence of a common infrastructure makes the design and implementation of ARP simpler. To cover ARP in this chapter, we look at the following points:

  • How the neigh_table structure arp_tbl is initialized to tune the behavior of the common neighboring infrastructure for ARP

  • How the neigh_parms structure is initialized to tune the behavior of the common neighboring infrastructure for ARP (e.g., to set timer expiration periods)

  • How the reception of ARP packets (i.e., ARPOP_REQUEST/ARPOP_REPLY) interacts with the neighboring subsystem, and how the solicit method works

  • How the neigh_ops structure is initialized depending on the device type and the type of L3 address (unicast, multicast, or broadcast)

  • How proxy ARP uses the common infrastructure

  • How the behavior of ARP can be further tailored by means of compile options and the explicit configuration of special features

  • How the kernel can hand some work over to a user-space daemon, arpd, to handle a particularly ...

Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

Linux Fundamentals

Linux Fundamentals

Sander van Vugt
Linux Kernel Debugging

Linux Kernel Debugging

Kaiwan N. Billimoria
Linux Observability with BPF

Linux Observability with BPF

David Calavera, Lorenzo Fontana

Publisher Resources

ISBN: 0596002556Errata Page