Indhold af lektionen
De fleste netværksstuderende er bekendt med ARP (Address Resolution Protocol), men Proxy ARP er ikke altid noget, der siger dem noget. I denne lektion vil jeg forklare hvordan proxy ARP virker, vi bruger følgende topologi til dette:
I eksemplet ovenfor har vi to undernet: 10.1.1.1.0 /24 og 10.2.2.2.0 /24. Routeren i midten er forbundet til begge undernet. Nederst ser du to værter (H1 og H2) og øverst har vi en server (S1).
Når du kigger nærmere på værterne kan du se, at H1 har en /24-undernetmaske og H2 har en /8-undernetmaske. Når H1 forsøger at nå serveren på 10.2.2.100 vil følgende ske:
- H1 sammenligner sin IP-adresse og subnetmaske med serverens IP-adresse (10.2.2.2.100) og beslutter, at serveren befinder sig i et andet subnet.
- H1 beslutter at sende pakken til serveren til sin standardgateway (10.1.1.1.254).
- H1 kontrollerer sin ARP-tabel for at se, om der er en post for 10.1.1.254, hvis ikke sender den en ARP-anmodning.
- Routeren svarer på ARP-anmodningen ved at sende MAC-adressen på sin FastEthernet 0/0-grænseflade.
Det er sådan ARP fungerer normalt, når H2 forsøger at sende en IP-pakke mod serveren, vil der ske noget andet:
- H2 sammenligner sin IP-adresse og subnetmaske med serverens IP-adresse (10.2.2.2.100) og beslutter, at serveren er i samme subnet.
- H2 kontrollerer sin ARP-tabel for at se, om der er en post for 10.2.2.2.100. Hvis ikke, sender den en ARP-anmodning.
Serveren befinder sig imidlertid ikke i undernettet 10.1.1.0 /24, og routere videresender ikke broadcast-trafik, så ARP-anmodningen når aldrig frem til serveren. Alt håb er dog ikke ude….det er her proxy ARP kommer til undsætning!
Når proxy ARP er aktiveret på routeren, sker der følgende:
- Routeren ser ARP-anmodningen fra H2 på 10.1.1.1.0 /24-undernettet og ser, at det er en ARP-anmodning om noget i 10.2.2.0 /24-undernettet.
- Routeren indser, at den ved, hvordan den kan nå 10.2.2.2.0 /24-undernettet, og beslutter sig for at besvare ARP-anmodningen for at hjælpe H2.
- Routeren sender et ARP-svar til H2 med dens MAC-adresse på FastEthernet 0/0-grænsefladen.
Er du med indtil videre? Lad mig vise dig, hvordan dette ser ud på en rigtig router.
Konfiguration
Jeg vil bruge følgende topologi til at demonstrere proxy ARP:
Det er det samme som på billedet, som jeg lige har vist dig, men jeg bruger routerne i mit laboratorium. Ved at deaktivere “ip routing” kan jeg gøre routerne til almindelige host enheder. Lad os starte med at deaktivere routing på R1, R2 og serveren:
H1, H2 & S1(config)#no ip routing
Lad os konfigurere standardgatewayen på disse enheder:
H1 & H2(config)#ip default-gateway 10.1.1.254
S1(config)#ip default-gateway 10.2.2.254
Lad os konfigurere alle de IP-adresser, som vi har brug for:
H1(config)#interface fastEthernet 0/0H1(config-if)#ip address 10.1.1.1 255.255.255.0
H2(config)#interface fastEthernet 0/0H2(config-if)#ip address 10.1.1.2 255.0.0.0
S1(config)#interface FastEthernet 0/0S1(config-if)#ip address 10.2.2.100 255.255.255.0
Bemærk, at jeg har brugt /8 subnetmaske på H2 her. Her er routeren:
Det er alt, hvad vi skal konfigurere…lad os verificere vores arbejde!
Verifikation
For at teste proxy ARP vil jeg først sende noget trafik fra H1 til serveren, så du kan se, hvordan normal ARP ser ud, og derefter vil vi sende noget trafik fra H2 til serveren.
Proxy ARP er aktiveret som standard, som du kan se her:
R1#show ip interface FastEthernet 0/0 | include Proxy Proxy ARP is enabled
For at se i realtid, hvad der foregår, vil jeg bruge følgende debug på R1:
R1#debug arpARP packet debugging is on
Lad os sende nogle pings fra vært A til serveren: