Chapter 2. Ethernet

Table of Contents

1. Address Resolution Protocol (ARP)
1.1. Overview of Address Resolution Protocol
1.2. The ARP cache
1.3. ARP Suppression
1.4. The ARP Flux Problem
2. Proxy ARP
3. ARP filtering
4. Connecting to an Ethernet 802.1q VLAN
5. Link Aggregation and High Availability with Bonding
5.1. Link Aggregation
5.2. High Availability

The most common link layer network in use today is Ethernet. Although there are several common speeds of Ethernet devices, they function identically with regard to higher layer protocols. As this documentation focusses on higher layer protocols (IP), some fine distinctions about different types of Ethernet will be overlooked in favor of depicting the uniform manner in which IP networks overlay Ethernets.

Address Resolution Protocol provides the necessary mapping between link layer addresses and IP addresses for machines connected to Ethernets. Linux offers control of ARP requests and replies via several not-well-known /proc interfaces; net/ipv4/conf/$DEV/proxy_arp, net/ipv4/conf/$DEV/medium_id, and net/ipv4/conf/$DEV/hidden. For even finer control of ARP requests than is available in stock kernels, there are kernel and iproute2 patches.

This chapter will introduce the ARP conversation, discuss the ARP cache, a volatile mapping of the reachable IPs and MAC addresses on a segment, examine the ARP flux problem, and explore several ARP filtering and suppression techniques. A section on VLAN technology and channel bonding will round out the chapter on Ethernet.