Proxy ARP:n selitys

oppitunnin sisältö

Verkko-opiskelijoista useimmat tuntevat ARP:n (Address Resolution Protocol), mutta Proxy ARP ei aina ole tuttu. Tällä oppitunnilla selitän miten proxy ARP toimii, käytämme tähän seuraavaa topologiaa:

Yllä olevassa esimerkissä meillä on kaksi aliverkkoa: 10.1.1.0 /24 ja 10.2.2.0 /24. Keskellä oleva reititin on yhteydessä molempiin aliverkkoihin. Alhaalla näkyy kaksi isäntää (H1 ja H2) ja ylhäällä on palvelin (S1).

Kun katsot isäntiä tarkemmin, näet, että H1:llä on aliverkon peite /24 ja H2:llä /8. Kun H1 yrittää tavoittaa palvelinta osoitteessa 10.2.2.100, tapahtuu seuraavaa:

  1. H1 vertaa IP-osoitettaan ja aliverkkomaskiaan palvelimen IP-osoitteeseen (10.2.2.100) ja päättää, että palvelin on toisessa aliverkossa.
  2. H1 päättää lähettää paketin palvelimelle oletusyhdyskäytävälleen (10.1.1.1.254).
  3. H1 tarkistaa ARP-taulustaan, onko siellä merkintä 10.1.1.254, jos ei ole, se lähettää ARP-pyynnön.
  4. Reititin vastaa ARP-pyyntöön lähettämällä FastEthernet 0/0 -rajapintansa MAC-osoitteen.

Tämä ARP toimii normaalisti näin, kun H2 yrittää lähettää IP-paketin kohti palvelinta tapahtuu jotain muuta:

  1. H2 vertaa IP-osoitettaan ja aliverkon peiteosoitettaan palvelimen IP-osoitteeseen (10.2.2.100) ja päättää, että palvelin on samassa aliverkossa.
  2. H2 tarkistaa ARP-taulustaan, onko siellä merkintää 10.2.2.100, jos ei ole, se lähettää ARP-pyynnön.

Palvelin ei kuitenkaan ole aliverkossa 10.1.1.0 /24 ja reitittimet eivät lähetä broadcast-liikennettä eteenpäin, joten ARP-pyyntö ei koskaan pääse palvelimelle. Kaikki toivo ei kuitenkaan ole menetetty….Tässä kohtaa proxy ARP tulee apuun!

Kun proxy ARP on käytössä reitittimessä, tapahtuu näin:

  1. Reititin näkee ARP-pyynnön H2:lta aliverkossa 10.1.1.0 /24 ja näkee, että kyseessä on ARP-pyyntö jollekin alueelle 10.2.2.0 /24-aliverkossa.
  2. Reititin tajuaa, että se tietää, miten päästä 10.2.2.0 /24-aliverkkoon ja päättää vastata ARP-pyyntöön auttaakseen H2:ta.
  3. Reititin lähettää H2:lle ARP-vastauksen, jossa on sen MAC-osoite FastEthernet 0/0 -liitännän kautta.

Seurasitko minua tähän asti? Näytän sinulle, miltä tämä näyttää oikeassa reitittimessä.

Konfigurointi

Käytän seuraavaa topologiaa havainnollistamaan proxy-ARP:

Se on sama kuin kuvassa, jonka äsken näytin sinulle, mutta käytän laboratoriossani olevia reitittimiä. Poistamalla käytöstä ”ip routing” voin muuttaa reitittimet tavallisiksi host-laitteiksi. Aloitetaan poistamalla reititys käytöstä R1:stä, R2:sta ja palvelimesta:

H1, H2 & S1(config)#no ip routing

Konfiguroidaan oletusyhdyskäytävä näihin laitteisiin:

H1 & H2(config)#ip default-gateway 10.1.1.254
S1(config)#ip default-gateway 10.2.2.254

Konfiguroidaan kaikki tarvitsemamme IP-osoitteet:

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

Huomaa, että käytin tässä kohtaa H2:lla aliverkon maskia /8. Tässä on reititin:

R1(config)#interface FastEthernet 0/0R1(config-if)#ip address 10.1.1.254 255.255.255.0R1(config-if)#interface FastEthernet 0/1R1(config-if)#ip address 10.2.2.254 255.255.255.0

Ei muuta konfigurointia tarvinnut tehdä…todennetaan työmme!

Todentaminen

Testataksemme proxy ARP:tä lähetän ensin hieman liikennettä H1:ltä palvelimelle, jotta näette, miltä normaali ARP näyttää, ja sen jälkeen lähetämme hieman liikennettä H2:ltä palvelimelle.

Proxy ARP on oletusarvoisesti käytössä, kuten näet tästä:

R1#show ip interface FastEthernet 0/0 | include Proxy Proxy ARP is enabled

Katsoakseni reaaliajassa, mitä tapahtuu, käytän seuraavaa debugia R1:ssä:

R1#debug arpARP packet debugging is on

Lähetetään muutamia pingauksia isäntä A:sta palvelimelle:

Vastaa

Sähköpostiosoitettasi ei julkaista.