classful och classless routing

Classful routing innebär att nätmasken kan räknas ut genom att kontrollera den första byten och sedan den andra och tredje byte. Detta är anledningen varför nätmasken inte inkluderas i routing-informations uppdateringar mellan routrar.

Routing protokoll, såsom RIPv1 behövde bara använda nätverksadressen och inte inkludera nätmasken i sina routing uppdateringar. Mottagande routern kunde avgöra nätmasken genom att undersöka värdet på den första byten i nätverksadressen. Exempelvis en klass A IP adress har för nätmask 255.0.0.0, klass B 255.255.0.0 och klass C 255.255.255.0

Uppdatering från R1

ccna2-96pic-classful-addressing-exempel

I exemplet ovan vet router R1 att delnät 172.16.1.0 tillhör samma större classful nätverk som utgående gränssnittet, 172.16.2.0. Därför skickar den en RIP uppdatering som innehåller delnät 172.16.1.0 till router R2 . När router R2 får uppdateringen tillämpar den på mottagande gränssnitts nätmask /24 och lägger IP-adressen 172.16.1.0 till routing tabellen.

Uppdatering från R2

ccna2-97pic-classful-addressing-exempel
När uppdateringar skickas till router R3 summerar/aggregerar router R2 alla delnät 172.16.1.0/24. 172.16.2.0/24, och 172.16.3.0/24 till ett classful nätverk 172.16.0.0. Eftersom routern R3 inte har några delnät som tillhör till det summerat nätverket 172.16.0.0, kommer router R3 att tillämpa den classful mask för en klass B-nätverk, /16.

Classless routing

Under året 1992 insåg medlemmar i IETF (Internet Engineering Task Force) att den exponentiella tillväxten av Internet skulle kräva akuta lösningar. En grundläggande orsak till detta var bristen på flexibilitet i classful IP-adressering. Ingen klass kunde anpassas för medelstora organisationer som behövde tusentals IP-adresser men inte flera tusentals.
År 1993 införde IETF Classless Inter-Domain Routing, eller CIDR (RFC 1517).

CIDR möjliggjorde:

  • Effektivare användning av IPv4-adresser
  • Prefix aggregering, vilket minskade storleken på routing tabeller

Till CIDR-kompatibla routrar är classful adresser meningslösa. Nätverks delen av adressen bestäms av nätmasken, även känd som nätverksprefix eller bara prefixlängd (/8, /19, etc.). Det medför att nätverksadressen bestäms inte längre av klasserna.

Internetleverantörer kan nu mer effektivt allokera IP adresser och deras prefixlängden, som börjar med /8 eller större (/8, /9, /10, etc). Det resulterar att anpassade block av IP-adresser kan tilldelas till organisationer/nätverk baserat på deras önskemål, allt från några till hundratals eller tusentals datorer.

Classless routing protokoll såsom RIPv2, EIGRP, OSPF, IS-IS och BGP inkluderar nätmasken med nätverksadressen i sina routing uppdateringar. Classless routing protokoll är nödvändiga när masken inte kan antas eller bestämmas av värdet hos den första oktetten.

Till exempel kan näten 172.16.0.0/16, 172.17.0.0/16, 172.18.0.0/16 och 172.19.0.0/16 aggregeras som 172.16.0.0/14.

ccna2-99pic-classless-routing-protocol

Om router R2 sänder den aggregerad adressen 172.16.0.0 utan /14 mask tillämpar router R3 standard classful mask /16. I en classful routing protokoll scenario är router R3 omedveten om de 172.17.0.0/16, 172.18.0.0/16 och 172.19.0.0/16 nätverk.

Classful routing protokoll kan inte hantera SUPERNET vägar eftersom den mottagande routern kommer att tillämpa standard classful till nätverksadress i routing uppdateringen. Om exemplet ovan innehöll en classful routing protokoll , då routern R3 skulle bara installera 172.16.0.0/16 i routing tabellen.

Obs: När en SUPERNET väg är i en routing tabell, till exempel, som en statisk väg, en classful routing protokoll kommer inte att inkludera den vägen i sina uppdateringar.

Med ett classless routing protokoll kommer routern R2 annonsera 172.16.0.0 nätverket tillsammans med /14 masken till router R3. Denna router kommer då att kunna installera SUPERNET väg 172.16.0.0/14 i sin routing tabell och då blir nätverken 172.16.0.0/16, 172.17.0.0/16, 172.18.0.0/16 och 172.19.0.0/16 tillgängliga.