Sybex
Cisco CCNA Reader
Datacom ICT3/4 H1 – Internetwerken H3 – Internet-protocollen H4 – Introductie tot het Cisco IOS H5 – IP-routeren Appendix A Inleiding tot het Cisco IOS Praktijkoefeningen
Hoofdstuk
1
Internetwerken DIT HOOFDSTUK BEHANDELT ONDER MEER DE VOLGENDE CCNA EXAMENONDERWERPEN: ✓ OSI-referentiemodel & communicatie in lagen •
Beschrijven van data link en netwerkadressen en aangeven van de belangrijkste verschillen.
•
Definiëren en beschrijven van de functies van het MACadres.
•
Opsommen van de belangrijkste internetwerkfuncties van het OSI-netwerklaagmodel.
•
Aangeven van minimaal drie redenen waarom de industrie gebruikmaakt van een gelaagd model.
•
Definiëren en uitleggen van de vijf conversiestappen van gegevensinkapseling (encapsulation).
•
Beschrijven van verbindinggeoriënteerde netwerkdiensten en verbindingloze netwerkdiensten en hun belangrijkste verschillen.
•
Beschrijven van de voordelen van LAN-segmentering.
•
Beschrijven van LAN-segmentering met bridges, met routers en met switches.
•
Beschrijven van de voordelen van netwerksegmentering met bridges, met routers, en met switches.
✓ LAN-ontwerp •
Beschrijven van full duplex en half duplex Ethernet.
•
Beschrijven van problemen met netwerkverstopping in Ethernet-netwerken.
•
Beschrijven van de voordelen van FastEthernet.
•
Beschrijven van richtlijnen en afstandbeperkingen van FastEthernet.
✓ Routing •
Definiëren van flow control en beschrijven van de drie basismethoden die in internetworking worden gebruikt.
W
elkom in de wondere wereld van internetworking. In dit eerste hoofdstuk leert u de basis van internetworking door aandacht te besteden aan de manier waarop netwerken aan elkaar worden gekoppeld met Cisco-routers en -switches. Eerst moet u precies weten wat nu een internetwerk is: u maakt een internetwerk door twee of meer LANs of WANs aan elkaar te koppelen via een router en een logisch adresseringsschema te configureren met bijvoorbeeld het IP-protocol. In dit hoofdstuk wordt dieper ingegaan op: • De basis van internetworking • Netwerksegmentering • Hoe bridges, switches en routers worden gebruikt om een netwerk fysiek te segmenteren • Hoe routers worden gebruikt om een internetwerk aan te leggen. Verder wordt het Open Systems Interconnection-model (OSI-model) uitgelegd en alle onderdelen hiervan in detail besproken. Het is namelijk belangrijk dat u over een goede ondergrond beschikt voor uw netwerkkennis. Het OSI-model bestaat uit zeven hiërarchische lagen die zijn ontwikkeld om verschillende netwerken van ongelijke systemen met elkaar te laten communiceren. Omdat dit boek gericht is op alles dat met CCNA te maken heeft, is het belangrijk dat u dit model begrijpt op de manier waarop Cisco het ziet. De zeven lagen van het OSI-model worden dan ook op de Cisco-manier behandeld. Er zijn nogal wat verschillende apparaten die op de verschillende lagen van het OSI-model werken; het is dan ook belangrijk de verschillende soorten kabels en connectoren te begrijpen die worden gebruikt om al deze apparaten in een netwerk te laten samenwerken. De bekabeling van Cisco-apparaten wordt behandeld, en ook Ethernet LANs en WAN-technologieën. Zelfs de manier waarop een router of switch met een console verbonden moet worden wordt uitgelegd. Cisco produceert een veelheid aan routers, hubs en switches. Als u al deze producten kent, kunt u een veel beter onderbouwde beslissing nemen over welk product (welke producten) u nodig hebt om uw netwerk optimaal op te zetten. Als hulp daarbij wordt de volledige productlijn van Cisco in een apart gedeelte aan het einde van dit hoofdstuk behandeld.
Studiegids Cisco CCNA
3
1.1 De basis van internetworking Voordat we de internetworking-modellen en de specificaties van het OSI-model bekijken, moet u eerst het grote geheel zien en het antwoord weten op de vraag: ‘Waarom is het zo belangrijk om Cisco-internetworking te leren?’ Netwerken en netwerkgebruik zijn de laatste vijftien jaar enorm gegroeid. Best te begrijpen, omdat ze met de snelheid van het licht ontwikkeld moesten worden om gelijke tred te houden met de bedrijfskritische gebruikerseisen als het delen van printers en bestanden en ook meer geavanceerde eisen als bijvoorbeeld videoconferencing. Tenzij iedereen die gebruik maakt van een netwerk, ook in hetzelfde kantoor werkt (een situatie die steeds minder vaak voorkomt), moeten alle relevante netwerken aan elkaar gekoppeld worden zodat de gebruikers er mee kunnen werken. Het is ook waarschijnlijk dat op enig moment een groot netwerk onderverdeeld moet worden in kleinere netwerken omdat bij het groeien van het netwerk de respons steeds minder wordt en gebruikers steeds langer moeten wachten. Dit heet een netwerk segmenteren en hiervoor gebruikt u routers, switches en bridges. Routers worden gebruikt om netwerken aan elkaar te koppelen en pakketjes gegevens van het ene naar het andere netwerk te routeren. Cisco is de belangrijkste routerfabrikant omdat ze routerproducten van hoge kwaliteit maken, een ruime keuze hebben en geweldige service bieden. Routers onderbreken een broadcast-domein, de verzameling van alle apparaten in een netwerksegment die luisteren naar alle broadcasts die op dat segment worden verzonden. Het is belangrijk een broadcastdomein te onderbreken omdat iedere keer dat een server of een client een broadcast over het netwerk verstuurt, alle aangesloten apparaten ernaar moeten luisteren en het bericht moeten verwerken – behalve als u een router gebruikt. Als de interface van de router een broadcast ontvangt, geeft deze een antwoord als “Nee, dank je,” en gooit het bericht zonder het door te sturen naar de andere netwerken. Hoewel routers bekend staan om het feit dat ze broadcast-domeinen scheiden, mag u niet vergeten dat ze ook collision-domeinen opdelen. Switches, daarentegen, worden niet gebruikt om internetwerken aan te leggen; deze voegen functionaliteit toe aan een internetwork-LAN. De belangrijkste taak van een switch is het optimaliseren van de prestaties van een LAN door meer bandbreedte beschikbaar te stellen aan de gebruikers van het LAN. Switches sturen ook geen pakketten door naar andere netwerken zoals routers doen. Ze ‘schakelen’ alleen frames van de ene naar de andere poort binnen hetzelfde netwerk. (In theorie weet u nog niet wat frames en pakketten zijn, maar dat geeft niet. Verderop in dit hoofdstuk wordt het echt uitgelegd!) Standaard onderbreekt een switch een collision-domein. Dit is een Ethernet-term die wordt gebruikt voor de situatie waarin een apparaat op het netwerk een pakket verstuurt, waardoor alle andere apparaten op het netwerk aandacht aan dat pakket moeten geven. Tegelijkertijd geldt dat als een ander apparaat ook een pakket aan het
4
Hoofdstuk 1 • Internetwerken
versturen is, de twee pakketen botsen en beide apparaten hun pakket overnieuw moeten sturen (en nu niet tegelijkertijd). Niet echt efficiënt! Deze situatie komt vaak voor in een omgeving met alleen hubs, waarbij elke client aan een hub is gekoppeld en waarbij alle apparaten samen één collison- en broadcast-domein vormen. In tegenstelling tot bij een hub, vormt elke afzonderlijke poort van een switch een eigen collision-domein.
Switches maken afzonderlijke collision-domeinen, maar één broadcast-domein. Een routers zorgt voor een apart broadcast-domein.
De term bridging werd geïntroduceerd voordat routers en hubs werden ontwikkeld, veel mensen noemen bridges dan ook wel ‘switches’. De reden hiervan is dat bridges en switches eigenlijk hetzelfde doen – ze onderbreken collision-domeinen op een LAN. Maar er zijn ook verschillen. Switches bieden deze functie, maar geven veel betere mogelijkheden voor beheer en extra functies. Verder hadden bridges over het algemeen maar twee of vier poorten. Er waren ook wel modellen met 16 poorten, maar tegenwoordig zijn er switches met honderden poorten! In figuur 1.1 ziet u een netwerk met al deze apparaten in functie. Onthoud dat een router niet alleen het broadcast-domein onderbreekt voor elke LAN-interface, maar ook de collision-domeinen. Ziet u dat in figuur 1.1 de router centraal is neergezet en alle fysieke netwerken samenkoppelt? We moeten wel deze lay-out gebruiken omdat er oudere technologieën worden gebruikt – bridges en hubs. Als er alleen maar switches in het netwerk zijn, verandert er een heleboel! Dan zouden de LAN-switches centraal staan en de routers alleen gebruikt worden om logische netwerken aan elkaar te koppelen. Dit soort configuraties is in de praktijk al veel gemaakt en daarbij worden Virtual LANs (VLANs) toegepast; VLANs worden in hoofdstuk 6 uitvoerig besproken. Terug naar figuur 1.1: in het bovenste netwerk wordt een bridge gebruikt om de hubs aan de router te koppelen. De bridge onderbreekt het collision-domein, maar alle hosts die met de beide hubs zijn verbonden, maken nog steeds deel uit van hetzelfde broadcast-domein. Verder heeft de bridge twee collision-domeinen aangebracht, zodat elk apparaat dat aan een hub is gekoppeld, zich in hetzelfde collision-domein bevindt als alle andere apparaten die met dezelfde hub zijn verbonden. Jammer, maar in ieder geval beter dan één collision-domein voor alle hosts!
Bridges worden gebruikt om netwerken te segmenteren, maar ze kunnen geen broadcast- of multicast-pakketten isoleren.
5
Studiegids Cisco CCNA Figuur 1.1
Internetworking-apparaten
Bridge Switch: Veel collision-domeinen een broadcast-domein
Switch
Bridge: Twee collision-domeinen een broadcast-domein
Router Hub: Een collision-domein een broadcast-domein
In vergelijking met het netwerk met de drie hubs onderaan, dat ook aan de router is gekoppeld, komt het bridge-netwerk er een stuk beter vanaf. In het onderste netwerk is er een gigantisch collision-domein en een gigantisch broadcast-domein! Het beste netwerk dat aan de router is gekoppeld, is het LAN switch-netwerk aan de linkerkant omdat elke poort van de switch de een collision-domein onderbreekt. Toch zou het nog beter kunnen, omdat alle apparaten zich nog steeds in hetzelfde broadcast-domein bevinden. Onthoud dat dit ongewenst is omdat alle apparaten moeten luisteren naar alle broadcasts die worden verstuurd. Als het broadcast-domein te groot is, beschikken de gebruikers over minder bandbreedte en is de responstijd van het netwerk laag. Het beste netwerk is een netwerk dat zodanig is geconfigureerd dat aan alle eisen van een individueel bedrijf wordt voldaan. LAN-switches met routers, op de juiste plek in het netwerk vormen het beste netwerkontwerp. In dit boek leert u de basis van routers en switches, zodat u per geval een goede beslissing kunt nemen. Nu hebt u een inleiding in internetworking gehad en de verschillende apparaten gezien waaruit een netwerk bestaat. De volgende stap bestaat uit de verschillende internetworking-modellen.
6
Hoofdstuk 1 • Internetwerken
1.2 Internetworking-modellen Toen netwerken voor het eerst opdoken konden computers over het algemeen alleen communiceren met andere computers van dezelfde fabrikant. Bedrijven kozen toen voor bijvoorbeeld een complete DECnet-oplossing of een IBM-oplossing – zeker niet voor een combinatie. Eind jaren 70 werd het OSI (Open Systems Interconnection)model ontwikkeld door de internationale organisatie voor standaardisatie ISO (International Organization for Standardization) om deze grenzen te doorbreken. Het OSI-model was bedoeld om fabrikanten te helpen netwerkapparaten te ontwikkelen die met netwerken van verschillende leveranciers overweg konden. Net als wereldvrede een mooi idee, maar waarschijnlijk te mooi om waar te worden. Het OSI-model is het belangrijkste architectuurmodel voor netwerken. Het beschrijft hoe gegevens en netwerkgegevens worden doorgegeven door een toepassing op de ene computer, via het netwerkmedium naar een toepassing op een andere computer. In het OSI-model wordt dit verhaal verdeeld in een aantal lagen.
1.2.1
De benadering met lagen Een referentiemodel is een theoretische bouwtekening van hoe de communicatie zou moeten verlopen. Alle processen die benodigd zijn bij effectieve communicatie worden behandeld en in logische groepen verdeeld, die lagen worden genoemd. Als een communicatiesysteem op deze manier is samengesteld, wordt het een gelaagde architectuur genoemd. Stel u het volgende voor: u wilt samen met wat vrienden een bedrijf beginnen. Een van de eerste dingen die u doet, is bij elkaar komen en bespreken welke taken uitgevoerd moeten worden, wie wat doet, in welke volgorde en hoe de taken met elkaar te maken hebben. Uiteindelijk kunnen deze taken worden verdeeld in afdelingen. Zo kunt u een verdeling maken in een afdeling Inkoop, een afdeling Magazijn en een afdeling Verzending. Elk van deze afdelingen heeft specifieke taken, waarmee de medewerkers de handen vol hebben en zich daardoor moeten richten op hun eigen werkzaamheden. In deze beschrijving zijn de afdelingen een metafoor voor de lagen in een communicatiesysteem. Het werk kan alleen soepel verlopen als het personeel van de verschillende afdelingen op het personeel in andere afdelingen kan vertrouwen en in staat is de eigen taken goed af te handelen. In uw planningsessies zou u notities maken en het hele proces beschrijven zodat later gemakkelijker over standaarden kan worden onderhandeld die worden gebruikt als bedrijfsplan – uw referentiemodel. Als de zaak eenmaal draait, moeten de afdelingshoofden, gewapend met het gedeelte van de bouwtekening dat van toepassing is op hun eigen afdeling, aan de slag om praktijkmethoden te ontwikkelen voor de uitvoering van hun taken. Deze praktijkmethoden – protocollen – moeten worden samengevat in een
Studiegids Cisco CCNA
7
bedrijfshandleiding met standaardprocedures en deze moeten goed worden nagevolgd. Elke procedure in de handleiding zal om verschillende redenen zijn opgenomen en er zullen verschillende graden van belangrijkheid zijn bij het implementeren ervan. Als u een partnerschap aangaat of een ander bedrijf overneemt, is het belangrijk dat uw bedrijfsplannen – de bouwtekeningen – overeenkomen (of in ieder geval goed bij elkaar passen). Op dezelfde manier kunnen softwareontwikkelaars een referentiemodel gebruiken om inzicht te krijgen in de communicatieprocessen tussen computers en bepalen welke soorten functies op welke laag moeten worden geregeld. Als ze een protocol bedenken voor een specifieke laag, hoeven ze zich alleen maar bezig te houden met de functies die door die laag worden uitgevoerd, niet met functies op andere lagen. Een andere laag en een ander protocol verzorgt een andere functie. De technische term hiervoor is binding. De communicatieprocessen die met elkaar te maken hebben, zijn verbonden op of gegroepeerd in een bepaalde laag.
1.2.2
Voordelen van referentiemodellen Het OSI-model is hiërarchisch opgesteld, en dezelfde voordelen gelden voor welk lagenmodel. Het voornaamste doel van alle modellen, en met name het OSI-model, is het mogelijk maken dat verschillende fabrikanten samenwerken. De voordelen van het OSI-model zijn onder meer: • Verdelen van complexe netwerkoperaties in beter behapbare lagen. • Mogelijkheid een laag te wijzigen zonder dat alle andere lagen ook gewijzigd hoeven te worden (hierdoor kunnen toepassingsontwikkelaars zich specialiseren in ontwerp en ontwikkeling). • Bepaalt de standaardinterface voor de ‘plug-and-play’-integratie voor verschillende fabrikanten.
1.3 Het OSI-referentiemodel Het OSI-referentiemodel werd eind jaren 70 ontwikkeld om gegevensoverdracht tussen verschillende netwerkelementen te vergemakkelijken. Een van de voornaamste functies van de OSI-specificaties is het helpen bij gegevensoverdracht tussen ongelijke computers, bijvoorbeeld Unix, pc en Macintosh. Toch is het OSI-model geen fysiek model. Het is een aantal richtlijnen die door toepassingsontwikkelaars kunnen worden gebruikt om toepassingen te maken en gebruiken die op een netwerk werken. Verder is het een raamwerk voor het maken en implementeren van netwerkstandaarden, -apparaten, en internetworking-schema’s.
8
Hoofdstuk 1 • Internetwerken
De voornaamste reden dat de International Organization for Standardization (ISO) het OSI-model uitbracht, is dat de netwerken van verschillende fabrikanten konden samenwerken. Het OSI bestaat uit zeven verschillende lagen, die weer zijn verdeeld in twee groepen. De bovenste drie lagen bepalen hoe de toepassing op de eindstations met elkaar en de gebruiker communiceren. De onderste vier lagen bepalen hoe gegevens van de ene kant naar de andere worden verzonden. In figuur 1.2 worden de bovenste drie lagen en hun functies getoond, in figuur 1.3 zijn de onderste drie lagen uitgewerkt. Figuur 1.2
De bovenste lagen
Application
Presentation
Session
• Biedt interface naar gebruiker
• Presenteert gegevens • Verwerkt processen als encryptie
• Houdt de gegevens van verschillende toepassingen gescheiden
Transport Network Data Link Physical
Figuur 1.3
De onderste lagen
Transport
• Biedt betrouwbare of onbetrouwbare aflevering • Voert error-correctie uit voor hertransmissie
Network
• Biedt logische adressering, die door routers wordt gebruikt voor de bepaling van de route
Data Link
• Voegt pakketten samen tot bytes en bytes samen tot frames • Biedt toegang tot media via MAC-adres • Voert error-detectie uit, geen correctie
Physical
• Verplaatst bits tussen apparaten • Bepaalt voltage, lijnsnelheid en plaats van draden in kabels
Studiegids Cisco CCNA
9
Als u goed kijkt naar figuur 1.2, ziet u dat de gebruiker de computer gebruikt op de Application layer (de laag Toepassing) en dat de bovenste lagen verantwoordelijk zijn voor de communicatie van toepassingen tussen hosts. Onthoud dat geen van de bovenste lagen wat dan ook begrijpen van netwerken of netwerkadressen. Dat is de verantwoordelijkheid van de onderste vier lagen. In figuur 1.3 ziet u dat de onderste vier lagen bepalen hoe gegevens worden overgezet langs een fysieke kabel of door switches en routers. Deze onderste lagen bepalen eveneens hoe een in stukken opgedeelde gegevensstroom van een zendende host moet worden gegroepeerd om weer te worden doorgegeven aan de toepassing op de ontvangende host.
1.3.1
De OSI-lagen Eigenlijk is de International Organization for Standardization (ISO) net zoiets als Freud was voor de psychologie. Hij schreef de eerste belangrijke standaardwerken – de protocollen; net als de ISO het OSI-referentiemodel ontwikkelde als eerste richtlijn voor een open set van netwerkprotocollen. De etiquette voor communicatiemodellen ligt er in vast, en het is vandaag de dag nog steeds het populairste model om protocollen te vergelijken. Het OSI-referentiemodel bestaat uit zeven lagen: • Application layer (de laag Application) • Presentation layer (de laag Presentation) • Session layer (de laag Session) • Transport layer (de laag Transport) • Network layer (de laag Network) • Data Link layer (de laag Data Link) • Physical layer (de laag Physical) In figuur 1.4 worden de functies van de verschillende lagen van het OSI-model getoond. Met dit in de hand kunnen kunt u zich nu storten op de details van de verschillende laagfuncties.
De laag Application De laag Application (laag Toepassing) van het OSI-model geeft aan waar gebruikers communiceren met de computer. Deze laag is verantwoordelijk voor het identificeren van de bedoelde communicatiepartner en voor het ervoor zorgen dat er voldoende bronnen beschikbaar zijn voor de communicatie.
10 Figuur 1.4
Hoofdstuk 1 • Internetwerken Functies van de lagen Application
Diensten voor bestanden, afdrukken, berichtenverkeer, database en toepassingen
Presentation
Diensten voor versleuteling (encryption), compressie en vertaling
Session
Beheer van de dialoog
Transport
End-to-end-verbinding
Network
Routing
Data Link
Framing
Physical
Fysieke topologie
Deze taken zijn belangrijk omdat toepassingen soms alleen lokale bronnen nodig hebben, maar vaak ook communicatiecomponenten van een of meer netwerktoepassingen. Voorbeelden hiervan zijn bestandsoverdracht en e-mail, externe toegang, netwerkbeheeractiviteiten, client/server-processen en informatie opzoeken. Veel netwerktoepassingen bieden diensten voor communicatie over bedrijfsnetwerken, maar de behoefte aan verder reiken dan de bestaande netwerken ontwikkelt zich snel. Transacties en gegevensuitwisseling tussen bedrijven nemen een hoge vlucht en maken internetworkingtoepassingen als de volgende nodig: World Wide Web (WWW) Verbindt ontelbare servers (het aantal lijkt per dag toe te nemen) die informatie aanbieden in verschillende vormen. De meeste zijn multimedia en bevatten een of meer van de volgende: afbeeldingen, tekst, video en steeds vaker ook geluid. (En om de druk nog verder op te voeren worden websites ook steeds fraaier en gelikter. En hoe spannender de site eruitziet, hoe meer bronnen benodigd zijn. Verderop in dit hoofdstuk wordt ingegaan op de reden hiervan.) Netscape Navigator en Internet Explorer maken het gemakkelijk websites te benaderen en te bekijken. E-mail gateways zijn er in verschillende soorten en kunnen gebruikmaken van Simple Mail Transfer Protocol (SMTP) of de X.400-standaard om berichten uit te wisselen tussen verschillende e-mailtoepassingen. Electronic Data Interchange (EDI) Is een verzameling speciale standaarden en processen die het verloop van taken als boekhouding, logistiek en het volgen van orders tussen bedrijven vergemakkelijken.
Studiegids Cisco CCNA
11
Speciale bulletin boards In deze categorie vallen de vele chat-rooms op Internet waar mensen elkaar kunnen ‘ontmoeten’ en met elkaar kunnen communiceren door berichten te plaatsen of door te typen in een soort ‘gesprek’. Ook kunnen ze publieke software (public domain software) uitwisselen. Navigatiegereedschappen voor Internet Toepassingen als Gopher en WAIS en zoekmachines als Yahoo!, Excite, en Alta Vista, die gebruikers helpen bronnen en informatie te vinden op Internet. Diensten voor financiële transacties Gericht op de financiële sector. Ze vergaren en verkopen gegevens die betrekking heeft op investeringen, beurstransacties, goederen, wisselkoersen en kredietgegevens aan hun abonnees.
De laag Presentation De laag Presentation ontleent zijn naam aan zijn functie: deze laag presenteert de gegevens aan de laag Application. Het is eigenlijk een vertaler die functies voor codering en conversie bevat. Een succesvolle techniek voor gegevensoverdracht is de gegevens aan te passen aan een standaardformaat voor de verzending. Computers zijn zodanig geconfigureerd dat ze deze generiek opgemaakte gegevens kunnen ontvangen en converteren de gegevens terug naar het eigenlijke formaat voordat ze worden gelezen (bijvoorbeeld EBCDIC naar ASCII). Door middel van de vertaaldiensten zorgt de laag Presentation ervoor dat gegevens die worden overgedragen van de laag Application op het ene systeem kunnen worden gelezen door de laag Application op het andere systeem. Het OSI bevat protocolstandaarden waarin is vastgelegd hoe standaardgegevens moeten worden opgemaakt. Taken als gegevenscompressie, decompressie, encryptie (versleuteling), en decryptie horen op deze laag thuis. Een aantal standaarden van de laag Presentation heeft ook te maken met multimedia. De volgende zorgen voor de presentatie van grafische bestanden: PICT Een afbeeldingformaat dat door Macintosh- of PowerPC-programma’s wordt gebruikt voor de overdracht van QuickDraw-afbeeldingen. TIFF Het Tagged Image File Format is een standaard afbeeldingformaat voor bitmapafbeeldingen van hoge resolutie. JPEG De Joint Photographic Experts Group heeft deze standaard voor foto’s ontwikkeld.
12
Hoofdstuk 1 • Internetwerken
Andere standaarden voor film en geluid zijn: MIDI De Musical Instrument Digital Interface wordt gebruikt voor gedigitaliseerde muziek. MPEG De Moving Picture Experts Group bedacht deze standaard voor de compressie en codering van videobeelden. Deze steeds populairdere standaard ondersteunt digitale opslag en bitrates tot 1,5Mbps. QuickTime Standaard voor Macintosh- of PowerPC-programma’s; bestuurt audio- en videotoepassingen.
De laag Session De laag Session (Session layer) is verantwoordelijk voor het opzetten, beheren en vervolgens afbreken van sessies tussen entiteiten op de laag Presentation. Deze laag is ook verantwoordelijk voor het dialoogbeheer tussen apparaten of knooppunten (nodes). De communicatie tussen systemen wordt gecoördineerd door middel van drie verschillende modi: simplex, half duplex en full duplex. Kort omschreven zorgt de laag Session ervoor dat de gegevens van de ene toepassing gescheiden blijven van de ander toepassing. Een aantal voorbeelden van protocollen en interfaces op de laag Session (volgens Cisco): Network File System (NFS) Ontwikkeld door Sun Microsystems, gebruikt met TCP/IP en Unix-workstations zodat transparante toegang tot externe bronnen mogelijk wordt. Structured Query Language (SQL) Ontwikkeld door IBM om gebruikers een eenvoudigere manier te bieden om hun informatiebehoefte te formuleren op zowel lokale als externe systemen. Remote Procedure Call (RPC) Is een breed client/server-verwijzingsgereedschap dat gebruikt wordt voor ongelijke dienstenomgevingen. De procedures worden gemaakt op de clients en uitgevoerd op servers. X Window Wordt zeer vaak gebruikt door intelligente terminals voor de communicatie met Unix-computers op afstand, waardoor deze bediend kunnen worden alsof het een lokale computer betreft.
Studiegids Cisco CCNA
13
AppleTalk Session Protocol (ASP) Weer een client/server-mechanisme, dat sessies tussen AppleTalk-client en –servers opzet en onderhoudt. Digital Network Architecture Session Control Protocol (DNA SCP) Een DECnet-protocol voor op de laag Session.
De laag Transport De laag Transport segmenteert gegevens in een gegevensstroom en voegt deze daarna weer samen. Diensten op de laag Transport zorgen zowel voor de segmentering als de samenvoeging van gegevens uit toepassingen op hogere lagen en voegen dit samen tot één gegevensstroom. Ze bieden end-to-end gegevenstransportdiensten en kunnen een logische verbinding leggen tussen de zendende host en de bestemmingshost op een internetwerk. Sommigen van u zullen bekend zijn met UDP en TCP. (Als u het niet bent, maak u dan niet ongerust. Hoofdstuk 3 gaat hier dieper op in.) Als dat zo is, weet u dat beide protocollen actief zijn op de laag Transport en dat TCP een betrouwbare dienst is en UDP niet. Dit betekent dat toepassingsontwikkelaars over meer opties beschikken omdat ze kunnen kiezen uit de twee protocollen als ze werken met de TCP/IPprotocollen. De laag Transport is verantwoordelijk voor het bieden van mechanismen voor het multiplexen van toepassingen op hogere lagen, het opzetten van sessies en het afbreken van virtuele circuits. Verder verbergt deze laag alle netwerkafhankelijke informatie voor de hogere lagen door een transparante mogelijkheid voor gegevensoverdracht te bieden.
De term ‘reliable networking’ (betrouwbaar netwerken) kan worden gebruikt op de laag Transport.
Flow Control Op de laag Transport wordt de integriteit van gegevens gewaarborgd door toepassing van flow control en door het mogelijk te maken dat gebruikers betrouwbaar gegevenstransport eisen tussen systemen. Flow control zorgt ervoor dat de zendende host aan de ene kant van de verbinding de buffers van de ontvangend host aan de andere kant niet overbelast – dat kan tot gegevensverlies leiden. Betrouwbaar gegevenstransport gebruikt verbindinggeoriënteerde communicatiesessies tussen systemen en de betrokken protocollen zorgen ervoor dat het volgende wordt bereikt:
14
Hoofdstuk 1 • Internetwerken
• Na ontvangst van de segmenten wordt een ontvangstbevestiging teruggestuurd naar de zender. • Elk segment waarvan geen ontvangstbevestiging binnenkomt, wordt opnieuw verzonden. • Segmenten worden na aankomst in de juiste volgorde teruggeplaatst op de bestemming. • Er wordt een beheersbare gegevensstroom opgezet zodat verstopping, overbelasting en gegevensverlies worden voorkomen. Verbindinggeoriënteerde communicatie Bij betrouwbaar gegevenstransport begint een van de apparaten een verbindinggeoriënteerde (connection oriented) sessie met het andere systeem. Dit heet een call setup of three-way handshake (Cisco-term). Vervolgens worden gegevens getransporteerd en als dat klaar is vindt een call termination (einde gesprek) plaats en wordt het virtuele circuit afgebroken. In figuur 1.5 ziet u een voorbeeld van een betrouwbare sessie tussen zendende en ontvangende systemen. U ziet dat toepassingen op beide hosts beginnen met het op de hoogte stellen van het besturingssysteem dat er een verbinding gemaakt gaat worden. De twee besturingssystemen communiceren door berichten over het netwerk te verzenden die aangeven dat verzending goedgekeurd is en dat beide zijden gereed zijn voor de verzending. Zodra al deze synchronisatie klaar is, wordt de eigenlijke verbinding opgezet en begint de gegevensoverdracht. Figuur 1.5
Een verbindinggeoriënteerde sessie opzetten
Zender
Ontvanger Synchronisatie
Onderhandelen over verbinding
Synchronisatie
Bevestiging Verbinding tot stand gebracht
Gegegevensoverdracht (Segmenten versturen)
Studiegids Cisco CCNA
15
Terwijl de gegevens worden verstuurd van de ene naar de andere host, controleren de machines regelmatig bij elkaar of alles goed gaat en dat de gegevens goed binnenkomen. Hiervoor gebruiken ze de protocolsoftware. Schenk even aandacht aan de stappen op die in een verbindinggeoriënteerde sessie voorkomen. De drieweg handshake – three-way handshake, zoals getoond in figuur 1.5: • Het eerste ‘verbindingsovereenkomstsegment’ is een verzoek om synchronisatie. • Het tweede en het derde segment bevestigen het verzoek en bepalen de verbindingsparameters – de regels – tussen de hosts. • Het laatste segment is eveneens een bevestiging. Het stelt de bestemmingshost op de hoogte dat de verbindingsovereenkomst is geaccepteerd en dat de feitelijke verbinding tot stand is gebracht. De gegevensoverdracht kan nu beginnen. Klinkt eenvoudig, nietwaar? Toch gaat niet altijd alles even soepel. Soms treedt er verstopping op tijdens een verbinding omdat een snelle computer veel sneller gegevens genereert dan het netwerk kan verstouwen. Een aantal computers die tegelijkertijd datagrammen versturen door één gateway of naar één bestemming kunnen de boel ook aardig in de war sturen. In dit laatste geval kan de gateway of de ontvanger verstopt raken, zelfs al is er niemand aan te wijzen als schuldige. In alle gevallen lijkt het probleem sterk op een flessenhals op de snelweg: te veel verkeer voor te weinig capaciteit. Meestal is het niet en enkele auto die het probleem veroorzaakt, er zijn gewoon te veel auto’s op die weg. Wat gebeurt er nu als een machine meer datagrammen ontvangt dan deze kan verwerken? Die worden dan opgeslagen in een speciaal stukje geheugen dat buffer heet. Bufferen kan het probleem alleen oplossen als de datagrammen deel uitmaken van een piek of burst. Als echter continu te veel datagrammen binnenkomen, zal het buffergeheugen vollopen en zal het apparaat nakomende datagrammen weigeren. Toch is dat nog steeds geen groot probleem. Vanwege de transportfunctie werken netwerkoverstromingbeheersystemen (network flood control systems) eigenlijk best goed. De gegevens worden niet zomaar gedumpt. In plaats daarvan stuurt de transportfunctie een ‘not ready’-indicator naar de zender of de bron van de overstroming (zie figuur 1.6). Dit mechaniek werkt als een soort stoplicht: het zendende apparaat ziet dat het moet ophouden met het sturen van gegevens naar de ontvanger die het te druk heeft. Als de ontvanger de segmenten die al in de buffer stonden heeft verwerkt, stuurt deze een ‘ready’-transportindicator. Zodra de machine die stond te wachten op toestemming om de rest van de datagrammen te sturen deze indicator GO! binnenkrijgt, gaat hij door met verzenden. Bij een betrouwbare verbindinggeoriënteerde gegevensoverdracht worden datagrammen in dezelfde volgorde afgeleverd bij de ontvangende host als waarin ze zijn verzonden. De transmissie is niet gelukt als deze volgorde wordt verbroken! Als een datagram onderweg is kwijtgeraakt, of wordt verdubbeld of beschadigd, wordt er een foutmelding verzonden. Het probleem wordt opgelost doordat de zendende host
16
Hoofdstuk 1 • Internetwerken
van de ontvanger een bevestiging binnenkrijgt van elk datasegment dat deze heeft ontvangen. Figuur 1.6
Segmenten verzenden met flow control
Zender
Ontvanger
Zenden
Buffer vol Niet gereed STOP Segmenten verwerkt GO!
Zenden
Windowing In het ideale geval gebeurt de gegevensoverdracht snel en efficiënt. U kunt zich voorstellen dat het allemaal erg langzaam wordt als de zendende machine bij ieder segment op ontvangstbevestiging moet wachten. Maar omdat er tijd beschikbaar is na het versturen van een gegevenssegment en voordat de ontvangstbevestiging van de ontvangende machine binnen is, gebruikt de zender deze tijd om alvast meer gegevens te sturen. De hoeveelheid gegevenssegmenten die een zender kan versturen zonder een ontvangstbevestiging af te wachten heet een window.
Windows worden gebruikt om de hoeveelheid uitstaande, niet-bevestigde gegevenssegmenten te beheren.
De grootte van het window bepaalt dus hoeveel gegevens van de ene kant naar de andere kant wordt verzonden. Sommige protocollen gebruiken het aantal pakketten als hoeveelheid, TCP/IP gebruikt echter het aantal bytes. Zoals te zien is in figuur 1.7, zijn er twee window-grootten – de ene is ingesteld op 1, de andere op 3. Als u de window-grootte hebt ingesteld op 1, wacht de zendende machine op bevestiging bij
17
Studiegids Cisco CCNA
elk verzonden gegevenssegment. Als u de waarde 3 hebt geconfigureerd, kunnen drie segmenten verstuurd worden voordat op bevestiging wordt gewacht. In het vereenvoudigde voorbeeld zijn zowel zender als ontvanger werkstations. In werkelijkheid is het vrijwel nooit zo eenvoudig en zullen pakketten tijdens hun reis over het netwerk en door routers door elkaar gaan lopen. Routing maakt het geheel een stuk lastiger, maar in hoofdstuk 5 leert u daar gelukkig van alles over. Figuur 1.7
Windowing
Zender
Windowgrootte 1
Ontvanger Ontvangen 1
Zend 1
Ack 2 Ontvangen 2
Zend 2
Ack 3
Windowgrootte 3 Zend 1 Zend 2 Zend 3 Ack 4 Zend 4
Bevestigingen Betrouwbare gegevensoverdracht verzekert de integriteit van een gegevensstroom die van de ene naar de andere machine via een volledig functionele data link wordt verzonden. Het garandeert dat er geen gegevens worden gedupliceerd of verloren gaan. Dit wordt bereikt door een mechanisme met de naam positive acknowledgment with retransmission (positieve bevestiging met hertransmissie), een techniek die de ontvangende machine bij de ontvangst van gegevens een bevestiging terug laat sturen naar de zender. De zender documenteert elk verzonden segment en wacht op de ontvangstbevestiging voordat een volgend segment wordt verzonden. Bij het versturen van een segment start de zender een timer en als het te lang duurt voordat een ontvangstbevestiging terugkomt, wordt het segment opnieuw gestuurd. In figuur 1.8 stuurt de zender segmenten 1, 2 en 3. Het ontvangende knooppunt (node) bevestigt de ontvangst door segment 4 aan te vragen. Zodra de zender de bevestiging (acknowledgment) ontvangt, stuurt het de segmenten 4, 5 en 6. Als
18
Hoofdstuk 1 • Internetwerken
segment 5 om de een of andere reden de bestemming niet haalt, wordt dit bevestigd door de ontvanger die een verzoek doet segment 5 opnieuw te sturen. De zendende machine stuurt dan het ontbrekende segment en wacht op bevestiging. Pas nadat deze bevestiging binnen is, kan de zender doorgaan met het sturen van segment 7. Figuur 1.8
Betrouwbare overdracht op de transportlaag
Zender 1
2
3
4
Ontvanger 5
6
1
2
3
4
5
6
Zend 1 Zend 2 Zend 3 Ack 4 Zend 4 Zend 5
Verbinding verbroken!
Zend 6 Ack 5 Zend 5 Ack 7
De laag Network De laag Network (ook wel laag 3 genoemd) is belast met de adressering van apparaten, plaatsbepaling van apparaten op het netwerk en bepaling van de beste manier om gegevens te transporteren. Dit betekent dat de laag Network gegevens moet transporteren tussen apparaten die niet fysieke met elkaar zijn verbonden. Routers (apparaten op laag 3) worden op de netwerklaag gespecificeerd en bieden de routeringsdiensten binnen een internetwerk. Dit gaat als volgt: als een pakket aankomt op een interface van de router, controleert de router het IP-adres van het doel. Als het pakket niet voor de betreffende router is bedoeld, zoekt de router het doelnetwerk op in de routetabel. Daarna kiest de router een uitgaande interface en stuurt het pakket door naar die interface, waar het in een frame wordt gevat en verzonden op het lokale netwerk. Als de router in de routetabel geen ingang kan vinden voor het doelnetwerk, laat deze het pakket vallen.
19
Studiegids Cisco CCNA
Op de laag Network worden twee soorten pakketten gebruikt: gegevens en routeupdates. Gegevenspakketten Worden gebruikt om gebruikersgegevens door het internetwerk te transporteren. Protocollen die gegevensverkeer ondersteunen heten routed protocols (gerouteerde protocollen); voorbeelden hiervan zijn IP en IPX. In hoofdstuk 3 leest u alles over IP-adressering en IPX-adressering wordt in hoofdstuk 8 behandeld.‘ Route-updatepakketten Worden gebruikt om naastgelegen routers bij te werken met informatie over de routers binnen het internetwerk. Protocollen die route-updatepakketten verzenden heten routing protocols; voorbeelden hiervan zijn RIP, EIGRP en OSPF. Routeupdatepaketten worden gebruikt om de routetabellen van de verschillende routers te maken en te onderhouden. In figuur 1.9 ziet u een voorbeeld van een routetabel. Figuur 1.9
Routetabel die gebruikt wordt in een router 1.0
3.0
1.1
3.1
1.3
2.1
2.2
3.3
E0
S0
S0
E0
1.2
3.2
Routetabel NET INT Metric 1 E0 0 2 S0 0 3 S0 1
Routetabel NET INT Metric 1 S0 1 2 S0 0 3 E0 0
De routetabel die wordt gebruikt in een router, bevat onder meer de volgende informatie: Netwerkadressen Dit zijn protocolspecifieke netwerkadressen. Een router moet per protocol een routetabel bijhouden omdat de verschillende protocollen hun eigen adresseringsschema’s gebruiken. U kunt dit vergelijken met een straatnaambordje met alle talen die door de inwoners van de straat worden gesproken. Als er
20
Hoofdstuk 1 • Internetwerken
bijvoorbeeld Nederlanders, Amerikanen, Fransen en Duitsers op de ‘Kattestraat’ wonen, zou er Kattestraat/Cat street/Rue du Chat/KatzenStrasse op het bordje staan. Interface De uitgaande interface die door een pakket wordt gebruikt op weg naar een specifiek netwerk. Metric De afstand tot het andere netwerk. Routeprotocollen gebruiken verschillende manieren om deze afstand te meten. In hoofdstuk 5 wordt meer uit over routeprotocollen verteld; op dit moment is het voldoende te weten dat sommige protocollen gebruik maken van de hop count (het aantal routers dat een pakket passeert op weg naar het doelnetwerk), en andere bandbreedte, lijnvertraging of zelfs een tick count (1/18 van een seconde) gebruiken. Eerder las u al dat een router een broadcast-domein begrenst, hetgeen betekent dat broadcasts standaard niet door routers worden doorgestuurd. Weet u nog waarom dit wenselijk is? Routers begrenzen ook collision-domeinen, hoewel u dat ook kunt bewerkstelligen met een laag-2 (Data Link)-switch. Doordat iedere interface van een router een eigen netwerk vertegenwoordigt, moet deze een uniek netwerkidentificatienummer krijgen, en moet iedere host op die verbonden is met die router hetzelfde netwerknummer gebruiken. Een aantal belangrijke punten van routers die u zeer goed moet onthouden: • Routers sturen standaard géén broadcast- of multicast-pakket door. • Routers gebruiken de logische adressen in een netwerklaagheader om te bepalen naar welke volgende router het pakket moet worden doorgestuurd. • Routers kunnen access lists (toegangslijsten) gebruiken die door de beheerder zijn gemaakt voor het toegangsbeheer op de router (bepalen van het soort pakketten dat wordt toegestaan een interface binnen te komen of te verlaten). • Routers kunnen indien gewenst bridging-functies op laag 2 uitvoeren en tegelijkertijd routeren via dezelfde interface. • Apparaten op laag 3 (routers in dit geval) bieden verbindingsmogelijkheden tussen Virtual LANs (VLANs).
Switching en VLANs worden behandeld in de hoofdstukken 2 en 6.
• Routers kunnen Quality of Service (QoS) bieden voor specifieke soorten netwerkverkeer.
21
Studiegids Cisco CCNA
De laag Data Link De laag Data Link (Data Link layer) zorgt voor de fysieke transmissie van de gegevens en foutmeldingen, netwerktopologie en flow control. Dit betekent dat de laag Data Link ervoor zorgt dat berichten worden afgeleverd bij het juiste apparaat op een LAN door gebruik te maken van hardwareadressen. Het betekent ook dat deze laag zorgt voor de vertaling van berichten van de laag Network in bits die door de laag Physical kunnen worden verzonden. De laag Data Link giet de berichten in het formaat van data frames en voegt een aangepaste header toe met het hardwareadres van de bestemming en de bron. Deze toegevoegde gegevens vormen als het ware een capsule om het oorspronkelijke bericht heen op dezelfde manier als vroeger motoren, navigatieapparatuur en dergelijke om de maanlandingmodule van de Apollo waren bevestigd. Deze stukken apparatuur waren alleen gedurende een bepaald gedeelte van de vlucht nodig en werden afgestoten als ze niet meer nodig waren. Gegevensverkeer door het netwerk werkt op ongeveer dezelfde manier. In figuur 1.10 ziet u de laag Data Link met de IEEE-specificaties voor Ethernet. Merk op dat de IEEE 802.2-standaard samen met de andere IEEE-standaarden wordt gebruikt en extra functionaliteit toevoegt aan de andere IEEE-standaarden. Figuur 1.10
De laag Data Link
Logical Link Control (LLC)
Media Access Control (MAC)
Het is belangrijk te begrijpen dat routers, die op de laag Network actief zijn, totaal niet geïnteresseerd zijn in de plek waar een host zich bevindt. Een router bekommert zich alleen om de locatie van netwerken en de beste manier om die te bereiken – ook de netwerken op afstand. Routers zijn behoorlijk geobsedeerd door netwerken. En dat is maar goed ook! De laag Data Link is verantwoordelijk voor de feitelijke unieke identificatie van elk apparaat op het lokale netwerk. De laag Data Link gebruikt hardwareadressen om het voor een host mogelijk te maken pakketten naar andere hosts of routers te versturen. Elke keer dat een pakket tussen routers wordt verzonden, wordt het pakket ingekapseld (encapsulated) in controle-informatie op de laag Data Link, maar die informatie wordt door de ontvangende router weer verwijderd, zodat alleen het oorspronkelijke pakket overblijft. Deze inkapseling in frames (framing) gebeurt voor iedere hop totdat het
22
Hoofdstuk 1 • Internetwerken
pakket uiteindelijk wordt afgeleverd bij de ontvangende host. Het is belangrijk te onthouden dat het pakket zelf niet wordt gewijzigd; het wordt ingepakt in informatie die nodig is om de volgende stap op de route te kunnen maken. De laag Data Link IEEE Ethernet kent twee sublagen: Media Access Control (MAC) 802.3 Deze laag bepaalt hoe pakketten op de media worden geplaatst. Toegang gaat op basis van ‘die het eerst komt, die het eerst maalt’; iedereen maakt gebruik van dezelfde bandbreedte. Fysieke adressering vindt ook op deze laag plaats, evenals logische topologieën. Wat is een logische topologie? Dat is het pad dat een signaal volgt door de fysieke topologie. Lijndiscipline, foutmeldingen (geen error correctie), geordende afgifte van frames en eventueel flow control kunnen ook op deze sublaag worden gebruikt. Logical Link Control (LLC) 802.2 Deze sublaag is verantwoordelijk voor de identificatie van protocollen op de laag Network en de inkapseling (encapsulation) van deze protocollen. Een LLC-header vertelt de laag Data Link wat er moet gebeuren als er een pakket is ontvangen. Het werkt als volgt: een host ontvangt een frame en kijkt dan in de LLC-header om te zien waarvoor het pakket bestemd is (bijvoorbeeld het IP-protocol op de laag Network). De LLC kan ook voorzien in flow control en volgordebepaling (sequencing) van control-bits. Switches en bridges op de laag Data Link Layer De switches en bridges die het in het begin van dit hoofdstuk ter sprake kwamen, zijn allebei apparaten voor de laag Data Link layer en filteren het netwerk met behulp van hardware- (MAC-) adressen. Layer-2 switching (switchen op laag 2) wordt beschouwd als bridgen op hardwareniveau omdat er gespecialiseerde hardware voor wordt gebruikt: Application-Specific Integrated Circuits (ASICs). Deze toepassingsspecifieke geïntegreerde schakelingen kunnen gigabit-snelheden bereiken en kennen toch een hele lage wachttijd (latency).
Wachttijd (latency) is de tijd die ligt tussen het moment dat een frame een poort binnenkomt en de tijd dat het een poort verlaat.
Bridges en switches lezen elk frame dat door het netwerk wordt verzonden. Het laag-2 apparaat plaatst het hardwareadres van de bron in een filtertabel en onthoudt op welke poort het frame is ontvangen. Aan de hand van deze informatie (opgeslagen in de filtertabel van de bridge of switch) bepaalt de machine de locatie van het zendende apparaat. Net als de makelaardij draait het bij apparaten op de lagen 2 en 3 allemaal om locaties. Beide soorten moeten kunnen onderhandelen over netwerkaangelegenheden,
Studiegids Cisco CCNA
23
maar ze houden zich met zeer verschillende aspecten ervan bezig. Routers en andere apparaten op laag 3 moeten specifieke netwerken lokaliseren; apparaten op laag 2 (switches en bridges) moeten de locatie van specifieke apparaten weten. Netwerken zijn voor routers wat individuele apparaten zijn voor switches en bridges. En routetabellen die het internetwerk ‘vertalen’ voor routers zijn vergelijkbaar met de filtertabellen die afzonderlijke apparaten ‘vertalen’ voor switches en bridges. Nadat de filtertabel is gemaakt op het laag-2 apparaat, stuurt het alleen frames door naar het segment waarin het doelhardwareadres zich bevindt. Als het bestemmingsadres zich op hetzelfde segment bevindt als het frame, zorgt het laag-2 apparaat dat het frame niet naar de andere segmenten wordt verzonden. Als de bestemming zich op een ander segment bevindt, wordt het frame alleen naar dat specifieke segment gestuurd, niet naar de overige. Dit heet transparent bridging. Als een interface van een switch een frame ontvangt met een doelhardwareadres dat niet in de filtertabel van het apparaat staat, wordt dit frame naar alle segmenten verzonden. Als een apparaat antwoord geeft op dit ‘onbekend’ frame, wordt de locatie van het apparaat vastgelegd in de filtertabel van de switch. Dit geldt niet als het doeladres van het verzonden frame een broadcast-adres is, de switch stuurt standaard alle broadcasts door naar alle segmenten. Alle apparaten waarnaartoe de broadcast wordt gestuurd, bevinden zich in hetzelfde broadcast-domein. Dit kan een probleem zijn – laag-2 apparaten geven broadcast-storms op laag 2 door, waardoor de prestaties hard teruglopen. De enige manier om een broadcast-storm over een internetwerk te stoppen is door een laag-3 apparaat in te zetten – een router. Het grootste voordeel van het gebruik van switches boven hubs in het internetwerk is dat iedere poort op de switch een eigen collision-domein vertegenwoordigt. Bij hubs bevindt alles zich in één groot collision-domein. Maar zelfs met een switch lukt het niet een broadcast-domein te onderbreken. Switches of bridges kunnen dat niet. Ze sturen gewoon alle broadcasts door. Een bijkomend voordeel van een geswitcht LAN in plaats van een LAN met hubs, is dat alle segment die met een switch zijn verbonden, tegelijk kunnen verzenden. Weer een voordeel van afzonderlijke collision-domeinen. U raadt het al: hubs ondersteunen slechts één zendend apparaat per netwerk tegelijk. Elk netwerksegment dat is verbonden met een switch, moet van hetzelfde soort zijn. Dit betekent dat u een Ethernet-hub aan een poort van switch kunt koppelen en dan weer verschillende Ethernet-hosts aan de hub, maar het is niet mogelijk Token Ringhosts in hetzelfde segment te plaatsen met Ethernet-apparaten. Het op deze manier mixen van hosts heet media translation, en volgens Cisco is daar een router voor nodig.
De laag Physical En helemaal onderaan is er dan nog de laag Physical layer. Deze is belast met twee dingen: bits versturen en bits ontvangen. Bits hebben altijd de waarde 1 of 0 – een
24
Hoofdstuk 1 • Internetwerken
Morsecode met getallen. De laag Physical communiceert direct met de verschillende soorten communicatiemedia. Verschillende soorten media gebruiken verschillende manieren om de bitwaarden aan te geven. Sommige gebruiken verschillende toonhoogten; anderen gebruiken state transitions – veranderingen in voltage van laag naar hoog en andersom. Voor elk soort media is een specifiek protocol nodig dat beschrijft hoe de bitpatronen moeten worden gebruikt, hoe gegevens worden geconverteerd in mediasignalen en wat de verschillende mogelijkheden van de interfaces van de media zijn. De laag Physical legt de elektrische, mechanische, procedurele en functionele eisen vast voor het activeren, onderhouden en deactiveren van een fysieke verbinding tussen eindsystemen. Op deze laag wordt ook het verschil gemaakt tussen Data Terminal Equipment (DTE), en Data Circuit-Terminating Equipment (DCE). De DCE bevindt zich meestal bij de service provider, terwijl de DTE het gekoppelde apparaat is. De diensten die beschikbaar zijn voor de DTE worden meestal benaderd via een modem of door Channel Service Unit/Data Service Unit (CSU/DSU). De connectoren en verschillende topologieën zijn door het OSI gedefinieerd als standaard, waardoor ongelijke systemen toch kunnen communiceren. Voor het CCNA-examen hoeft u alleen de Ethernet-standaarden te kennen. Hubs op de laag Physical Hubs zijn eigenlijk repeaters met meer poorten. Een repeater (herhaler) ontvangt een digitaal signaal en versterkt of regenereert dat signaal en stuurt het door naar alle actieve poorten zonder naar de gegevens te kijken. Een actieve hub doet precies hetzelfde. Ieder digitaal signaal dat wordt ontvangen op een segment aan een poort van de hub, wordt versterkt en door alle poorten weer naar buiten verstuurd. Dit betekent dat alle apparaten die aan de hub zijn gekoppeld, zich in hetzelfde collisiondomein en in hetzelfde broadcast-domein bevinden. Net als repeaters kijken hubs niet naar het verkeer dat binnenkomt en weer wordt doorgestuurd. Elk apparaat dat is aangesloten op de hub (of hubs) moet luisteren of er een apparaat aan het zenden is. Het soort topologie dat een hub maakt is een fysiek sternetwerk – een netwerk waarbij de hub het centrale apparaat is en er aan alle kanten kabels uitkomen. Visueel lijkt het ontwerp echt op een ster, terwijl Ethernetnetwerken een logische bustopologie hebben. Dit betekent dat de signalen van het ene uiteinde naar het andere uiteinde van het netwerk moeten lopen.
1.4 Ethernet-netwerken Ethernet is een mediatoegangsmethode waarbij alle hosts op een netwerk dezelfde bandbreedte van een verbinding kunnen gebruiken. Ethernet is populair omdat het gemakkelijk schaalbaar is. Dit betekent dat het relatief eenvoudig is nieuwe
Studiegids Cisco CCNA
25
technologieën als FastEthernet en Gigabit Ethernet te integreren in een bestaande netwerkinfrastructuur. Het is sowieso al eenvoudig te implementeren en probleemoplossing is relatief gemakkelijk. Ethernet gebruikt specificaties op zowel de laag Data Link als Physical. Dit gedeelte van dit hoofdstuk geeft u de informatie over de lagen Data Link en Physical die u nodig hebt om een Ethernet-netwerk efficiënt te kunnen implementeren, onderhouden en de problemen ermee op te lossen. Ethernet-networking gebruikt Carrier Sense Multiple Access with Collision Detect (CSMA/CD), dat apparaten helpt de bandbreedte gelijk te delen zonder dat twee apparaten tegelijkertijd aan het zenden zijn over het netwerkmedium. CSMA/CD werd in het leven geroepen om het probleem met de collisions (botsingen) te verhelpen dat ontstaat als knooppunten (nodes) tegelijkertijd pakketten versturen. Goed botsingsmanagement is hard nodig want als een host aan het zenden is in een CSMA/CD-netwerk, ontvangen alle andere knooppunten op het netwerk die informatie en bekijken die. Alleen bridges en routers kunnen ervoor zorgen dat een transmissie over het hele internetwerk wordt verzonden! Hoe werkt dat CSMA/CD-protocol eigenlijk? Ongeveer zo: als een host wil zenden, controleert deze eerst of er een digitaal signaal op de lijn aanwezig is. Als alles leeg is (niemand is aan het zenden), gaat de host door met zenden. Maar daar houdt het niet op. De zendende host controleert steeds de lijn om te zien of er geen andere hosts zijn begonnen met zenden. Als de host een ander signaal op de lijn ontdekt, stuurt deze een jam-signaal uit waardoor alle knooppunten op het segment zullen stoppen met zenden (een soort ingesprektoon). De knooppunten (nodes) reageren op het jam-signaal door een tijdje te wachten voordat ze nogmaals proberen te zenden. Backoff-algoritmen bepalen wanneer de botsende stations opnieuw kunnen zenden. Als er na 15 keer proberen nog steeds collisions voorkomen, geven de knooppunten die proberen te zenden het op en genereren een foutmelding. Netjes toch!
In een 802.3-netwerk is backoff de vertraging die wordt opgelegd als er collisions optreden.
1.4.1
Half duplex en full duplex-Ethernet De half duplex Ethernet-standaard ligt vast in de oorspronkelijke 802.3-Ethernetstandaard en gebruikt slechts één aderpaar waarbij een digitaal signaal beide kanten op door de kabels loopt. Het CSMA/CD-protocol wordt gebruikt om collisions te voorkomen en om hertransmissies mogelijk te maken als zich toch een collision voordoet. Als een hub is aangesloten op een switch, moet de hub in half duplexmodus werken omdat de eindstations in staat moeten zijn collisions te herkennen. Half duplex-Ethernet – meestal 10BaseT – haalt volgens Cisco een efficiëntie van hooguit
26
Hoofdstuk 1 • Internetwerken
50 tot 60 procent; een groot 10BaseT-netwerk biedt meestal niet meer dan 3- tot 4Mbps. Bij full duplex-Ethernet worden twee aderparen gebruikt, dit in tegenstelling tot half duplex, waarbij één paar actief is. En full duplex maakt gebruik van een point-topointverbinding tussen de zender en de ontvanger. Over collisions wordt niet moeilijk gedaan omdat het nu lijkt op een snelweg met meerdere rijstroken in tegenstelling tot de enkele rijbaan bij half duplex. Full duplex-Ethernet wordt geacht 100 procent efficiënt te zijn in beide richtingen; u zou dus snelheden moeten kunnen halen van 20Mbps bij een 10Mbps-Ethernet of 200Mbps bij FastEthernet –geweldig! Helaas is dit een theoretische waarde, ‘zou moeten kunnen’ valt in werkelijkheid vaak tegen. Net als in het echte leven zijn er in de netwerkwereld geen garanties.
Full duplex-Ethernet vereist een point-to-pointverbinding als er slechts twee knooppunten (nodes) aanwezig zijn.
Waarom komt al die snelheid dan niet echt tevoorschijn? Dat komt doordat als een full duplex-Ethernetpoort wordt ingeschakeld, er eerst een verbinding wordt opgezet naar het andere eindpunt en vervolgens wordt er onderhandeld over de FastEthernetlink. Dit mechanisme heet autodetectie. Eerst wordt er gekeken naar de uitwisselingscapaciteit, of er op 10 of op 100 Mbps wordt gecommuniceerd. Daarna wordt gekeken of full duplex mogelijk is; als dit niet zo is wordt half duplex gebruikt.
Het is verstandig uw switches en hosts handmatig te configureren op 100Mbps, full duplex indien mogelijk. Het autodetectiemechanisme in FastEthernet werkt niet altijd even goed.
1.4.2
Ethernet op de laag Data Link Ethernet op de laag Data Link is verantwoordelijk voor Ethernet-adressering, vaak ook wel hardwareadressering of MAC-adressering genoemd. Ethernet is tevens verantwoordelijk voor het in frames plaatsen van pakketten die worden ontvangen van de laag Network en het klaarmaken van deze frames voor verzending door het lokale netwerk via de Ethernet contention media access-methode (mediatoegang voor Ethernet). Er zijn vier verschillende soorten Ethernet-frames: • Ethernet_II • IEEE 802.3
27
Studiegids Cisco CCNA
• IEEE 802.2 • SNAP In de volgende subparagrafen krijgen de verschillende Ethernet-frames de aandacht die ze verdienen.
Ethernet-adressering Kijkt u nu nog eens hoe Ethernet-adressering precies werkt. Hierbij wordt het Media Access Control (MAC)-adres gebruikt. Het adres is hard in elke verkochte Ethernet Network Interface Card (NIC) gecodeerd. Het MAC- of hardwareadres, is een adres van 48 bits (6 bytes) dat in hexadecimaal formaat wordt genoteerd. In figuur 1.11 ziet u 48-bit MAC-adressen en hoe de bits in het adres zijn verdeeld. Figuur 1.11
Ethernet-adressering met MAC-adressen 24 bits 47
46
I/G
I/G
Organizationally Unique Identifier (OUI) (Toegewezen door IEEE)
24 bits
Door fabrikant toegewezen
De Organizationally Unique Identifier (OUI) (unieke identificatie van de organisatie) wordt door de IEEE aan een organisatie toegekend. Deze bestaat uit 24 bits, ofwel 3 bytes. De organisatie geeft een wereldwijd beheerd adres uit (24 bits of 3 bytes) dat uniek is (in theorie in ieder geval – alweer geen garanties) aan elke adapter die ze fabriceren. Kijk eens goed naar de figuur en dan met name naar bit 46. Bit 46 moet 0 zijn als het een bit is dat door de fabrikant is ingesteld, en 1 als de lokale netwerkbeheerder het bit heeft ingesteld.
Ethernet-frames De laag Data Link is verantwoordelijk voor het omzetten van bits in bytes en van bytes in frames. Frames worden door de laag Data Link gebruikt om pakketten die door de laag Network worden afgegeven, in te kapselen voordat ze worden verzonden naar de fysieke media. Er zijn drie soorten mediatoegangmethoden: contention (Ethernet), token passing (Token Ring en FDDI), en pollen (IBM Mainframes en 100VG Anylan). Het CCNA-examen gaat voornamelijk over Ethernet (contention) mediatoegang – en dit boek daarom ook.
28
Hoofdstuk 1 • Internetwerken
De functie van Ethernet-stations is het aan elkaar doorgeven van gegevensframes met behulp van een groep bits die bekend staat als een MAC-frame formaat. Dit ondersteunt error-detectie (foutherkenning) met behulp van een cyclic redundancy check (CRC). Onthoud dat dit error-detectie is, geen correctie. De 802.3-frames en Ethernet-frames worden getoond in figuur 1.12.
Inkapseling (encapsulation) van een frame in een ander type frame wordt tunneling genoemd.
De volgende punten geven de belangrijkste verschillen weer tussen 802.3-frames en Ethernet-frames. Preamble Een alternerend 1,0-patroon vormt een 5MHz-klok aan het begin van ieder pakket. Hierdoor kan het ontvangende apparaat de aanstormende stroom bits vasthouden. De preamble gebruikt een SFD of synch-veld om aan het ontvangende station door te geven dat het gegevensgedeelte van het bericht volgt. Start Frame Delimiter (SFD)/Synch Het SFD is 1,0,1,0,1,0, enzovoort, en het synch-veld bestaat uit allemaal enen. De preamble en de SFD/synch-velden zijn 64 bits lang. Figuur 1.12
Formaten voor 802.3- en Ethernet-frames
Ethernet_II Preamble 8 bytes
DA 6 bytes
SA 6 bytes
Type 2 bytes
Data
FCS 4 bytes
802.3_Ethernet Preamble 8 bytes
DA 6 bytes
SA 6 bytes
Lengte 2 bytes
Data
FCS
Destination Address (doeladres – DA) Dit zendt een 48-bit waarde met het Least Significant Bit (LSB – minst significante bit) voorop. Het DA wordt gebruikt door de ontvangende stations om te zien of een binnenkomend pakket voor het lokale station bedoeld is. Het doeladres kan een individueel adres zijn, maar ook een broadcast- of multicast MAC-adres.
Studiegids Cisco CCNA
29
Onthoud dat een broadcast bestaat uit allemaal enen (of F’s in hex) en wordt verstuurd aan alle apparaten, terwijl multicast alleen naar een bepaald gedeelte van de knooppunten (nodes) op een netwerk gestuurd wordt.
Hex is een afkorting voor hexadecimaal, een getalsysteem dat naast de traditionele decimale cijfers ook de eerste zes letters uit het alfabet gebruikt (A tot en met F). Het hexadecimale stelsel kent in totaal 16 ‘cijfers’.
Source Address (bronadres – SA) Het SA is een 48-bit MAC-adres dat wordt gebruikt ter identificatie van het zendende apparaat, waarbij de Least Significant Bit (LSB) het eerst komt. Broadcast- en multicast-adresformaten zijn niet mogelijk in het veld SA. Het veld Lengte of Type 802.3 gebruikt een veld Length, terwijl het Ethernet-frame een veld Type gebruikt om het protocol op de netwerklaag aan te duiden. 802.3 kan het protocol uit de hogere laag niet herkennen en moet worden gebruikt met een LAN van een bepaald merk (een proprietary LAN), zoals IPX. Data (gegevens) Dit is een pakket dat vanuit de laag Network naar de laag Data Link wordt verstuurd. De grootte kan variëren van 46 - 1500 bytes. Frame Check Sequence (FCS) FCS is een veld aan het einde van het frame dat wordt gebruikt om de cyclic redundancy check (CRC) in op te slaan. Neem even pauze en kijk eens naar een stel frames die zijn onderschept door onze Etherpeek netwerk-analyzer. U ziet dat het volgende frame maar drie velden bevat: een doel, een bron, en een veld type. Dit is een Ethernet_II-frame. Merk op dat het veld type gelijk is aan IP, of 08-00 in hexadecimaal. Destination: 00:60:f5:00:1f:27 Source: 00:60:f5:00:1f:2c Protocol Type:08-00 IP
Het volgende frame bevat dezelfde velden, het moet dus ook een Ethernet_IIframe zijn. Dit voorbeeld wordt gegeven om te laten zien dat het frame veel meer kan bevatten dan alleen IP – ook IPX, of 81-37h is mogelijk. Ziet u dat dit frame een broadcast is? Dit is duidelijk doordat het doelhardwareadres bestaat uit allemaal F’s in hexadecimaal (allemaal enen in decimaal).
30
Hoofdstuk 1 • Internetwerken Destination: ff:ff:ff:ff:ff:ff Ethernet Broadcast Source: 02:07:01:22:de:a4 Protocol Type:81-37 NetWare
Let nu goed op het veld Length in het volgende frame. Dit moet een 802.3-frame zijn. Het probleem met dit frame is het volgende: hoe weet u nu welk protocol dit pakket gaat behandelen op de laag Network? Dit staat niet in het frame, het moet dus wel IPX zijn. Waarom? Omdat toen Novell het frametype 802.3 bedacht (voordat de IEEE dit overnam en het 802.3 Raw noemde), Novell eigenlijk de enige was die LANservers maakte. Novell ging er dus vanuit dat als u met een LAN werkt, u dus ook IPX gebruikt. Logische conclusie is dan dat het dan ook niet nodig is om in de 802.3standaard een veld op te nemen dat protocolinformatie bevatte voor de laag Network. Flags: 0x80 802.3 Status: 0x00 Packet Length:64 Timestamp: 12:45:45.192000 06/26/1998 Destination: ff:ff:ff:ff:ff:ff Ethernet Broadcast Source: 08:00:11:07:57:28 Length: 34
802.2 en SNAP Het Ethernet-frame 802.3 kan zelf niet aangeven welk netwerkprotocol in de hogerliggende laag wordt gebruikt. Daarom zijn er wat hulpmiddelen nodig. De IEEE definieerde de 802.2 LLC-specificaties om deze functie te bieden en nog wat meer. In figuur 1.13 ziet u de frametypes IEEE 802.3 met LLC (802.2) en Subnetwork Architecture Protocol (SNAP). Figuur 1.13
802.2 en SNAP
802.2 (SNAP) 1
1
1 of 2
3
2
Variabel
Doel SAP AA
Bron SAP AA
Ctrl 03
OUI ID
Type
Data
802.2 (SAP) 1
1
1 of 2
Variabel
Doel SAP
Bron SAP
Ctrl
Data
Studiegids Cisco CCNA
31
In figuur 1.13 ziet u hoe de LLC-headerinformatie wordt toegevoegd aan het gegevensgedeelte van het frame. Kijk nu eens naar een 802.2-frame en bestudeer een SNAP-frame dat is opgevangen door de analyzer. 802.2-frame Onderstaand is een 802.2-frame afgedrukt dat met een protocolanalyzer is opgevangen. U ziet dat het eerste frame een veld Length bevat, het is dus waarschijnlijk een 802.3, toch? Misschien. Kijk nog eens: er is ook een DSAP en een SSAP, het is dus geen 802.3. Het moet wel een 802.2-frame zijn. (Onthoud dat een 802.2-frame is een 802.3-frame met de LLC-informatie in het veld Data van de header zodat duidelijk is wat het protocol van de hogere laag is.) Flags: 0x80 802.3 Status: 0x02 Truncated Packet Length:64 Slice Length: 51 Timestamp: 12:42:00.592000 03/26/1998 Destination: ff:ff:ff:ff:ff:ff Ethernet Broadcast Source: 00:80:c7:a8:f0:3d LLC Length: 37 Dest. SAP: 0xe0 NetWare Source SAP: 0xe0 NetWare Individual LLC Sublayer Management Function Command: 0x03 Unnumbered Information
SNAP-frame Het SNAP-frame heeft een eigen protocol-veld om het protocol van de hogerliggende laag aan te duiden. Dit is een manier om een Ethernet_II Ether-Type-veld te gebruiken in een 802.3-frame. Hoewel de volgende netwerk-trace een protocolveld aangeeft, is het eigenlijk een Ethernet_II typeveld (ether-type). Flags: 0x80 802.3 Status: 0x00 Packet Length:78 Timestamp: 09:32:48.264000 01/04/2000 802.3 Header Destination: 09:00:07:FF:FF:FF AT Ph 2 Broadcast Source: 00:00:86:10:C1:6F LLC Length: 60 802.2 Logical Link Control (LLC) Header Dest. SAP: 0xAA SNAP Source SAP: 0xAA SNAP Command: 0x03 Unnumbered Information Protocol: 0x080007809B AppleTalk
U herkent een SNAP-frame aan het feit dat de DSAP- en SSAP-velden altijd AA zijn, en het veld Command is altijd 3. Dit type frame is ontwikkeld omdat niet alle
32
Hoofdstuk 1 • Internetwerken
protocollen goed overweg konden met het 802.3 Ethernet-frame, dat geen veld Ethertype bevat. De IEEE ontwikkelde het SNAP-formaat om het voor toepassingsontwikkelaars mogelijk te maken hun eigen protocollen te kunnen inpassen in het LLC-frame. SNAP wordt niet veel gebruikt; alleen voor AppleTalk en fabriekseigen (proprietary) frames. Cisco gebruikt nog steeds een SNAP-frame in hun eigen protocol Cisco Discovery Protocol (CDP), dat in hoofdstuk 7 aan bod komt.
1.4.3
Ethernet op de laag Physical Ethernet werd voor het eerst geïmplementeerd door een groep met de naam DIX (Digital, Intel en Xerox). Zij ontwikkelden en implementeerden de eerste Ethernet LAN-specificatie, die door de IEEE werd gebruikt voor de oprichting van het IEEE 802.3 Committee. Het was een 10Mbps-netwerk dat gebruik maakte van coax, twisted-pair of glasvezel. De IEEE breidde het 802.3 Committee uit met twee nieuwe commissies, die 802.3u (FastEthernet) en 802.3z (Gigabit Ethernet) heten. Beide standaarden zijn gespecificeerd voor de fysieke media twisted-pair en glasvezel. In figuur 1.14 ziet u de specificaties voor de laag Physical van IEEE 802.3 en de Ethernet-specificaties. Ethernet-specificaties voor de laag Physical Data Link (MAC layer)
100BaseT4
100BaseFX
100BaseTX
10BaseF
10BaseT
10Base5
10Base2
Physical
802.3
Ethernet
Figuur 1.14
Bij het ontwerpen van een LAN is het belangrijk te weten welke soorten Ethernetmedia er beschikbaar zijn. Natuurlijk, Gigabit Ethernet naar iedere desktop en 10Gbps tussen switches zou geweldig zijn, en misschien kan dat op een gegeven moment ook wel allemaal, maar het wordt onmogelijk om de kosten hiervoor in de netwerkwereld van vandaag te verantwoorden. Door handig gebruik te maken van de verschillende Ethernet-mediamethoden die beschikbaar zijn, kunt u echter een kosteneffectief netwerk bouwen dat uitstekende prestaties levert. De EIA/TIA (Electronic Industries Association en de jongere Telecommunications Industry Association) is de standaardiseringinstantie die de standaarden bepaalt voor de Ethernet-specificaties voor de laag Physical. De EIA/TIA specificeert dat Ethernet een registered jack (RJ) connector (geregistreerde connector) gebruikt met een 4 5 draadvolgorde op unshielded twisted-pair (UTP) kabels (RJ-45).
Studiegids Cisco CCNA
33
Dit zijn de oorspronkelijke IEEE 802.3-standaarden: 10Base2 10Mbps, baseband-technologie, maximale lengte 185 meter. Bekend als thinnet en ondersteuning van maximaal 30 werkstations per segment. Gebruikt een fysieke en logische bus met AUI-connectoren. De 10 betekent␣ 10Mbps, Base betekent baseband-technologie, en de 2 betekent ‘bijna 200 meter’.
10Base2 Ethernet-kaarten maken gebruik van BNC (British Naval Connectors) en TConnectors om verbinding te leggen met het netwerk.
10Base5 10Mbps, baseband-technologie, maximale lengte 500 meter. Bekend als thicknet. Gebruikt een fysieke en logische bus met AUI-connectoren. Tot 2.500 meter met repeaters en 1.024 gebruikers in alle segmenten. 10BaseT 10Mbps met categorie 3 unshielded twisted-pair bekabeling (UTP). In tegenstelling tot 10Base2- en 10Base5-netwerken moet ieder apparaat verbonden zijn met een hub of switch en kan er slechts één host per kabelsegment zijn. Gebruikt een RJ-45 connector met een fysieke stertopologie en een logische busstructuur.
De ‘Base’ in de hiervoor genoemde netwerkstandaarden betekent ‘baseband’.
Elk van de 802.3-standaarden bevat een definitie voor een Attachment Unit Interface (AUI). Deze transporteert een bit per keer vanuit de laag Data Link naar de laag Physical. Hierdoor kan de MAC constant blijven terwijl de laag Physical ondersteuning kan bieden voor alle bestaande en nieuwe technologieën. De oorspronkelijke AUI-interface bestond uit een 15-pins connector, waarop een transceiver (transmitter/receiver) kon worden aangesloten. Deze maakte de conversie mogelijk naar twisted-pairbekabeling. Tegenwoordig bevat de AUI een ingebouwde transceiver en worden voornamelijk RJ-45 connectoren gebruikt. Het lastige is namelijk dat de AUI-interface de 100Mbps Ethernet-snelheden niet aankan doordat er zeer hoge frequenties worden gebruikt. Voor 100BaseT was er dus een nieuwe interface nodig en de 802.3u-specificaties zorgden voor de Media Independent Interface (MII – mediaonafhankelijke interface), die ondersteuning biedt voor de doorvoersnelheid van 100Mbps. De MII gebruikt een nibble, gedefinieerd als vier bits. Gigabit Ethernet gebruikt een Gigabit Media Independent Interface (GMII) die acht bits groot is.
34
Hoofdstuk 1 • Internetwerken
802.3u (FastEthernet) is compatible met 802.3 Ethernet: beide hebben dezelfde fysieke kenmerken. FastEthernet en Ethernet gebruiken dezelfde Maximum Transmission Unit (MTU), dezelfde Media Access Control (MAC) –mechanismen en behouden hetzelfde frameformaat dat wordt gebruikt door 10BaseT Ethernet. Eigenlijk is FastEthernet gebaseerd op een uitbreiding van de IEEE 802.3-specificatie en wordt de snelheid met een factor 10 opgevoerd in vergelijking met 10BaseT. Hier zijn de uitgebreide IEEE Ethernet 802.3-standaarden: 100BaseTX EIA/TIA categorie 5, 6 of 7 UTP bedrading met twee paren. Een gebruiker per segment; maximale lengte 100 meter. Het gebruikt een RJ-45 MII-connector met een fysieke stertopologie en een logische busstructuur. 100BaseFX Gebruikt glasvezelbekabeling met 62,5/125-micron multimode-glasvezel. Point-topoint-topologie; maximaal 400 meter lang. Gebruikt een ST- of SC-connector, duplex media-interface-connectoren. 1000BaseCX Twisted-pair, met koper afgeschermd; maximale lengte slechts 25 meter. 1000BaseT Categorie 5, vierparige UTP-bekabeling van maximaal 100 meter lang. 1000BaseSX MMF met 62,5 and 50-micron kern; gebruikt een 780-nanometer laser met maximale lengte van 260 meter. 1000BaseLX Single-mode glasvezel met 9-micron kern, 1300-nanometer laser en maximale lengte van 3 km tot 10 km.
100VG-AnyLAN is een twisted-pairtechnologie die het eerst op de markt kwam als 100Mbps LAN. Omdat het incompatible was met Ethernet signaaltechnieken (het maakte gebruik van een demand priority toegangsmethode), was het niet populair en wordt nu vrijwel niet meer gebruikt.
1.5 Data encapsulation (gegevensinkapseling) Wanneer een host gegevens over het netwerk naar een ander apparaat stuurt, worden op elke laag van het OSI-model de gegevens ingekapseld (encapsulated) met
35
Studiegids Cisco CCNA
protocolinformatie. Elke afzonderlijke laag communiceert alleen met de dezelfde laag op het ontvangende apparaat. Voor communicatie en gegevensuitwisseling gebruiken de verschillende lagen Protocol Data Units (PDUs). Deze bevatten de beheerinformatie die op elke laag van het model wordt toegevoegd aan de gegevens. Meestal worden de PDUs aan de header van het gegevensveld gekoppeld, maar het kan ook in de trailer. Elke PDU wordt toegevoegd aan de gegevens door middel van inkapseling op de verschillende lagen van het OSI-model. Elke unit heeft een specifieke naam, afhankelijk van de informatie die wordt vermeld in elke header. Deze PDU-informatie wordt alleen gelezen door de corresponderende laag van de ontvanger. Ze worden gelezen en vervolgens verwijderd, waarna de gegevens naar de bovenliggende laag worden doorgegeven. Figuur 1.15 toont de PDUs en de manier waarop ze beheerinformatie op elke laag toevoegen. Dit figuur geeft weer hoe de gebruikersgegevens op de bovenste laag worden geconverteerd voor verzending over het netwerk. De gegevensstroom wordt doorgegeven naar de laag Transport, die een virtueel circuit opbouwt met de ontvanger door een synch-pakket te sturen. De gegevensstroom wordt vervolgens in kleinere stukken gehakt en er wordt een Transportlaagheader (een PDU) gemaakt en aan de header van het veld data geplakt. De gegevens heten nu segment. Elk segment krijgt een volgnummer, zodat de gegevensstroom aan de ontvangende kant in dezelfde volgorde kan worden gereconstrueerd. Figuur 1.15
Gegevensinkapseling (encapsulation) Application
PDU
Presentation Gegevens bovenste laag
Session
Gegevens bovenste laag
Transport
IP-header
Gegevens
Network
Packet
LLC-header
Gegevens
FCS
Data Link
Frame
Gegevens
FCS Physical
Bits
TCP-header
MAC-header
0101110101001000010
Segment
Elk segment wordt vervolgens doorgegeven aan de laag Network voor netwerkadressering en routering door het internetwerk. Logische adressering (bijvoorbeeld IP) wordt gebruikt om elk segment naar het juiste netwerk te zenden. Het protocol op de Networklaag voegt een beheerheader toe aan het van de laag
36
Hoofdstuk 1 • Internetwerken
Transport verkregen segment en wat er nu ontstaat is een packet of datagram. Onthoud dat de lagen Transport en Network samenwerken om de gegevensstroom op de ontvanger te reconstrueren, maar het is niet een van hun taken om PDU’s op het lokale netwerksegment te plaatsen – en dat is de enige manier om de informatie naar een router of de ontvanger te transporteren. De laag Data Link is wel verantwoordelijk voor het aannemen van pakketten van de laag Network en moet deze op het netwerkmedium (kabel of draadloos) te plaatsen. De laag Data Link kapselt elk pakket in een frame en de header van het frame bevat het hardwareadressen van de zender en de ontvanger. Als het ontvangende apparaat zich op een netwerk op afstand bevindt, wordt het frame naar een router gestuurd, die het doorstuurt via het internetwerk. Als het frame eenmaal is aangekomen op het doelnetwerk, wordt een nieuw frame gebruikt om het pakket naar de eindbestemming te brengen. Het frame kan pas op het netwerk geplaatst worden als het is omgezet in een digitaal signaal. Een frame is niets anders dan een logisch gerangschikte groep enen en nullen. De laag Physical is verantwoordelijk voor het inkapselen van deze getallen in een digitaal signaal dat door apparaten op hetzelfde netwerk kan worden gelezen. De ontvangende apparaten synchroniseren met het digitale signaal en halen de nullen en enen eruit. Op dit moment bouwen de apparaten de frames weer op en voeren een cyclic redundancy check (CRC) uit. Het antwoord wordt vergeleken met de waarde in het FCS-veld van het frame. Als de waarden kloppen, wordt het pakket uit het frame gehaald en het frame wordt weggegooid. Dit proces heet de-encapsulation (uitpakken). Het pakket wordt doorgegeven aan de laag Network, waar het adres wordt gecontroleerd. Als het adres correct is, wordt het segment uit het pakket gehaald en wordt het pakket weggegooid. Het segment wordt verwerkt op de laag Transport, waar de gegevensstroom wordt gereconstrueerd en een bevestiging wordt verzonden naar de zender dat alle elementen zijn ontvangen. Vervolgens wordt de gegevensstroom overhandigd aan de toepassing in de bovenliggende laag. Bij een zendend apparaat werkt de gegevensinkapseling (encapsulation) als volgt: 1. Gebruikersinformatie wordt geconverteerd naar data voor verzending over het netwerk. 2. Data wordt geconverteerd naar segmenten en er wordt een betrouwbare verbinding opgezet tussen de zendende en ontvangende host. 3. Segmenten worden geconverteerd naar pakketten of datagrammen en er wordt een logisch adres in de header geplaatst zodat elk pakket door een internetwerk gerouteerd kan worden. 4. Pakketten of datagrammen worden geconverteerd naar frames voor verzending over het lokale netwerk. Hardware- (Ethernet-)adressen worden gebruikt om de hosts op het lokale netwerksegment een unieke identificatie te geven. 5. Frames worden geconverteerd naar bits en een digitale codering en klokschema worden toegepast.
Studiegids Cisco CCNA
37
1.6 Bekabeling van het Wide Area Network Er zijn een paar dingen (nou ja, net iets meer dan een paar, maar een mens moet tenslotte ergens beginnen) die u moet weten om een wide area network (WAN) aan te sluiten. U moet begrijpen hoe Cisco de WAN Physical-laag heeft geïmplementeerd en verder moet u bekend zijn met de verschillende soorten seriële WAN-connectoren. Het grootste gedeelte van de stof die hier behandeld wordt heeft dan ook te maken met de bekabelingvereisten van ISDN BRI-verbindingen. Seriële verbindingen van Cisco ondersteunen vrijwel elk type WAN-dienst. De typische WAN-verbindingen zijn huurlijnen met High-Level Data Link Control (HDLC), Point-to-Point Protocol (PPP), Integrated Services Digital Network (ISDN) en Frame Relay. De meest gebruikte snelheden liggen tussen 2.400bps en 1.544Mbps (T1).
Al deze soorten WAN worden in hoofdstuk 10 in detail behandeld.
HDLC, PPP en Frame Relay kunnen gebruik maken van dezelfde specificaties voor de laag Physical, maar ISDN heeft een andere pinvolgorde en andere specificaties voor de laag Physical.
1.6.1
Seriële transmissies Seriële WAN-connectoren gebruiken seriële transmissies, die bit voor bit plaatsvinden over één kanaal. Parallelle transmissies kunnen minimaal 8 bits tegelijkertijd verzenden, maar alle WANs maken gebruik van seriële transmissies. Cisco-routers maken gebruik van een fabriekseigen 60-polige seriële connector die u bij Cisco of een verkoper van Cisco-apparatuur moet aanschaffen. Het type connector dat aan de andere kant van de lijn wordt gebruikt, hangt af van de apparatuur die de service provider of het eindapparaat gebruikt. De verschillende eindstukken die te krijgen zijn: EIA/TIA-232, EIA/TIA-449, V.35 (voor aansluiting op een CSU/DSU), X.21 (voor in X.25) en EIA-530. Seriële verbindingen worden geclassificeerd naar frequentie of naar cycli-perseconde (hertz). De hoeveelheid gegevens die binnen die frequenties kan worden overgedragen, heet bandbreedte (bandwidth). Bandbreedte is de hoeveelheid gegevens (gemeten in bits-per-seconde) die door het seriële kanaal kan worden opgenomen.
38
Hoofdstuk 1 • Internetwerken
1.6.2
Data Terminal Equipment en Data Communication Equipment Router-interfaces zijn standaard Data Terminal Equipment (DTE) en ze worden standaard aangesloten op Data Communication Equipment (DCE) als een Channel Service Unit/Data Service Unit (CSU/DSU). De CSU/DSU wordt vervolgens in een grenslocatie geplaatst (demarcation location – demarc), en daar houdt de verantwoordelijkheid van de service provider op. Meestal is de demarc een plug met een RJ-45 vrouwtjesconnector die vlak bij uw apparatuur is geplaatst. U hebt de term grenslocatie of demarc vast wel eens gehoord als u ervaring hebt met rapporteren van problemen bij een service provider – die beweren namelijk altijd dat tot aan de demarc alles goed gaat en dat het probleem zich dus moet voordoen op apparatuur van de klant (CPE – Customer Premise Equipment). Met andere woorden: uw probleem, niet dat van de service provider. Het idee achter een WAN is dat het mogelijk is twee DTE-netwerken te verbinden via een DCE-netwerk. Het DCE-netwerk omvat de CSU/DSU via de kabels en switches van de provider helemaal naar de CSU/DSU aan de andere kant. Het DCEapparaat van het netwerk verzorgt het klokken voor de aan de DTE gekoppelde interface (de seriële interface van de router).
1.6.3
Vaste en modulaire interfaces Sommige van de routers die door Cisco worden aangeboden, zijn uitgerust met vaste interfaces; andere zijn modulair opgebouwd. De vaste routers, zoals de 2500-serie, zijn uitgerust met vaste interfaces die niet kunnen worden gewijzigd. De 2501-router heeft twee seriële connectoren en een 10BaseT AUI-interface. Als u een interface van een derde partij wilt gebruiken, moet u een andere router kopen – oef! Gelukkig zijn de 1600, 1700, 2600, 3600 en hogere routertypen allemaal uitgerust met een modulaire interface, waardoor u de benodigde interface kunt aanschaffen en later ook weer veranderen. De 1600 en 1700 zijn beperkt en bevatten zowel vaste als modulaire poorten, maar vanaf de 2600 zijn er mogelijkheden voor verschillende seriële interfaces, FastEthernet, en zelfs spraakmodules!
1.6.4
Integrated Services Digital Network (ISDN) verbindingen Integrated Services Digital Network (ISDN) Basic Rate Interface (BRI) bestaat uit twee B-kanalen (Bearer) van ieder 64Kb en een D-kanaal (Data) van 16Kb voor signalering en klokken. ISDN BRI-routers zijn uitgerust met een U-interface of een S/T-interface. Het verschil is dat de U-interface voldoet aan de ISDN-standaard en rechtstreeks aan de
Studiegids Cisco CCNA
39
ISDN-bus kan worden gekoppeld. De S/T-interface bestaat echter uit vier draden en moet worden aangesloten via een Network Termination type 1 (NT␣ 1) die voor de conversie van vierdradig naar de tweedradige ISDN-standaard zorgt. De U-interface heeft een ingebouwde NT␣ 1. Als uw service provider een NT␣ 1apparaat gebruikt, moet u een router aanschaffen met een S/T-interface. De meeste Cisco-router BRI-interfaces zijn gemarkeerd met een U of met S/T. Vraag Cisco of uw hardwareleverancier als u twijfelt.
Primary Rate Interface (PRI) biedt T1-snelheid (1.544Mbps) in de V.S. en E1-snelheid (2.048) in Europa. Omdat dit niet relevant is voor de CCNA-certificering wordt hierop in dit boek niet verder ingegaan. Zie CCNP Routing Study Guide (Sybex, 2001) als u meer informatie wilt over PRI.
De ISDN BRI-interface gebruikt een rechte RJ-45 categorie 5-kabel. Let op dat u geen consolekabel of netwerkkabel in de BRI-interface van een router stopt; u kunt de interface beschadigen. Cisco beweert dat deze kapot zal gaan, maar in de praktijk komt dit soort vergissingen regelmatig voor en voor zover bekend is er nog nooit een router gesneuveld. De goden verzoeken … als u er op rekent dat het wel zal meevallen, zult u zien dat het mis gaat.
1.7 Consoleverbindingen Alle Cisco-apparaten worden geleverd met consolekabels en connectoren, waarmee u het apparaat kunt aansluiten en configureren, verifiëren en monitoren. De kabel die wordt gebruikt om het apparaat op een pc aan te sluiten, is een kruiskabel (crossoverkabel) met RJ-45-connectoren. De pinvolgorde voor de kruiskabel zijn als volgt: 1–8 2–7 3–6 4–5 5–4 6–3 7–2 8–1 Het komt erop neer dat u een rechte RJ-45-kabel neemt, het einde eraf snijdt, de kabel omdraait en er een nieuwe connector op zet. Meestal zult u de DB9-connector – die levert Cisco standaard mee met een router of switch – gebruiken om aan een COM-poort van uw pc te koppelen en via
40
Hoofdstuk 1 • Internetwerken
HyperTerminal te communiceren. Hoewel de meeste Cisco-apparaten nu RJ-45 consoleverbindingen ondersteunen, maken de switches uit de Catalyst 5000-serie nog steeds gebruik van een DB25-connector. Stel het terminalemulatieprogramma in op 9.600bps, 8 data bits, geen pariteit, 1 stop bit en geen flow control. Bij sommige routers moet u ervoor zorgen dat het terminalemulatieprogramma een ‘domme’ VT100-terminal emuleert en dat deze niet in automatische modus staat, anders werkt het niet. De meeste routers beschikken ook over een aux poort (auxiliary) waarop u een modem kunt aansluiten. U kunt dan inbellen op het modem en verbinding maken met de router via de AUX-poort. Erg nuttig voor het oplossen van problemen; u krijgt toegang tot de console van de router op afstand die u niet op een andere manier kunt bereiken. De console-poort en AUX-poort vallen onder ‘out-of-band management’ (beheer buiten de bandbreedte) omdat u geen gebruik maakt van het netwerk voor het configureren van de router. Een Telnet-verbinding wordt beschouwd als ‘in-band’, hiervoor maakt u wel gebruik van het netwerk.
1.8 Cisco-producten kiezen U kunt het juiste Cisco-product voor uw netwerk kiezen als u over de juiste informatie beschikt. U moet dus informatie inwinnen over de plaats waar de apparaten in de internetwerk-hiërarchie moeten gaan runctioneren. Vervolgens moet u afwegingen maken als installatiegemak, eisen aan poortcapaciteiten bekijken en andere mogelijkheden bestuderen. Als u werkt met bijkantoren of andere WAN-netwerken, moet u eerst uitzoeken welk type dienst beschikbaar is. U hebt nu eenmaal niets aan een enorm frame relaynetwerk als blijkt dat slechts de helft van de kantoren dit ondersteunt. Als u onderzoek hebt gedaan en hebt uitgezocht welke mogelijkheden er zijn bij uw provider, bent u in staat het Cisco-product te kiezen dat het best aan uw wensen tegemoetkomt. Meestal zijn er niet al te veel mogelijkheden: asynchrone inbelverbindingen, huurlijnen tot 1.544Mbps, frame relay en ISDN zijn de meest gebruikte WANtechnologieën. Maar momenteel maakt xDSL een enorme sprong en lijkt de snelste, betrouwbaarste en goedkoopste WAN-technologie te worden. Het is natuurlijk erg belangrijk de mate van gebruik in het oog te houden voordat u voor een bepaalde technologie kiest. Als gebruikers van het bijkantoor meer dan drie tot vier uur per dag verbinding hebben met het hoofdkantoor, kunt u het beste frame relay of een huurlijn inzetten. Als er minder vaak verbinding wordt gezocht, kan ISDN of zelfs een inbelverbinding voldoende zijn. In de volgende gedeelte worden de verschillende soorten hubs, routers en switches van Cisco die u kunt gebruiken bij het bouwen van een hiërarchisch netwerk besproken.
41
Studiegids Cisco CCNA
1.8.1
Cisco-hubs Het is nauwelijks denkbaar dat iemand Cisco belt en naar een hub vraagt, maar het schijnt toch te gebeuren want de apparaten worden nog verkocht ook. En Cisco levert een imposante lijst hubs. De lijst is zó lang dat er al snel verwarring ontstaat over de vele keuzemogelijkheden. Voordat u tot aanschaf van een hub overgaat, moet u weten – en dan niet zomaar weten; u moet het absoluut ongelooflijk zeker weten – welke gebruikers genoeg hebben aan een gedeeld 10 Mbps of 100 Mbps-netwerk. De kleinere modellen van Cisco ondersteunen alleen 10 Mbps, terwijl de wat uitgebreidere zowel 10- als 100Mbps automatisch schakelende poorten bevatten. De duurste modellen ondersteunen netwerkbeheer en consoleverbindingen. Maar als u geld uitgeeft aan een dure hub, bent u dan niet veel beter af met een switch? In figuur 1.16 ziet u de verschillende hubs die Cisco in het pakket heeft; al deze hubs zijn stackable (koppelbaar) zodat u de hoeveelheid beschikbare poorten kunt vergroten. Dit zijn de selectie-eisen waarop u een antwoord moet hebben: • Bedrijfseisen voor 10- of 100Mbps • Aantal poorten • Beheer • Gebruiksgemak
Figuur 1.16
Cisco-hubs Cisco FastHub400 Cisco FastHub300 Cisco FastHub200 Cisco FastHub100 Cisco 1528 Micro Hub 10/100 Cisco 1500 Micro Hub
42
Hoofdstuk 1 • Internetwerken
1.8.2
Cisco-routers Als iemand ‘Cisco’ tegen u zegt, denkt u dan aan hubs? Waarschijnlijk niet: u denkt natuurlijk aan routers. Cisco maakt de bekendste routers ter wereld – iedereen weet dat. Daarom is dit boek geschreven en daarom leest het nu. Punt uit! Het lijkt erop dat Cisco ongeveer iedere maand een nieuwe router uitbrengt – is u dat wel eens opgevallen? Zo niet, dan komt dat nog wel. Het is een echte uitdaging bij te houden wat de nieuwste Cisco is. Niet dat Cisco het erg zou vinden als u er een hobby van zou maken elk nieuw product aan te schaffen, maar uw accountant zou u villen! Deze fraaie producten lopen namelijk behoorlijk in de papieren en het is dan ook altijd een goed idee om in uw achterhoofd de gedachte ‘Welke mogelijkheden heb ik nu écht nodig voor mijn bedrijf?’ goed vast te houden. Dan raakt u niet al te enthousiast en houdt u ook nog uw baan als de baas de rekening krijgt gepresenteerd. Hebt u bijvoorbeeld werkelijk ondersteuning nodig voor IP, frame relay en VPN? Of IPX, AppleTalk en DECnet? Cisco heeft het allemaal – en nog veel meer. Ook spelen er andere overwegingen mee als de hoeveelheid beschikbare poorten en de interfacesnelheid. U vermoedde het al: hoger in de modellenlijn vindt u meer poorten en hogere snelheden. De nieuwe 12000-serie is bijvoorbeeld de eerste Gigabit Switch Router (GSR) en de functies, mogelijkheden en capaciteiten zijn ronduit verbijsterend! Raar maar waar: aan het modelnummer is ruwweg te zien wat een product zal kosten. Een gestripte switch uit de 12000-serie GSR zonder kaarten of voeding kost zo’n 12.000 Euro, maar dit kan oplopen tot een dikke ton voor een volgeladen systeem. (Erg jammer, want ik denk dat ik iedereen op kantoor ervan kan overtuigen dat we zo’n ding nodig en helaas wil ik toch echt een volgeladen systeem!) Nou ja, volgend jaar misschien. Vergeet niet uit te zoeken welk soort WAN-ondersteuning u wilt aanschaffen als u op zoek gaat naar een router. Een Cisco-router kunt u in elke gewenste variant krijgen, maar dan moet u wel eerst weten welke diensten er beschikbaar zijn voor uw locatie(s). In figuur 1.17 ziet u een aantal van de routers die Cisco op de markt zet. De router uit de Cisco 800-serie heeft de router uit 700-serie vrijwel helemaal vervangen omdat de 700-serie geen gebruik maakt van Cisco IOS. Misschien is het een goed idee dat Cisco snel stopt met de verkoop van de 700-serie omdat ze lastig zijn te configureren en beheren. De belangrijkste dingen waar u op moet letten bij het kiezen van de juiste Ciscorouter vindt u hier: • Schaal van benodigde routefuncties • Eisen aan hoeveelheid poorten en soort poorten • Capaciteit en prestaties • Gelijke gebruikersinterface
43
Studiegids Cisco CCNA Figuur 1.17
Cisco-routers Cisco 12000 GSR serie Cisco 7000 serie Cisco 4000 serie AS 5000 serie Cisco 3600 serie
Hoofdkantoren
Cisco 2600 serie Cisco 2500 serie Cisco 1600/1700 serie
Bijkantoren
Kleine bedrijven
Cisco 700/800 serie Kantoor aan huis
1.8.3
Cisco-switches Soms lijkt het alsof de prijzen voor switches per dag dalen. Kort geleden ontvingen netwerkspecialisten een e-mailtje van Cisco. Hierin werd aangekondigd dat de prijs van de switches uit de Catalyst 2900-serie met maar liefst 30 procent is gedaald. Een jaar of vier geleden kostte een 12-poorts 10/100 switchkaart voor de Catalyst 5000serie zo’n 15.000 euro. Een complete Catalyst 5000 met een 10/100-kaart en supervisor-module kost ongeveer 7.500 euro. Nu de prijzen behapbaar worden, is het veel gemakkelijker voor elkaar te krijgen om switches te gebruiken in het netwerk in plaats van hubs. In elke patch-kast zou toch minstens één switch moeten hangen. En wederom heeft Cisco een enorm assortiment switches waarmee u aan iedere eis kunt voldoen. Maar net als bij het aanschaffen van een router, moet u bepalen of u 10/100 of 1000Mbps voor elke desktop nodig hebt. Als u verbinding moet leggen tussen twee switches is ATM (asynchronous transfer mode) ook een optie, alhoewel, Gigabit Ethernet is verkrijgbaar en 10Gbps-links zullen binnenkort beschikbaar
44
Hoofdstuk 1 • Internetwerken
komen. Zit u dan nog te wachten op ATM? Het volgende criterium is wederom het aantal poorten. Kleinere modellen beginnen bij 12 poorten en de zwaarste modellen kunnen honderden geswitchte poorten per switch bevatten. In figuur 1.18 wordt de switch-lijn van Cisco getoond. Een lijstje met overwegingen voor als u een switch gaat aanschaffen: • Bedrijfseisen voor 10, 100 of zelfs 1.000Mbps • Behoefte aan trunking en koppelingen tussen switches • Segmentering van werkgroepen (VLANs) • Benodigd aantal poorten • Verschillende gebruikersinterfaces Figuur 1.18
Cisco Catalyst-switches Catalyst 8500 serie Catalyst 5000 serie
Catalyst 2900 serie Catalyst 3000 serie Catalyst 2900 serie XL Catalyst 1900/2820 serie Cisco 1548 Micro Switch 10/100
Werkstation/werkgroep
Patch-kast/backbone
Studiegids Cisco CCNA
45
1.9 Samenvatting Oef! Alsof dat er nooit een einde zou komen aan dit hoofdstuk. Maar het is gelukt: u bent er doorheen! U bent nu gewapend met een arsenaal aan basisinformatie waarop u uw certificering kunt gaan bouwen. In dit hoofdstuk werd begonnen met een bespreking van het OSI-model. Dit model bestaat uit zeven lagen die worden gebruikt om toepassingsontwikkelaars te helpen toepassingen te ontwikkelen die op elk systeem en ieder type netwerk werken. Elke laag heeft speciale taken en verantwoordelijkheden binnen het model om ervoor te zorgen dat betrouwbare verbindingen daadwerkelijk gemaakt kunnen worden. De details van de werking van de verschillende lagen is uitgelegd en u hebt gezien hoe Cisco de specificaties van het OSI-model interpreteert. Verder zijn verschillende apparaten gespecificeerd op de verschillende lagen van het OSI-model. U hebt gelezen over de verschillende soorten apparaten, kabels en connectoren die op de verschillende lagen worden gebruikt. Onthoud dat hubs apparaten zijn op de laag Physical en het digitale signaal herhalen naar alle segmenten behalve het segment waarvan het signaal afkomstig is. Switches segmenteren het netwerk met behulp van hardware-adressen en begrenzen collision-domeinen. Routers splitsen het broadcast-domein en gebruiken logische adressering om pakketten te versturen via een internetwerk. Cisco fabriceert een grote verscheidenheid aan routers, hubs en switches. De verschillende soorten producten van Cisco zijn besproken, opdat u een beter geïnformeerde beslissing kunt nemen bij het bouwen en aanschaffen van apparatuur voor uw internetwerk.
1.10 Kernbegrippen Voordat u aan het examen begint, moet u de volgende begrippen goed kennen: access layer (toegangslaag) Application layer (laag Toepassing) Application-Specific Integrated Circuits (ASICs) Basic Rate Interface (BRI) Bridge broadcast domain (broadcast-domein) Buffer Carrier Sense Multiple Access with Collision Detect (CSMA/CD)
46
Hoofdstuk 1 • Internetwerken
Channel Service Unit/Data Service Unit (CSU/DSU) core layer (kernlaag) Data Communication Equipment (DCE) data frame (gegevensframe) Data Link layer (laag Data Link) Data Terminal Equipment (DTE) distribution layer (distributielaag) encapsulation (inkapseling) Ethernet flow control Frame full duplex half duplex hiërarchische adressering hub Integrated Services Digital Network (ISDN) Layered architecture (gelaagde architectuur) Media Access Control (MAC) address (MAC-adres) Network layer (laag Network) Organizationally Unique Identifier (OUI) OSI (Open Systems Interconnection) model Physical layer (laag Physical) Presentation layer (laag Presentation) Protocol Data Units (PDUs) Registered jack (RJ) connector router Session layer simplex state transition switch
Studiegids Cisco CCNA
Thicknet Thinnet Transport layer (laag Transport) unshielded twisted-pair (UTP) wide area network (WAN) windowing
47
Internet-protocollen
Hoofdstuk
3
DIT HOOFDSTUK BEHANDELT ONDER MEER DE VOLGENDE CCNA EXAMENONDERWERPEN: ✓ OSI-referentiemodel & communicatie in lagen •
Beschrijven van de twee delen van netwerkadressering en het identificeren van deze delen in voorbeelden van protocoladressen.
✓ Netwerkprotocollen •
Beschrijven van de verschillende klassen IP-adressen (en subnetting).
•
Identificeren van de functies van het TCP/IP-protocol op de laag Network.
•
Identificeren van de door ICMP uitgevoerde functies.
H
et protocol Transmission Control Protocol/Internet Protocol (TCP/IP) werd ontwikkeld door het Amerikaanse Department of Defense (DoD – Ministerie van Defensie). Aanleiding was de wens te komen tot een situatie waarin gegevensintegriteit is gewaarborgd en warin communicatie blijft plaatsvinden, zelfs indien er een (wereld)oorlog zou uitbreken. Als het op de juiste manier is ontworden en geïmplementeerd, is een TCP/IP-netwerk betrouwbaar en kan het een stootje hebben. In dit hoofdstuk worden de protocollen in de TCP/IP-suite behandeld en verderop in dit boek leert u hoe u een prachtig TCP/IP-netwerk opzet – waarbij u uiteraard gebruik maakt van Cisco-routers. Kijk om te beginnen eens naar de DoD-versie van TCP/IP en vergelijk die versie en de bijbehorende protocollen met het OSI-referentiemodel. Dit model is in hoofdstuk 1 besproken. Als u de protocollen begrijpt die op de verschillende lagen van het DoDmodel worden gebruikt, bent u er klaa voor dieper in te gaan op IP-adressering en het subnetten van IP-netwerkadressen. IP-adressering en subnetting zijn eigenlijk niet moeilijk; er is alleen veel stof. Stof die u haarfijn moet begrijpen. Die stof wordt uitvoerig behandeld, zodat u iedere paragraaf steeds opnieuw kunt doorwerken totdat u echt het idee hebt dat u dat gedeelte van IP-adressering volledig beheerst. Uw uitdaging is het uit het blote hoofd subnetten van IP-adressen. Als u uw Ciscocertificering wilt halen, kunt u deze uitdaging maar beter aannemen!
Studiegids Cisco CCNA
93
3.1 TCP/IP en het DoD-model Het DoD-model is eigenlijk een gecomprimeerde versie van het OSI-model; het bestaat uit vier lagen in plaats van zeven: • De laag Process/Application • De laag Host-to-Host • De laag Internet • De laag Network Access Figuur 3.1 toont een vergelijking tussen het DoD-model en het OSIreferentiemodel. Zoals u ziet lijken de concepten sterk op elkaar, maar het aantal lagen verschilt en er worden andere namen gehanteerd.
Als in dit boek wordt gesproken over de verschillende protocollen in de IP-stack, zijn de lagen van het OSI en het DoD uitwisselbaar. Met andere woorden: de laag Internet en de laag Network beschrijven hetzelfde, net als de lagen Host-to-Host en Transport.
Figuur 3.1
De DoD- en OSI-modellen DoD-model
OSI-model Application
Process/ Application
Presentation Session
Host-to-Host
Transport
Internet
Network
Network Access
Data link Physical
Op de laag Process/Application van het DoD-model wordt een groot aantal protocollen geïntegreerd. Deze komen overeen met activiteiten en taken uit de drie bovenste lagen van het OSI-model (Application, Presentation en Session). De protocollen worden in de volgende paragrafen onder de loep genomen. De laag
Hoofdstuk 3 • Internet-protocollen
94
Process/Application definieert de protocollen voor communicatie tussen knooppunten (nodes) (deze protocollen worden door toepassingen op deze knooppunten gebruikt). Bovendien legt deze laag de specificaties van de gebruikersinterface vast. De laag Host-to-Host komt overeen met de functies van de laag Transport in het OSI. Deze laag biedt protocollen voor het opzetten van transmissiediensten voor toepassingen. Zaken als betrouwbare end-to-endcommunicatie en het verzorgen van foutloze overdracht van gegevens, pakket-sequencing en beheer van gegevensintegriteit worden eveneens op deze laag geregeld. De laag Internet correspondeert met de OSI-laag Network. Hier worden de protocollen bepaald die bij de logische transmissie van pakketten over het hele netwerk betrokken zijn. Deze laag verzorgt de adressering van hosts door deze een IPadres (Internet Protocol-adres) te geven en routeert de pakketten tussen verschillende netwerken. Verder wordt ook de communicatiestroom tussen twee hosts door deze laag beheerd. Onder in het DoD-model bevindt zich de laag Network Access, die de gegevensuitwisseling tussen de host en het netwerk bewaakt. Equivalent aan de lagen Data Link en Physical van het OSI-model zorgt de laag Network Access voor hardware-adressering en definieert de protocollen voor de fysieke overdracht van gegevens. Hoewel de DoD- en OSI-modellen qua concept en ontwerp sterk op elkaar lijken en gelijkende functies op gelijkende lagen bevatten, is de manier waarop deze functies worden uitgevoerd verschillend. In figuur 3.2 ziet u de TCP/IP-protocolsuite en hoe de protocollen gerelateerd zijn aan de lagen van het DoD-model. Figuur 3.2
De TCP/IP-protocolsuite DoD-model
Studiegids Cisco CCNA
3.1.1
95
De protocollen op de laag Process/Application In deze paragraaf worden de verschillende toepassingen en de in IP-netwerken meestgebruikte diensten beschreven. De volgende protocollen en toepassingen worden in deze paragraaf besproken: • Telnet • FTP • TFTP • NFS • SMTP • LPD • X Window • SNMP • DNS • BootP • DHCP
Telnet Telnet is de kameleon onder de protocollen – gespecialiseerd in terminalemulatie. Via Telnet kan een gebruiker op een externe machine (de Telnet-client) gebruikmaken van de bronnen op een andere machine (de Telnet-server). Telnet maakt dit mogelijk door de Telnet-server te laten geloven dat er een terminal direct op het lokale netwerk is aangesloten. Dit is dan eigenlijk een softwareprojectie – een virtuele terminal die kan communiceren met de gekozen externe host. De geëmuleerde terminals zijn altijd tekstmodus-terminals en kunnen geavanceerde procedures uitvoeren. Een voorbeeld hiervan is het weergeven van menu’s waarin de gebruiker een van de getoonde opties kan kiezen en op die manier toegang kan krijgen tot de server. Een gebruiker start een Telnet-sessie door een Telnetclientprogramma te starten en aan te loggen op de Telnet-server.
De naam Telnet is afgeleid van ‘telephone network’, omdat de meeste Telnet-sessies via telefoonlijnen tot stand werden gebracht.
Hoofdstuk 3 • Internet-protocollen
96
File Transfer Protocol (FTP) Het File Transfer Protocol (FTP) is het protocol waarmee u daadwerkelijk bestanden kunt overdragen; het protocol kan dit mogelijk maken tussen twee willekeurige machines. FTP is echter niet alleen een protocol, maar ook een programma. Als protocol wordt FTP gebruikt door programma’s. Als programma wordt het gebruikt door gebruikers die bestandstaken met de hand willen uitvoeren. FTP biedt toegang tot zowel bestanden als mappen en kan bepaalde soorten handelingen (zoals verplaatsen) uitvoeren op mappen. Net als met Telnet logt u in op de (FTP-)server, waarna u bestanden kunt overdragen. Het benaderen van een host via FTP is slechts de eerste stap. Gebruikers moeten vervolgens hun identificatie tonen. Deze identificatie bestaat doorgaans uit een gebruikersnaam en en wachtwoord. Beide worden beheerd door de systeembeheerder om op die wijze de toegang tot het systeem te beperken. Vaak is het mogelijk dit te omzeilen door gebruik te maken van de gebruikersnaam ‘anonymous’ (anonieme gebruiker). Keerzijde is wel dat de mate van toegang die u hiermee krijgt meestal beperkt is. De functies van FTP zijn beperkt tot het weergeven, kopiëren en manipuleren van mappen en bestanden, zelfs als een gebruiker FTP als programma gebruikt. Het is niet mogelijk bestanden op de externe host als programma te laten werken.
Trivial File Transfer Protocol (TFTP) Het Trivial File Transfer Protocol (TFTP) is de uitgeklede versie van FTP, dat wel erg nuttig is als u weet wat u wilt hebben en waar u dat kunt vinden. De geavanceerde functies van FTP als het bladeren door mappen (directory browsing) ontbreken. De enige functies zijn bestanden versturen en ontvangen. Ook op gegevensniveau is dit protocol lichter dan FTP; de verzonden gegevensblokken zijn veel kleiner en verder bestaat er geen authenticatiemechanisme als bij FTP. Het is dus een onveilig protocol, en er zijn dan ook maar weinig sites op Internet die de inherente beveiligingsrisico’s voor lief nemen.
Verderop in dit boek gebruikt u TFTP om een nieuw internetwerk operating system (IOS) naar een Cisco-router te downloaden.
Studiegids Cisco CCNA
97
Network File System (NFS) Network File System (NFS) is een juweel van een protocol dat is gespecialiseerd in het delen van bestanden. Via dit protocol kunnen twee verschillende soorten bestandssystemen met elkaar samenwerken. Het werkt als volgt: stel dat de NFSserversoftware wordt gedraaid op een NT-server, en de NFS-client op een Unix-host. NFS zorgt ervoor dat een gedeelte van het RAM van de NT-server wordt gebruikt om transparant Unix-bestanden op te slaan die dan weer door Unix-gebruikers kunnen worden gebruikt. Hoewel het NT-bestandssysteem en het Unix-bestandssysteem ongelijk zijn – andere hoofdlettergevoeligheid (case sensitivity), andere maximumlengte van bestandsnamen, afwijkende beveiliging, enzovoort – kunnen zowel Unix- als NT-gebruikers met hun eigen bestandssysteem een NFS-bestand op de normale manier benaderen.
Simple Mail Transfer Protocol (SMTP) Simple Mail Transfer Protocol (SMTP) wordt gebruikt om de vandaag de dag overal aanwezige behoefte aan e-mail te ondersteunen en maakt gebruik van een methode voor mailbezorging met wachtrijen (spooled of queued). Zodra een bericht wordt verzonden naar een bestemming, wordt het op een apparaat (een spooler, meestal een schijf) gezet. Dit apparaat fungeert als wachtkamer. De server-software op dit apparaat controleert de wachtrij regelmatig op berichten en plaatst een vigil (vlag). Als een bericht wordt ontdekt, wordt het bericht naar de bestemming verstuurd. SMTP wordt gebruikt om mail te verzenden; POP3 om mail te ontvangen.
Line Printer Daemon (LPD) Het LPD-protocol (Line Printer Daemon) is speciaal bedoeld voor het delen van printers. De LPD zorgt er in combinatie met het programma LPR (Line Printer) voor dat afdrukopdrachten gespooled kunnen worden en via TCP/IP naar de printers op het netwerk verstuurd worden.
X Window Specifiek ontworpen voor client-serverhandelingen bevat X Window een protocol voor het schrijven van client-servertoepassingen op basis van een grafische gebruikersinterface (graphical user interface – GUI). De gedachte is dat een programma – de client – op de ene computer draait en een programma op een andere computer opent via een window server.
Hoofdstuk 3 • Internet-protocollen
98
Simple Network Management Protocol (SNMP) Het Simple Network Management Protocol (SNMP) verzamelt en manipuleert waardevolle informatie over het netwerk. Gegevens worden verzameld door de apparaten op het netwerk regelmatig vanaf het beheerstation te ondervragen en bepaalde informatie prijs te laten geven. Als alles naar wens verloopt, ontvangt SNMP een zogenaamde baseline – een rapport met de operationele gegevens van een gezond netwerk. Dit protocol kan ook gebruikt worden als waakhond voor het netwerk, zodat beheerders snel op de hoogte gesteld worden van eventuele gebeurtenissen. Deze netwerkwaakhonden worden agents genoemd; als er vreemde dingen gebeuren stuurt een agent een waarschuwing (trap) naar het beheerstation.
Domain Name Service (DNS) Domain Name Service (DNS) wordt gebruikt voor de vertaling (resolution) van hostnamen, met name Internet-namen als www.routersim.com of www.mpcp.nl. Het is niet noodzakelijk DNS te gebruiken. U kunt in plaats van de host-naam ook het IP-adres van het apparaat opgeven waarmee u wilt communiceren. Een IP-adres identificeert een host op een netwerk, en ook op Internet. DNS is ontworpen om ons leven gemakkelijker te maken. Stel u het volgende voor: u wilt uw webpagina verhuizen naar een andere provider. Het IP-adres van de pagina zou veranderen en niemand zou weten wat het nieuwe adres is. DNS biedt de mogelijkheid een domeinnaam te gebruiken om een IP-adres aan te duiden. U kunt het IP-adres zo vaak veranderen als u wilt, en niemand zal ooit het verschil merken. DNS wordt gebruikt bij het vertalen (oplossen) van Fully Qualified Domain Names (FQDNs), zoals www.lammle.com en odd.lammle.com. Een FQDN is een hiërarchie die het mogelijk maakt op logische wijze een computersysteem terug te vinden op basis van de domeinnaam. Als u bijvoorbeeld de naam ‘todd’ wilt oplossen, moet u de FQDN odd.lammle.com typen of het achtervoegsel (de suffix, in dit voorbeeld lammle.com door uw pc of router laten toevoegen. Op een Cisco-router kunt u bijvoorbeeld de opdracht ip domain-name lammle.com gebruiken om aan ieder verzoek de suffix lammle.com toe te voegen. Als u dit niet doet, moet u de hele FQDN typen als u wilt dat DNS de naam in een nummer vertaalt.
Bootstrap Protocol (BootP) BootP betekent Bootstrap Protocol. Als een werkstation zonder schijven (diskless workstation) wordt aangezet, stuurt het een BootP-broadcast over het netwerk. Een BootP-server hoort het verzoek en zoekt het MAC-adres van de client op in het
Studiegids Cisco CCNA
99
bestand BootP. Als een corresponderende regel in het bestand wordt gevonden, stuurt de server het IP-adres naar de machine, evenals het bestand met behulp waarvan de machine moet starten – meestal via het TFTP-protocol. BootP wordt gebruikt door een diskless workstation voor de volgende informatie: • Het eigen IP-adres • Het IP-adres en de hostnaam van een server-machine • De naam van het startbestand dat in het geheugen moet worden geladen en worden uitgevoerd om op te starten BootP is een oud programma en wordt niet meer gebruikt, zult u zeggen? Nee hoor: BootP wordt nog steeds gebruikt, alleen heet het nu Dynamic Host Configuration Protocol, en daar gaan de volgende paragrafen over.
Dynamic Host Configuration Protocol (DHCP) Het Dynamic Host Configuration Protocol (DHCP) geeft IP-adressen uit aan hosts. Het vergemakkelijkt de administratie en werkt uitstekend in zowel kleine als vrij grote netwerken. Alle soorten hardware kunnen worden gebruikt als DHCP-server, ook een Cisco-router. DHCP verschilt van BootP: BootP geeft alleen een IP-adres aan hosts waarvan het hardware-adres met de hand is ingegeven in de BootP-tabel. U kunt DHCP beschouwen als een soort dynamische BootP. Maar BootP wordt ook gebruikt om een besturingssysteem te verzenden waarmee de host kan starten, en DHCP is hiertoe niet in staat. DHCP kan een heleboel informatie verschaffen aan een host als de host een IPadres aanvraagt bij de DHCP-server. Een overzicht van de informatie die een DHCPserver kan verstrekken: • IP-adres • Subnet-masker • Domeinnaam • Default gateway (routers) • DNS • WINS-informatie Een DHCP-server kan nog veel meer informatie geven, maar de elementen in deze lijst worden het meest gebruikt.
Hoofdstuk 3 • Internet-protocollen
100
3.1.2
De protocollen op de laag Host-to-Host Het belangrijkste doel van de laag Host-to-Host is het afschermen van de toepassingen op de hogere lagen van de complexe wereld van het netwerk. Deze laag zegt als het ware tegen de hoogste laag, “Geef mij de gegevenstroom nu maar, en geef me ook de instructies, dan zorg ik er wel voor dat de gegevens verstuurd kunnen worden.” In de volgende paragrafen worden de twee protocollen beschreven die op deze laag actief zijn: • Transmission Control Protocol (TCP) • User Datagram Protocol (UDP)
Transmission Control Protocol (TCP) Het Transmission Control Protocol (TCP) krijgt grote brokken gegevens van een toepassing en breekt deze op in segmenten. De segmenten krijgen een volgnummer, zodat het TCP-protocol op de ontvangende machine ze weer in de juiste volgorde achter elkaar kan plakken en kan doorgeven aan de doeltoepassing. Als alle segmenten zijn verzonden wacht TCP op de zendende host op een ontvangstbevestiging (acknowledgment, ACK) van het ontvangende einde van het virtuele circuit. Segmenten die niet worden bevestigd, worden dan opnieuw verstuurd. Voordat een zendende host begint met het versturen van segmenten, neemt het TCP-protocol van de zender contact op met het TCP-protocol van de ontvanger en brengt een verbinding tot stand. Dit heet een virtueel circuit en dit type communicatie wordt aangeduid als connection-oriented (verbindinggeoriënteerd). Tijdens deze eerste handshake stemmen de beide TCP-lagen eveneens af hoeveel gegevens verstuurd worden voordat TCP van de ontvanger een bevestiging terugstuurt. Als alle afspraken zijn gemaakt, is het pad geplaveid voor een betrouwbare communicatie. TCP is een full-duplex, verbindinggeoriënteerd, betrouwbaar en accuraat protocol, maar doordat aan al deze randvoorwaarden en eisen moet worden voldaan en er ook nog eens foutcontrole wordt uitgevoerd, is TCP behoorlijk gecompliceerd. Het levert dan ook een flinke belasting (overhead) op voor het netwerk. En omdat de netwerken van tegenwoordig vaak veel betrouwbaarder zijn dan die van vroeger, is deze toegevoegde betrouwbaarheid vaak niet nodig. TCP-segmentformaat De bovenste lagen sturen een gegevensstroom naar de protocollen op de transportlagen. Daarom wordt in dit deel uitgelegd hoe TCP een gegevensstroom segmenteert en gereedmaakt voor de laag Internet. De laag Internet routeert vervolgens de segmenten als pakketten door het internetwerk. De pakketten worden
Studiegids Cisco CCNA
101
overhandigd aan het protocol op de laag Host-to-Host van de ontvanger, dat de gegevensstroom weer reconstrueert en afgeeft aan de protocollen of toepassingen op de hogere lagen. In figuur 3.3 ziet u het formaat van een TCP-segment. In de figuur worden de verschillende velden in de TCP-header getoond. Figuur 3.3
TCP-segmentformaat Bit 0
Bit 15 Bit 16 Bronpoort (Source port: 16)
Bit 31
Bestemmingspoort (Destination port: 16)
Bevestigingsnummer (Acknowledgment number: 32) Lengte van de header (4)
Gereserveerd (6)
Code-bits (6)
Controlegetal (Checksum) (16)
20 bytes
Volgnummer (Sequence number: 32)
Window (16) Urgent (16)
Optie (Option: 0 of 32, indien aanwezig)
Gegevens (Data: variabel)
De TCP-header is 20 bytes lang. U moet begrijpen waartoe de verschillende velden in het TCP-segment dienen. Het TCP-segment bestaat uit de volgende velden: Source port (bronpoort) Het poortnummer van de host die de gegevens verstuurt. (Poortnummers worden verderop uitgelegd.) Destination port (bestemmingspoort) Het poortnummer van de gevraagde toepassing op de bestemmingshost. Sequence number (volgnummer) Plaatst de gegevens terug in de juiste volgorde en stuurt beschadigde of ontbrekende gegevens opnieuw. Het hele proces heet sequencing. Acknowledgment number (bevestigingsnummer) Bepaalt welk TCP-octet als volgende wordt verwacht. HLEN Header length (lengte van de header); het aantal 32-bits woorden in de header.
Hoofdstuk 3 • Internet-protocollen
102 Reserved (gereserveerd) Is altijd ingesteld op 0 (nul).
Code bits Beheerfuncties die worden gebruikt om een sessie op te zetten en te beëindigen. Window De venstergrootte (window) in octetten die de voor de zender acceptabel. Checksum De Cyclic Redundancy Check (CRC), omdat TCP de lagerliggende lagen niet vertrouwt en alles dubbel controleert. De CRC controleert de header en de gegevensvelden. Urgent pointer Geeft het einde van urgente gegevens aan. Option (optie) Stelt de maximale TCP-segmentgrootte in op 0 of 32 bits, indien aanwezig. Data (gegevens) Dit deel van het segment wordt – inclusief de headers van de bovenliggende lagen – doorgegeven aan het TCP-protocol op de laag Transport. Kijk eens naar een TCP-segment dat is opgevangen met een network-analyzer: TCP - Transport Control Protocol Source Port: 5973 Destination Port: 23 Sequence Number: 1456389907 Ack Number: 1242056456 Offset: 5 Reserved: %000000 Code: %011000 Ack is valid Push Request Window: 61320 Checksum: 0x61a6 Urgent Pointer: 0 No TCP Options TCP Data Area: vL.5.+.5.+.5.+.5 76 4c 19 35 11 2b 19 35 11 2b 19 35 112b 19 35 +. 11 2b 19 Frame Check Sequence: 0x0d00000f
Ziet u dat alles wat in dit segment is besproken, aanwezig is? Aan het aantal velden in de header kunt u afleiden dat TCP voor veel ballast (overhead) zorgt.
Studiegids Cisco CCNA
103
Ontwikkelaars van toepassingen kunnen kiezen voor efficiëntie boven betrouwbaarheid en de overhead beperken. Als zij dit willen, gebruiken ze het User Datagram Protocol, dat als alternatief voor TCP is gedefinieerd op de laag Transport.
User Datagram Protocol (UDP) Als u het User Datagram Protocol (UDP) met TCP vergelijkt, ziet UDP eruit als een vereenvoudigde versie van TCP. Het wordt ook wel een a thin protocol genoemd. Net als een dun persoon op een bankje in het park, neemt een thin protocol weinig ruimte – in dit geval bandbreedte – in beslag. UDP beschikt over minder toeters en bellen dan TCP, maar is erg nuttig bij het verzenden van informatie die niet per se betrouwbare aflevering vereist – en hierbij worden veel minder netwerkbronnen gebruikt. (UDP wordt uitgebreid besproken in Request For Comment 768.)
De Requests for Comments (RFCs) zijn een serie aantekeningen over Internet (oorspronkelijk ARPANET), waarmee in 1969 is begonnen. De aantekeningen gaan over veel verschillende aspecten van computercommunicatie, onder andere over netwerkprotocollen, procedures, programma’s en concepten maar bevatten soms ook verslagen van bijeenkomsten, meningen en soms zelfs humor.
Er zijn situaties waarin ontwikkelaars veel beter kunnen kiezen voor UDP dan voor TCP. De waakhond SMTP op de laag Process/Application is hiervan een goed voorbeeld. SNMP bewaakt het netwerk door steeds berichten te versturen en hiermee een gestage stroom updates en waarschuwingen over het netwerk te genereren, met name in grotere netwerken met veel apparaten. De overhead die nodig is voor het opzetten, instandhouden en afsluiten van TCP-verbindingen voor elk van deze kleine berichten zou een gezond netwerk volledig lam kunnen leggen! Een ander geval waarin beter gekozen kan worden voor UDP is als de betrouwbaarheid al op de laag Process/Application wordt geregeld. Network File System (NFS) zorgt zelf voor betrouwbaarheid, waardoor TCP zowel onpraktisch als overbodig wordt. Maar uiteindelijk ligt de keuze voor TCP of UDP bij de ontwikkelaar; niet bij de gebruiker die gegevens sneller wil kunnen transporteren. UDP ontvangt brokken gegevens van de hogere lagen en breekt die op in segmenten, niet in een gegevensstroom zoals TCP die krijgt. Net als bij TCP, geeft UDP de segmenten een volgnummer zodat gegevens op de bestemming in de juiste volgorde kunnen worden gezet. UDP plaatst de segmenten echter niet in de juiste volgorde en het maakt UDP ook niet uit in welke volgorde ze op de bestemming arriveren. UDP verstuurt de segmenten en vergeet ze vervolgens. Geen controle, geen vraag om bevestiging, de segmenten worden alleen verstuurd. Het heet dan ook een
Hoofdstuk 3 • Internet-protocollen
104
unreliable protocol (onbetrouwbaar protocol). Dat betekent niet dat UDP niet effectief is, het zegt alleen maar dat dit protocol zich niet bezighoudt met betrouwbaarheid. Verder zet UDP geen virtueel circuit op en neemt het ook geen contact op met de ontvanger voordat de gegevens worden verstuurd. Het is dan ook een connectionless protocol (verbindingloos protocol). UDP gaat ervan uit dat de toepassing zelf voor betrouwbaarheid zorgt en bemoeit zich daar verder niet mee. De keuze is aan de ontwikkelaar die gebruik wil maken van de Internet Protocol-stack: TCP voor betrouwbaarheid of UDP voor snellere gegevensoverdracht. UDP-segmentformaat In figuur 3.4 is duidelijk te zien hoe klein de overhead van UDP is in vergelijking met TCP (zie figuur 3.3). Neem de figuur goed in u op – ziet u er in dat UDP geen windowing en acknowledgements gebruikt? Figuur 3.4
UDP-segment Bit 0
Bit 15 Bit 16 Bronpoort (Source port: 16)
Bestemmingspoort (Destination port: 16) Controlegetal (Checksum) (16)
8 bytes
Lengte (16)
Bit 31
Data (indien aanwezig)
Het is belangrijk dat u weet wat de velden in een UDP-segment betekenen. Een UDP-segment bevat de volgende velden: Source port (bronpoort) Het poortnummer van de host die de gegevens verstuurt. Destination port (bestemmingspoort) Het poortnummer van de gevraagde toepassing op de bestemmingshost. Length (lengte) Lengte van de UDP-header en de UDP-gegevens. CRC Checksum (controlegetal) van zowel de UDP-header als de UDP-gegevensvelden. Data (gegevens) Gegevens van de hogerliggende lagen.
Studiegids Cisco CCNA
105
Net als TCP vertrouwt UDP de onderliggende lagen niet en gebruikt een eigen CRC. Onthoud dat het veld Frame Check Sequence (FCS) de CRC bevat, en dat u daarom de FCS-informatie kunt zien. Hier volgt een UDP-segment dat is opgevangen door de network-analyzer: UDP - User Datagram Protocol Source Port: 1085 Destination Port: 5136 Length: 41 Checksum: 0x7a3c UDP Data Area: ..Z............. 00 01 5a 96 00 01 00 00 00 00 00 11 00 00 00 ...C..2...._C._C 2e 03 00 43 02 1e 32 0a 00 0a 00 80 43 00 80 Frame Check Sequence: 0x00000000
Zo! Ziet u de overhead? Probeer het sequence-nummer, ack-nummer en de window-grootte in het UDP-segment terug te vinden. Dat lukt niet (hoop ik) omdat ze er gewoon niet zijn!
Kernbegrippen van de Host-to-Host-protocollen Nu u zowel een verbindinggeoriënteerd protocol (TCP) en een verbindingloos protocol (UDP) in actie hebt gezien, is het handig de twee samen te vatten. Onderstaand is een aantal kernbegrippen op een rijtje gezet. Op het examen moet u de volgende eigenschappen van beide protocollen kennen. TCP Sequenced Betrouwbaar Verbindinggeoriënteerd Virtueel circuit Drieweg-handshake Windowing flow-control
UDP Unsequenced Onbetrouwbaar Verbindingloos Lage overhead Geen acknowledgements (bevestigingen) Geen windowing of flow-control
Een analogie met een telefoon kan verduidelijkend werken. De meeste van ons weten dat je, voordat je tegen iemand over de telefoon kunt praten, eerst een verbinding tot stand moet brengen, ongeacht waar die persoon zich bevindt. Dit is vergelijkbaar met het virtuele circuit dat door het TCP-protocol wordt opgezet. Als u belangrijke informatie verstrekt tijdens het gesprek, zult u af en toe om bevestiging vragen: ‘Snapt u?’ of ‘Toch?’ Dit lijkt sterk op een TCP-acknowledgement – bedoeld om u te laten weten dat uw communicatiepartner u heeft begrepen. Met name als u
Hoofdstuk 3 • Internet-protocollen
106
met een mobiele telefoon belt, zult u af en toe vragen ‘Bent u er nog?’ Meestal wordt het gesprek beëindigd met ‘tot ziens’ of een soortgelijke beleefdheidsvorm. Daarna wordt de hoorn op de haak gelegd. TCP voert deze soort functies ook uit. UDP is eerder te vergelijken met een ansichtkaart. Het is niet nodig (of mogelijk) eerst contact op te nemen met de tegenpartij. U schrijft het bericht, adresseert de kaart en gooit deze in de brievenbus. Dit is identiek met het verbindingloze UDP. Omdat de melding op de kaart waarschijnlijk niet van levensbelang is, hebt u geen bevestiging nodig. UDP denkt er net zo over.
Poortnummers TCP en UDP maken gebruik van port numbers (poortnummers) om te communiceren met de bovenste lagen. Deze poorten scheiden de verschillende conversaties die tegelijkertijd over het netwerk worden gevoerd. Poortnummers van de zender (bronpoortnummers) worden dynamisch door de bronhost toegewezen en krijgen een nummer hoger dan 1.024. De poortnummers 1.023 en lager worden gedefinieerd in RFC 1700, waarin de zogeheten well-known port numbers (bekende poortnummers) worden gedefinieerd. Virtuele circuits die niet worden opgezet door een toepassing met een well-known port number krijgen een willekeurige poort uit een bepaald bereik toegewezen. Deze poortnummers identificeren de bron- en bestemmingshost in het TCP-segment. Figuur 3.5 geeft aan hoe TCP en UDP poortnummers gebruiken. Figuur 3.5
Poortnummers voor TCP en UDP Laag Application
FTP
Telnet
Doom
DNS
TFTP
POP3
News
21
23
666
53
69
110
144
Poortnummers Laag Transport
TCP
UDP
De volgende poortnummers kunnen worden gebruikt: • Nummers onder 1.024 zijn well-known port numbers (bekende poortnummers), die worden beschreven in RFC 1700. • Poortnummers 1.024 en hoger worden door de hogere lagen gebruikt om sessies op te zetten met andere hosts en door TCP als bron- en doeladres in het TCPsegment.
Studiegids Cisco CCNA
107
TCP-sessie: bronpoort In de volgende listing ziet u een TCP-sessie die is opgevangen met Etherpeek analyzersoftware. Merk op dat de bronhost de bronpoort bepaalt, in dit geval 5.973. De bestemmingspoort is 23, waardoor de ontvangende host het doel van de beoogde verbinding kent (Telnet). TCP - Transport Control Protocol Source Port: 5973 Destination Port: 23 Sequence Number: 1456389907 Ack Number: 1242056456 Offset: 5 Reserved: %000000 Code: %011000 Ack is valid Push Request Window: 61320 Checksum: 0x61a6 Urgent Pointer: 0 No TCP Options TCP Data Area: vL.5.+.5.+.5.+.5 76 4c 19 35 11 2b 19 35 11 2b 19 35 112b 19 35 +. 11 2b 19 Frame Check Sequence: 0x0d00000f
Aan de hand van deze sessie is duidelijk dat de bronhost (het zendende apparaat) de bronpoort bepaalt.Dit is natuurlijk nodig om het onderscheid te kunnen maken tussen sessies met andere hosts. Als het nummer er niet door de bronhost aan toegevoegd zou zijn, kan een server niet weten waar de gegevens vandaan komen. In tegenstelling tot de protocollen op de lagen Data Link en Network gebruiken TCP en de hogere lagen geen hardware-adressen of logische adressen om te zien wat het adres van de zendende host is. In plaats daarvan gebruiken ze poortnummers. En u kunt zich ongetwijfeld voorstellen hoe een ontvangende host in de war raakt als alle hosts hetzelfde poortnummer gebruiken voor FTP! TCP-sessie: bestemmingspoort Meestal zult u zien dat de gegevens die zijn opgevangen door een analyzer aangeven dat de bronpoort hoger is dan 1024 en dat de bestemmingspoort een well-known port is. Bekijk bijvoorbeeld het volgende voorbeeld van een Etherpeek-trace: TCP - Transport Control Protocol Source Port: 1144 Destination Port: 80 World Wide Web HTTP Sequence Number: 9356570
108
Hoofdstuk 3 • Internet-protocollen
Ack Number: 0 Offset: 7 Reserved: %000000 Code: %000010 Synch Sequence Window: 8192 Checksum: 0x57E7 Urgent Pointer: 0 TCP Options: Option Type: 2 Maximum Segment Size Length: 4 MSS: 536 Option Type: 1 No Operation Option Type: 1 No Operation Option Type: 4 Length: 2 Opt Value: No More HTTP Data Frame Check Sequence: 0x43697363
In dit voorbeeld is de bronpoort inderdaad hoger dan 1.024, maar de bestemmingspoort is 80, de HTTP-service. De server, ofwel de ontvangende host, kan indien gewenst de bestemmingspoort wijzigen. In de getoonde trace is een ‘syn’-pakket verzonden naar het doelapparaat. De syn sequence (het pakketje syn) vertelt de bestemming dat de bron een sessie wil opzetten. TCP-sessie: Syn Packet Acknowledgment (bevestiging van syn-pakketten) De volgende trace laat de bevestiging van het syn-pakket zien. Merk de ‘Ack is valid’ op. Dit betekent dat de bronpoort wordt geaccepteerd en dat het apparaat toestemt in het opzetten van een virtueel circuit met de bronhost: TCP - Transport Control Protocol Source Port: 80 World Wide Web HTTP Destination Port: 1144 Sequence Number: 2873580788 Ack Number: 9356571 Offset: 6 Reserved: %000000 Code: %010010 Ack is valid Synch Sequence Window: 8576 Checksum: 0x5F85 Urgent Pointer: 0 TCP Options: Option Type: 2 Maximum Segment Size
Studiegids Cisco CCNA
109
Length: 4 MSS: 1460 No More HTTP Data Frame Check Sequence: 0x6E203132
Ook hier ziet u weer in het antwoord van de server dat de bronpoort 80 is en dat als bestemmingspoort 1.144 wordt gebruikt. Dit is dezelfde poort als de poort die door de zendende host werd gebruikt – alles is in orde.
3.1.3
De protocollen op de laag Internet In het DoD-model zijn er twee redenen voor het bestaan van de laag Internet: routing en het bieden van een uniforme netwerkinterface aan de hogere lagen. Geen van de protocollen op de hogere of lagere lagen hebben functies die te maken hebben met routering. Die ingewikkelde en belangrijke taak is volledig toegewezen aan de laag Internet. De tweede functie van de laag Internet bestaat uit het bieden van één uniforme interface naar de protocollen op de hogere lagen. Zonder deze laag zouden toepassingsprogrammeurs ‘hooks’ moeten inbouwen in elke toepassing die gebruik maakt van het Network Access-protocol. Dit zou niet alleen vreselijk lastig zijn, maar ook leiden tot vele verschillende versies van elke toepassing – een voor Ethernet, een andere voor Token Ring, enzovoort. IP voorkomt dit door slechts één interface te gebruiken voor de hogere protocollen. Het is de taak van IP en de verschillende Network Access-protocollen om samen te werken en de zaak te regelen. Niet alle wegen leiden naar Rome –ze leiden naar IP. Alle andere protocollen op deze laag, en de hogere lagen, maken er gebruik van. Niet vergeten! Alle wegen door het DoD-model gaan door IP. In de volgende paragrafen worden de protocollen op de laag Internet beschreven: • Internet Protocol (IP) • Internet Control Message Protocol (ICMP) • Address Resolution Protocol (ARP) • Reverse Address Resolution Protocol (RARP)
Internet Protocol (IP) Het Internet Protocol (IP) is eigenlijk de laag Internet. De andere protocollen bestaan eigenlijk alleen maar om IP te ondersteunen. IP is het belangrijkst, en ‘ziet alles’; alle verbonden netwerken. Dit is mogelijk omdat alle machines op het netwerk een door software toegewezen (logisch) IP-adres hebben wordt aangeduid. Verderop wordt hierop nog uitgebreid teruggekomen.
Hoofdstuk 3 • Internet-protocollen
110
IP kijkt naar het adres van ieder pakket dat voorbijkomt. Vervolgens wordt aan de hand van een routetabel bepaald waar het pakket naar toe gestuurd moet worden, waarbij het beste pad wordt gekozen. De protocollen op de laag Network Access, onder in het DoD-model, beschikken niet over het overzicht dat IP heeft en bemoeien zich alleen met fysieke verbindingen (lokale netwerken). Om een apparaat op het netwerk te identificeren, moeten twee vragen worden beantwoord. Op welk netwerk bevindt het apparaat zich? En wat is het ID op dat netwerk? Het eerste antwoord is het software-, of logische adres (de juiste straat). Het tweede antwoord is het hardware-adres (de juiste brievenbus). Alle hosts in een netwerk hebben een logisch ID dat IP-adres heet. Dit software-adres (logisch adres) bevat belangrijke gecodeerde informatie die het routeren een stuk eenvoudiger maakt. (IP wordt beschreven in RFC 791.) IP ontvangt segmenten van de laag Host-to-Host en fragmenteert deze in datagrammen (pakketten). Aan de ontvangende kant reconstrueert IP de datagrammen terug in segmenten. Elk datagram krijgt het IP-adres van de zender en de ontvanger mee. Elke router (laag-3-apparaat) die een datagram ontvangt, maakt routeringsbeslissingen op basis van het bestemmings-IP-adres in het pakket. In figuur 3.6 ziet u een IP-header. Zo krijgt u een idee van de zaken die het IPprotocol allemaal moet regelen en doen als gebruikersgegevens van de hogere lagen naar een extern netwerk worden gestuurd. Figuur 3.6
IP-header Bit 15 Bit 16
Bit 0 Versie (4)
Lengte header(4)
Prioriteit en Type of Service (8)
Totale lengte (16)
Protocol (8)
Fragment offset (13)
Controlegetal header (Header checksum: 16)
IP-adres bron (32) IP-adres bestemming (32) Opties (0 or 32 indien aanwezig) Gegevens (Data, variabel, indien aanwezig)
20 bytes
Vlaggen (3)
Identificatie (16) Time to Live (8)
Bit 31
Studiegids Cisco CCNA
111
De IP-header bestaat uit de volgende velden: Version (versie) IP-versienummer. HLEN (lengte header) Lengte van de header in 32-bits woorden. Priority of ToS (prioriteit of type service) Type of Service geeft aan hoe het datagram moet worden verwerkt. De eerste drie bits geven de prioriteit aan. Total length (totale lengte) Lengte van het pakket inclusief header en gegevens. Identification (identificatie) Unieke IP-pakketwaarde. Flags (vlaggen) Geeft aan of fragmentatie moet optreden. Frag offset (offset fragmentatie) Biedt fragmentatie en zorgt voor reconstructie als het pakket te groot is om in een frame te passen. Maakt op het Internet verschillen mogelijk in Maximum Transmission Unit (MTU – maximale transmissie-eenheid). TTL TTL (Time to Live) is ingesteld in een pakket tijdens het aanmaken. Het geeft aan hoe lang het pakket geldig is (levensduur). Als het pakket niet op de bestemming is aangekomen voordat de TTL is verstreken, verdwijnt het. Dit mechanisme zorgt ervoor dat er niet steeds IP-pakketten over het netwerk blijven rondzweven op zoek naar hun bestemming. Protocol Poort van het protocol op de hogere laag (TCP is poort 6 en UDP is poort 17 [hex]). Header checksum Cyclic Redundancy Check (CRC) van de header. Source IP address (IP-adres van de bron) 32-bit IP-adres van het zendende station. Destination IP address (IP-adres van de bestemming) 32-bit IP-adres van het station waarvoor dit pakket bedoeld is. IP option (IP-optie) Wordt gebruikt voor het testen van het netwerk, beveiliging, en andere doelen.
Hoofdstuk 3 • Internet-protocollen
112 Data (gegevens) Gegevens van de hogere laag.
Hier volgt een IP-pakket dat met een netwerk-analyzer is opgevangen. U ziet dat alle bovenstaande informatie erin voorkomt: IP Header - Internet Protocol Datagram Version: 4 Header Length: 5 Precedence: 0 Type of Service: %000 Unused: %00 Total Length: 187 Identifier: 22486 Fragmentation Flags: %010 Do Not Fragment Fragment Offset: 0 Time To Live: 60 IP Type: 0x06 TCP Header Checksum: 0xd031 Source IP Address: 10.7.1.30 Dest. IP Address: 10.7.1.10 No Internet Datagram Options
Kunt u de logische IP-adressen in deze header terugvinden? Het veld Type is belangrijk – eigenlijk is het meestal een veld met de naam Protocol, maar deze analyzer ziet het als veld Type. Als de header de protocolinformatie voor de hogere laag niet zou bevatten, zou IP niet weten wat er moet gebeuren met de gegevens in het pakket. Het bovenstaande voorbeeld geeft aan dat IP de segmenten moet overhandigen aan TCP. Figuur 3.7 toont hoe de laag Network de protocollen op de laag Transport ziet als er een pakket moet worden doorgegeven aan de protocollen op de hogere lagen. Figuur 3.7
Het veld protocol in een IP-header
Laag Transport
TCP
UDP
6
17
Protocolnummers
Laag Internet
IP
Studiegids Cisco CCNA
113
In dit voorbeeld vertelt het veld Protocol aan IP dat de gegevens naar TCP op poort 6 of UDP op poort 17 moeten worden gestuurd (beide zijn hexadecimale adressen). Het kan echter alleen TCP of UDP zijn als de gegevens deel uitmaken van een gegevensstroom die bestemd is voor een service of toepassing op een hogere laag. Het pakket zou net zo goed bestemd kunnen zijn voor ICMP (Internet Control Message Protocol), ARP (Address Resolution Protocol), of een ander type protocol op de laag Network. In tabel 3.1 vindt u een lijst met een aantal populaire protocollen die kunnen worden opgegeven in het veld Protocol: Tabel 3.1
Mogelijke protocollen in het veld Protocol van een IP-header Protocol
Protocolnummer
ICMP IGRP IPv6 GRE IPX in IP
1 9 41 47 111
Layer-2 tunnel
115
Internet Control Message Protocol (ICMP) Het Internet Control Message Protocol (ICMP) is actief op de laag Network en wordt door IP gebruikt voor veel verschillende diensten. ICMP is een managementprotocol en berichtenaanbieder voor IP. De berichten zien eruit als IP-datagrammen. RFC 1256, ICMP Router Discovery Messages (IRDM), bevat een bijlage over ICMP, waarin de uitgebreide mogelijkheden van hosts wordt besproken die gebruikt kunnen worden voor het ontdekken van routes naar gateways. Periodiek worden router-advertisements (bekendmakingen) over het netwerk verstuurd, waarin IP-adressen van de netwerkinterfaces van de router zijn vermeld. Hosts luisteren naar deze bekendmakingen om aan route-informatie te komen. Een router solicitation is een verzoek onmiddellijk bekendmakingen rond te sturen; dit verzoek wordt bijvoorbeeld bij het starten door een host verzonden.
RFC 1700 gaat over ICMP en beschrijft hoe ICMP op alle TCP/IP-hosts moet worden geïmplementeerd.
114
Hoofdstuk 3 • Internet-protocollen
Onderstaand vindt u een aantal veel voorkomende gebeurtenissen en berichten die met ICMP te maken hebben: Destination Unreachable (bestemming onbereikbaar) Als een router een IP-datagram niet verder kan versturen, gebruikt deze ICMP om bericht terug te sturen aan de zender met een melding van de situatie. Als de router bijvoorbeeld een pakket ontvangt dat is bedoeld voor een netwerk dat de router niet kent, zal de router een ICMP Destination Unreachable-bericht terugsturen naar het zendende station. Buffer Full (buffer vol) Als de geheugenbuffer van een router, waarin de binnenkomende datagrammen worden opgeslagen vol is, wordt een ICMP-melding gegenereerd. Hops Elk IP-datagram mag een bepaald aantal routers (hops) passeren. Als het maximumaantal hops is bereikt en de bestemming is nog steeds niet gevonden, verwijdert de laatste router het datagram. Vervolgens stuurt de beul via ICMP een overlijdensbericht naar de zendende machine, zodat die weet wat er met het datagram gebeurt is. Ping Ping (Packet Internet Groper) gebruikt ICMP echo-meldingen om de fysieke bereikbaarheid van machines op een internetwerk te controleren. Traceroute Met behulp van ICMP-timeouts (tijdoverschrijdingen) kan Traceroute het pad volgen dat een pakket aflegt bij het doorkruisen van een internetwerk.
Zowel Ping als Traceroute (vaak ook gewoon Trace genoemd) kunnen u helpen adresconfiguraties in het internetwerk te controleren.
De volgende gegevens (een ICMP echo request) zijn opgevangen door een network analyzer. Bekijk ze eens – merkt u iets vreemds op? Ziet u dat, ondanks dat ICMP op de laag Internet werkt, ICMP toch IP gebruikt voor de Ping? Het veld Type in de IPheader is 0x01h. Dit staat voor het ICMP-protocol. Flags: 0x00 Status: 0x00 Packet Length:78 Timestamp: 14:04:25.967000 05/06/1998
Studiegids Cisco CCNA
115
Ethernet Header Destination: 00:a0:24:6e:0f:a8 Source: 00:80:c7:a8:f0:3d Ether-Type:08-00 IP IP Header - Internet Protocol Datagram Version: 4 Header Length: 5 Precedence: 0 Type of Service: %000 Unused: %00 Total Length: 60 Identifier: 56325 Fragmentation Flags: %000 Fragment Offset: 0 Time To Live: 32 IP Type: 0x01 ICMP Header Checksum: 0x2df0 Source IP Address: 100.100.100.2 Dest. IP Address: 100.100.100.1 No Internet Datagram Options ICMP - Internet Control Messages Protocol ICMP Type: 8 Echo Request Code: 0 Checksum: 0x395c Identifier: 0x0300 Sequence Number: 4352 ICMP Data Area: abcdefghijklmnop 61 62 63 64 65 66 67 68 69 6a 6b 6c 6d qrstuvwabcdefghi 71 72 73 74 75 76 77 61 62 63 64 65 66 Frame Check Sequence: 0x00000000
Het programma Ping gebruikt het alfabet in het gegevensgedeelte van het pakket als ‘lading’, die standaard tot 100 bytes groot kan zijn.
Als u nog weet hoe de laag Data Link en de verschillende frametypes uit hoofdstuk 1 in elkaar steken, kunt u aan de bovenstaande trace zien welk type Ethernet-frame dit is. De enige velden zijn de hardware-adressen van het doel en de bron en het Ether-type. Het enige frame dat gebruik maakt van een veld Ether-type is Ethernet_II. (SNAP gebruikt ook een veld Ether-type, maar alleen ingesloten in een 802.2 LLCveld en dat zit niet in dit frame.)
Hoofdstuk 3 • Internet-protocollen
116
Address Resolution Protocol (ARP) Het Address Resolution Protocol (ARP) zoekt het hardware-adres van een host waarvan het IP-adres bekend is. Het werkt als volgt: als IP een datagram wil verzenden, moet het hardware-adres van de bestemming op het lokale netwerk aan een protocol op de laag Network Access – zoals Ethernet of Token Ring – worden doorgegeven. (Het IP-adres van de bestemming is dan al doorgekregen van een van de protocollen op de hogere lagen.) Als IP het hardware-adres van de bestemming niet kan vinden in de ARP-cache, wordt ARP gebruikt om deze informatie te achterhalen. Als een soort detective voor IP ondervraagt ARP het lokale netwerk door een broadcast uit te sturen met het verzoek aan de machine met het bekende IP-adres om te antwoorden met het hardware-adres. Met andere woorden: ARP vertaalt het software (IP-)adres in een hardware-adres – bijvoorbeeld het Ethernet-adres van de netwerkkaart – en leidt daaruit de locatie van de machine af. In figuur 3.8 ziet u hoe ARP het lokale netwerk bekijkt: Figuur 3.8
Lokale ARP-broadcast
Mag ik het Ethernet-adres van 10.1.1.2 ?
Die broadcast heb ik gehoord. De boodschap is voor mij bedoeld. Hier is mijn Ethernet-adres.
10.1.1.1
10.1.1.2
IP: 10.1.1.2 = ??? IP: 10.1.1.2 Ethernet: 4523.7985.7734
ARP vertaalt IP-adressen in Ethernet-adressen.
In de volgende trace ziet u een ARP-broadcast. Merk op dat het hardware-adres van het doel niet bekend is (allemaal F-jes in hex – allemaal enen in binair) en dat het een broadcast met een hardware-adres is.
Studiegids Cisco CCNA
117
Flags: 0x00 Status: 0x00 Packet Length:64 Timestamp: 09:17:29.574000 01/04/2000 Ethernet Header Destination: FF:FF:FF:FF:FF:FF Ethernet Broadcast Source: 00:A0:24:48:60:A5 Protocol Type:0x0806 IP ARP ARP - Address Resolution Protocol Hardware: 1 Ethernet (10Mb) Protocol: 0x0800 IP Hardware Address Length: 6 Protocol Address Length: 4 Operation: 1 ARP Request Sender Hardware Address: 00:A0:24:48:60:A5 Sender Internet Address: 172.16.10.3 Target Hardware Address: 00:00:00:00:00:00 (ignored) Target Internet Address: 172.16.10.10 Extra bytes (Padding): ................ 0A 0A 0A 0A 0A 0A 0A 0A 0A 0A 0A 0A 0A 0A 0A 0A 0A 0A Frame Check Sequence: 0x00000000
Reverse Address Resolution Protocol (RARP) Als een IP-machine een werkstation zonder schijfeenheden is, weet de machine bij het starten niet wat zijn IP-adres is. Het MAC-adres is echter wel bekend. Het Reverse Address Resolution Protocol (RARP) achterhaalt de identiteit dat hoort bij het IP-adres van een schijfloze machines door een pakket uit te sturen dat het MAC-adres bevat en een verzoek om het IP-adres dat is toegekend aan dit MAC-adres. Een speciaal voor dit doel opgestelde machine, een zogeheten RARP-server, geeft antwoord en de identiteitscrisis is voorbij. RARP gebruikt de bekende informatie over het MAC-adres om een IP-adres te krijgen: daarmee is de identificatie van de machine compleet.
RARP vertaalt Ethernet-adressen in IP-adressen.
In figuur 3.9 ziet u hoe een werkstation zonder schijfeenheden een IP-adres aanvraagt met een RARP-broadcast.
Hoofdstuk 3 • Internet-protocollen
118 Figuur 3.9
Voorbeeld van RARP-broadcast
Die broadcast heb ik gehoord. Je IP-adres is 192.168.10.3
Wat is mijn IP-adres?
Ethernet: 4523.7985.7734 IP = ???? Ethernet: 4523.7985.7734 IP: 192.168.10.3
3.2 IP-adressering Een van de belangrijkste onderwerpen in welke discussie over TCP/IP dan ook, is de IP-adressering. Een IP-adres is een numerieke identificatie die aan een machine op een IP-netwerk wordt toegekend. Het geeft de specifieke locatie van een apparaat in een netwerk aan. Een IP-adres is een software-adres – geen hardware-adres. Een hardware-adres is gecodeerd in een network interface card (NIC – netwerkkaart) en wordt gebruikt voor het vinden van hosts op lokale netwerken. IP-adressering is ontworpen om communicatie met een host op een ander netwerk mogelijk te maken, ongeacht het type LAN waarvan de hosts deel uitmaken. Voordat dieper wordt ingegaan op de ingewikkelder aspecten van IP-adressering, moet u eerst de basisbegrippen onder de knie hebben. Eerst wordt iets verteld over de basis van IP-adressering en de gebruikte terminologie. Verderop wordt het hiërarchische IP-adresseringsschema besproken en als laatste komen subnetten aan de orde.
IP-adressering en subnetting kunt u alleen begrijpen als u kunt werken met binair-naardecimaalconversie en de machten van 2 (exponenten). Raadpleeg de kaders als u hulp nodig hebt bij deze onderwerpen.
Studiegids Cisco CCNA
3.2.1
119
IP-terminologie Door dit hele hoofdstuk heen hebt u een aantal zeer belangrijke begrippen geleerd. Begrippen die van belang zijn voor uw inzicht in het Internet Protocol. Hier is er weer een aantal: Bit Een getal; een 1 of een 0 (nul). Byte 7 of 8 bits, afhankelijk van de vraag of pariteit wordt gebruikt. Ga er voor de rest van dit hoofdstuk vanuit dat een byte bestaat uit 8 bits. Octet Altijd 8 bits. Base-8 adresseringsschema. Network address (netwerkadres) De aanduiding die wordt gebruikt bij routering om pakketten naar een extern netwerk te verzenden, bijvoorbeeld , 10.0.0.0, 172.16.0.0, en 192.168.10.0. Broadcast address (broadcast-adres) Gebruikt door toepassingen en hosts om informatie naar alle knooppunten (nodes) op een netwerk te verzenden. Voorbeelden zijn 255.255.255.255 (alle netwerken, alle nodes); 172.16.255.255, alle subnetten en hosts op netwerk 17.16.0.0; en 10.255.255.255, alle subnetten en hosts op netwerk 10.0.0.0.
3.2.2
Het hiërarchische IP-adresseringsschema Een IP-adres bestaat uit 32 bits met informatie. Deze bits zijn verdeeld in vier secties, die octets of bytes genoemd worden. Ieder octet bestaat uit 1 byte (8 bits). Een IPadres kan worden uitgedrukt op drie verschillende manieren: • Dotted-decimal (decimaal met punten), als in 172.16.30.56 • Binary (binair), als in 10101100.00010000.00011110.00111000 • Hexadecimal (hexadecimaal), als in AC 10 1E 38 Al deze voorbeelden heven hetzelfde IP-adres aan. Hexadecimaal wordt niet zo vaak gebruikt als dotted-decimal of binair, maar in sommige programma’s wordt een IP-adres hexadecimaal opgeslagen. Het Register van Windows is een bekend voorbeeld van een programma dat IP-adressen in hex opslaat. Het 32-bit IP-adres is een gestructureerd, hiërarchisch adres; dit in tegenstelling tot niet-hiërarchische, vlakke adressen. Hoewel beide soorten adressering hadden kunnen worden gebruikt, was er een goede reden om te kiezen voor de hiërarchische variant.
Hoofdstuk 3 • Internet-protocollen
120
Het voordeel van deze methode is dat er een groot aantal adressen mogelijk is, te weten 4,3 miljard (een 32-bit adresruimte met twee mogelijke waarden voor iedere positie – 0 of 1 – geeft 232, ofwel 4.294.967.296 miljoen). Het nadeel van het vlakke adresseringsschema en ook de voornaamste reden dat het niet gebruikt wordt voor IPadressering, heeft te maken met routering. Als alle adressen uniek zouden zijn, zouden de routers op Internet alle adressen van alle machines op het hele Internet moeten opslaan. Hierdoor zou routeren inefficiënt en waarschijnlijk zelfs onmogelijk worden, zelfs als maar een klein gedeelte van de mogelijke adressen zou worden toegepast. De oplossing hiervoor is de keuze voor een hiërarchisch adresseringsschema met twee of drie niveaus dat is gestructureerd per netwerk en host, of per netwerk, subnet en host. Dit schema met twee of drie lagen is te vergelijken met een telefoonnummer. Het eerste gedeelte, het landnummer, bestrijkt een groot gebied. Het tweede gedeelte, het kengetal, beperkt het gebied tot een stad of dorp. Het laatste segment, het abonneenummer bepaalt de precieze plaats van het toestel dat u belt. IP-adressen gebruiken dezelfde gelaagde structuur. Niet alle 32 bits worden beschouwd als unieke identifier (zoals bij vlakke adressering); een gedeelte van het aders is toegewezen als netwerkadres, een ander gedeelte is het subnet en host-adres of alleen het node-adres.
Netwerk-adressering Het netwerkadres is een unieke identificatie van een netwerk. Elke machine in hetzelfde netwerk deelt dat netwerkadres als onderdeel van zijn IP-adres. In het IPadres 172.16.30.56, bijvoorbeeld, is 172.16 is het netwerkadres. Het node address is toegewezen aan een machine op een netwerk en is een unieke identificatie. Dit gedeelte van het adres moet uniek zijn, omdat het een bepaalde machine aanduidt – een individu – en niet een heel netwerk; dat is een groep. Dit nummer kan ook aangeduid worden als host-adres. In het voorbeeld 172.16.30.56, is 30.56 het node-adres. De ontwerpers van Internet besloten netwerkklassen te maken op basis van netwerkgrootte. Voor een klein aantal netwerken met een groot aantal nodes, maakten ze Class A-netwerken. Het andere uiterste is het Class C-network,, een groep netwerken die gereserveerd zijn voor vele netwerken met een klein aantal knooppunten (nodes). De klassenindeling voor netwerken die er tussenin zitten is – hoe voorspelbaar – Class B network. De onderverdeling van een IP-adres in een netwerk- en nodegedeelte wordt bepaald door de klasse van het netwerk. In figuur 3.10 worden de drie klassen netwerken getoond – een onderwerp dat in de rest van dit hoofdstuk uitgebreid aan bod komt.
Studiegids Cisco CCNA
Figuur 3.10
121
Samenvatting van de drie klassen netwerken 8 bits
8 bits
8 bits
8 bits
Class A:
Network
Host
Host
Host
Class B:
Network
Network
Host
Host
Class C:
Network
Network
Network
Host
Class D:
Multicast
Class E:
Research
Om routering zo efficiënt mogelijk te maken, bedachten de Internet-ontwerpers een regel voor de eerste bits van het adres voor de verschillende netwerkklassen. Zo weet een router dat een klasse A-netwerk altijd begint met een 0. Zo kan de router na het lezen van de eerste bit van een adres het pakket al in de juiste richting versturen. Hier wordt in het adresschema het verschil bepaalt tussen de adresklassen A, B en C. Network Address Range: Class A (netwerkadresbereik: klasse A) De ontwerpers van Internet bedachten dat de eerste bit van de eerste byte in een klasse A-netwerk altijd uit moet zijn (een nul dus). Dit betekent dat een klasse A-adres tussen de 0 en 127 moet liggen. Bekijk het volgende netwerkadres: 0xxxxxxx
Als alle andere 7 bits eerst worden uitgeschakeld en vervolgens weer ingeschakeld worden, zien u het bereik van het klasse A-netwerk: 00000000=0 01111111=127
Een klasse A-netwerk is dus gedefinieerd in de eerste octet. Het ligt tussen 0 en 127: het kan niet meer zijn, maar ook niet minder. (Straks meer over ongeldige adressen.)
Als u moeite hebt met de binair-decimaalconversies, is het kader ‘Conversie tussen binair en decimaal’ het lezen waard.
Hoofdstuk 3 • Internet-protocollen
122
Conversie tussen binair en decimaal Voordat u verder kunt gaan met IP-adressering, moet u overweg kunnen met binaire getallen. Binaire getallen kunnen worden omgerekend naar de vertrouwde decimale getallen: de getallen waarmee u elke dag werkt. De conversie werkt als volgt: binaire getallen gebruiken acht bits om een decimaal getal te definiëren. Deze bits worden van links naar rechts gewogen, waarbij de waarde steeds wordt verdubbeld. Hier is een voorbeeld van acht bits en de waarde die aan elke bit is toegekend: 128
64
32
16
8
4
2
1
Een voorbeeld van binair naar decimaal-conversie: 128 0
64 0
32 1
16 0
8 0
4 1
2 1
1 0
Binaire waarde Byte in binair
Kijk naar de plaatsen waar op de onderste regel een 1 staat. De getallen die daarboven staan, zijn ingeschakeld. Tel de waarden bij elkaar van de ingeschakelde getallen: 32 4 2 =38
Steeds als een bit is ingeschakeld (een 1), voegt u de waarde toe van de positie van de bit. Nog een paar keer oefenen: 01010101=85 64 16 4 1 =85
Probeer het nu zelf eens: 00001111=15 10001100=140 11001100=204
De conversies in de volgende lijst kunt u het best uit het hoofd leren omdat u ze heel vaak zult toepassen, bijvoorbeeld bij de oefeningen over subnetten, verderop in dit hoofdstuk:
Studiegids Cisco CCNA
123
00000000=0 10000000=128 11000000=192 11100000=224 11110000=240 11111000=248 11111100=252 11111110=254 11111111=255
Network Address Range: Class B (netwerkadresbereik: klasse B) In een klasse B-netwerk, is in het RFC bepaald dat de eerste bit van de eerste byte altijd ingeschakeld moet zijn en dat de tweede bit altijd uitgeschakeld moet zijn. Als u de andere zes bits eerst uitschakelt, en vervolgens weer inschakelt, ziet u het bereik van een klasse B-netwerk: 10000000=128 10111111=191
Zoals u ziet, zijn klasse B-netwerken genummerd met de eerste byte tussen 128 en 191. Network Address Range: Class C (netwerkadresbereik: klasse C) Voor klasse C-netwerken is bepaald dat de eerste twee bits van het eerste octet zijn ingeschakeld, maar dat de derde bit altijd uitgeschakeld is. Hetzelfde proces als bij de klasse A- en B-netwerken levert het volgende bereik op voor een klasse C-netwerk: 11000000=192 11011111=223
Als u dus een IP-adres ziet dat begint met een nummer tussen 192 en 223, weet u dat het om een klasse C IP-adres gaat. Network Address Ranges: Classes D and E (netwerkadresbereiken: de klassen D en E) De adressen tussen 224 en 255 zijn gereserveerd voor klasse D- en E-netwerken. klasse D wordt gebruikt voor multicast-adressen (224-239) en klasse E (240-255) voor wetenschappelijke doeleinden. (Voor het examen hoeft u er ook verder niets van te weten).
Hoofdstuk 3 • Internet-protocollen
124
Network Addresses: Special Purpose (netwerkadressen: speciale doelen) Een aantal IP-adressen is gereserveerd voor speciale doeleinden. Een netwerkbeheerder kan die adressen nooit toewijzen aan nodes in het netwerk. In tabel 3.2 ziet u welke adressen lid zijn van dit kleine clubje en welke functie ze hebben. Tabel 3.2
Gereserveerde IP-adressen Adres
Functie
Netwerkadres bestaande uit allemaal nullen
Geïnterpreteerd als ‘dit netwerk of segment.’
Netwerkadres bestaande uit allemaal enen Netwerk 127.0.0.1
Geïnterpreteerd als ‘alle netwerken.’
Node-adres bestaande uit allemaal nullen Node-adres bestaande uit allemaal enen
Compleet IP-adres bestaande uit allemaal nullen Compleet IP-adres bestaande uit allemaal enen (hetzelfde als 255.255.255.255)
Gereserveerd voor loopback-testen. Geeft de lokale node aan (de machine zelf) en maakt het mogelijk dat een node zichzelf een pakket stuurt zonder netwerkverkeer te genereren. Geïnterpreteerd als ‘deze node.’ Geïnterpreteerd als ‘alle nodes’ op het aangegeven netwerk; 128.2.255.255 betekent bijvoorbeeld ‘alle nodes’ op netwerk 128.2 (klasse B-adres). Gebruikt door Cisco-routers om de standaardroute aan te geven. Broadcast naar alle nodes op het huidige netwerk; soms ‘all 1s broadcast’ genoemd.
Klasse A-adressen In een klasse A-netwerkadres is de eerste byte toegewezen aan het netwerkadres en de drie resterende bytes aan de node-adressen. Het klasse A-formaat is Netwerk.Node.Node.Node
In het IP-adres 49.22.102.70 is de 49 het netwerkadres en 22.102.70 het node-adres. Elke machine in dit netwerk heeft het unieke netwerkadres 49. Klasse A-netwerken zijn één byte lang, waarvan de eerste bit van die byte is gereserveerd en de zeven resterende bits beschikbaar zijn. Het gevolg is dat er
Studiegids Cisco CCNA
125
maximaal 128 klasse A-netwerken gemaakt kunnen worden. Waarom? Omdat elk van de zeven posities 0 of 1 kan zijn, waardoor er 27 ofwel 128 mogelijkheden zijn. Het wordt allemaal nog lastiger doordat het netwerkadres met allemaal nullen (0000 0000) is gereserveerd voor de standaardroute (zie tabel 3.2 in de vorige paragraaf). En verder is het adres 127 gereserveerd voor diagnostisch doeleinden, waardoor ook dit niet gebruikt kan worden. Het eindresultaat is dat alleen de getallen 1 tot en met 126 beschikbaar zijn voor klasse A-netwerken. Het totaal aantal beschikbare klasse A-netwerken is dus 128 min 2 is 126 stuks. Elk klasse A-adres bestaat uit drie bytes (24 bitposities) voor het node-adres van een machine. Dit betekent dat er 224 – ofwel 16.777.216 – unieke combinaties zijn. En dus zijn er precies zoveel node-adressen mogelijk in ieder klasse A-netwerk. Doordat adressen met allemaal nullen en allemaal enen zijn gereserveerd, is het beschikbare aantal adressen voor nodes in een klasse A-netwerk gelijk aan 224 min 2, dus 16.777.214. Dat is een gigantische hoeveelheid nodes op één segment! Geldige host-IDs voor klasse A Hier volgt een voorbeeld van de manier waarop u de geldige host-IDs in een klasse Anetwerkadres bepaalt: Alle host-bits uit. Dan is netwerkadres: 10.0.0.0 Alle host-bits aan. Dan is het broadcast-adres: 10.255.255.255 De geldige hosts zijn de nummers die liggen tussen het netwerkadres en het broadcast-adres: 10.0.0.1 tot en met 10.255.255.254. Merk op dat de nullen en de 255s ook geldige IDs kunnen zijn. Het enige dat u hoeft te onthouden is dat niet alle host-bits tegelijk aan of uit kunnen zijn.
Klasse B-adressen In een klasse B-netwerkadres zijn de eerste twee bytes toegewezen aan het netwerkadres en de resterende twee bytes beschikbaar voor node-adressen. Het formaat is: Netwerk.Netwerk.Node.Node
In het IP-adres 172.16.30.56 is het netwerkadres 172.16 en het node-adres 30.56.
Doordat het netwerkadres twee bytes van acht bits ieder lang is, zijn er 28 + 28 = 2 unieke combinaties mogelijk. Maar de Internet-ontwerpers hebben besloten dat alle klasse B-netwerken met een binaire 1 en vervolgens een binaire 0 moeten beginnen. Hierdoor zijn er nog 14 bit-posities over, en dus zijn er 16.384 (214) unieke klasse B-netwerkadressen mogelijk. 16
Hoofdstuk 3 • Internet-protocollen
126
Een klasse B-adres gebruikt twee bytes voor node-adressen. Het aantal netwerkadressen is dus gelijk aan 216 min de twee gereserveerde patronen (allemaal nullen en allemaal enen). Dit betekent dat er in een klasse B-netwerk in totaal 65.534 nodeadressen mogelijk zijn. Geldige host-IDs voor klasse B Onderstaand vindt u een voorbeeld van dat laat zien hoe u wat de geldige hosts in een klasse B-netwerk bepaalt: Alle host-bits uit. Dan is netwerkadres: 172.16.0.0 Alle host-bits aan. Dan is het broadcast-adres: 172.16.255.255 De geldige hosts zijn de nummers die liggen tussen het netwerkadres en het broadcast-adres: 172.16.0.1 tot en met 172.16.255.254.
Klasse C-adressen De eerste drie bytes van een klasse C-netwerkadres worden bepaald door het netwerkgedeelte van het adres, waardoor er slechts één byte overblijft voor de nodeadressen. Het formaat is: Netwerk.Netwerk.Netwerk.Node
In het voorbeeld IP-adres 192.168.100.102 is het netwerkadres 192.168.100 en het node-adres 102. In een klasse C-netwerkadres zijn de eerste drie bitposities altijd binair 110. De berekening is als volgt: 3 bytes, ofwel 24 bits, min 3 gereserveerde posities, dus 21 posities. Dus: er zijn 221, ofwel 2.097.152 mogelijke klasse C-netwerken. Elk unieke klasse C-netwerk heeft één byte beschikbaar voor de node-adressen. Dit zijn 28 ofwel 256, min de twee gereserveerde patronen bestaande uit allemaal nullen en allemaal enen, dus een totaal van 254 node-adressen voor elk klasse C-netwerk. Geldige host-IDs voor klasse C Hier volgt een voorbeeld dat laat zien hoe u de geldige host-IDs in een klasse C-netwerk bepaalt: Alle host-bits uit. Dan is netwerk-ID: 192.168.100.0 Alle host-bits aan. Dan is het broadcast-adres: 192.168.100.255 De geldige hosts zijn de nummers die liggen tussen het netwerkadres en het broadcast-adres: 192.168.100.1 tot en met 192.168.100.254.
Studiegids Cisco CCNA
127
3.3 Subnetting U weet nu hoe u de geldige host-bereiken in de klassen A, B en C kunt bepalen door alle host-bits in en uit te schakelen. Dat is mooi, maar er zit een addertje onder het gras: u was maar één netwerk aan het opzetten. Wat moet u doen als u één netwerkadres hebt en daar zes netwerken van wilt maken? Dan moet u gebruikmaken van een techniek die bekend staat als subnetting. Door te subnetten kunt u een groter netwerk opdelen in verschillende kleinere netwerken. Er zijn heel veel verschillende goede redenen om subnetten te gebruiken. Een aantal ervan zijn: Verminderd netwerkverkeer Iedereen is blij als de hoeveelheid verkeer vermindert. Zelfs netwerken. Zonder betrouwbare routers kunnen de pakketten het complete netwerk in de file laten staan. Met routers blijft het meeste verkeer op de lokale netwerken; alleen verkeer dat bedoeld is voor een ander netwerk passeert de routers. Routers maken broadcast-domeinen. Hoe kleiner het broadcast-domein dat u maakt, hoe minder verkeer er op het segment zal zijn. Verbetering van de prestaties van het netwerk Dit is het gevolg van verminderd netwerkverkeer. Eenvoudiger beheer Het is gemakkelijker netwerkproblemen te identificeren en op te lossen in een groep kleine, onderling verbonden netwerken dan in een gigantisch groot netwerk. Gemakkelijker overbruggen van grote geografische afstanden Doordat WAN-verbindingen behoorlijk langzamer en toch een stuk duurder zijn dan LAN-verbindingen, kan één groot netwerk over grote afstanden alle boven beschreven problemen ondervinden. Door verschillende kleinere netwerken aan elkaar te koppelen kan het systeem een stuk efficiënter werken. Als u een subnetwerk wilt maken, neemt u bits van het host-gedeelte van het IPadres en reserveert die voor het definiëren van het subnet-adres. Dit betekent dat er minder bits beschikbaar zijn voor host-adressen; hoe meer subnetten er zijn, hoe minder bits er beschikbaar zijn voor hosts. In deze paragraaf leert u hoe u subnetten maakt. Begin met klasse C-adressen. Voordat u subnetting daadwerkelijk gaat implementeren, moet u uw huidige eisen formuleren en de toekomstige ontwikelingen inschatten. Volg deze stappen: 1. Bepaal het aantal vereiste netwerk-IDs: • Een voor elk subnet • Een voor iedere WAN-verbinding
Hoofdstuk 3 • Internet-protocollen
128
2. Bepaal het aantal vereiste host-IDs per subnet: • Een voor elke TCP/IP-host • Een voor elke router-interface 3. Op basis van deze behoeften, maakt u het volgende: • Een subnet-masker voor het gehele netwerk • Een uniek subnet-ID voor elk fysiek segment • Een bereik van host-IDs voor elk subnet
De machten van 2 De machten van 2 zijn belangrijk als u aan de gang gaat met IP-subnetting. Onthoud dat als u een getal ziet met een ander getal er rechts boven (de exponent) u het eerste getal zo vaak met zichzelf moet vermenigvuldigen als het getal rechtsboven aangeeft. 23 bijvoorbeeld, is 2 \ 2 \ 2 = 8. Onderstaand een lijst met 2-machten die u in het geheugen moet prenten: 21=2 22=4 23=8 24=16 25=32 26=64 27=128 28=256
3.3.1
Subnet-maskers Het subnet-adresseringsschema kan alleen werken als iedere machine in het netwerk weet welk gedeelte van het host-adres wordt gebruikt als subnet-adres. Dit wordt bereikt door een subnet-masker op iedere machine in te stellen. Een subnet-masker is een 32-bit waarde waardoor de ontvanger van IP-pakketten onderscheid kan maken tussen het netwerk-ID-gedeelte van het IP-adres en het host-ID-gedeelte van het IPadres. De netwerkbeheerder maakt een 32-bit subnet-masker dat bestaat uit nullen en enen. De enen in het subnet-masker vertegenwoordigen de posities die verwijzen naar het netwerk- of subnet-adres. Niet voor alle netwerken zijn subnetten nodig, en dan wordt gebruik gemaakt van het standaard subnet-masker. Dit komt er ongeveer op neer dat een netwerk geen
Studiegids Cisco CCNA
129
subnet-adres heeft. In tabel 3.3 worden de standaard subnet-maskers voor de klassen A, B en C weergegeven. Deze kunnen niet worden gewijzigd. Met andere woorden, u kunt een klasse B-subnet-masker niet wijzigen in 255.0.0.0. Als u het toch doet, beschouwt de host het adres als ongeldig en meestal zult u het niet eens kunnen invoeren. Voor een klasse A-netwerk kunt u de eerste byte in een subnet-masker niet wijzigen; het moet minimaal 255.0.0.0 zijn. Ook kunt u 255.255.255.255 niet toewijzen – dit zijn allemaal enen – omdat dit het broadcast-adres is. Een klasse Badres moet beginnen met 255.255.0.0␣ en klasse C -adres met 255.255.255.0. Tabel 3.3
Standaard subnet-maskers Klasse
3.3.2
Formaat
Standaard subnet-masker
A B
Net.Node.Node.Node Net.Net.Node.Node
255.0.0.0 255.255.0.0
C
Net.Net.Net.Node
255.255.255.0
Subnetten van klasse C-adressen Er zijn verschillende manieren om subnetten aan te brengen in een netwerk. De beste manier is de manier waaraan u de voorkeur geeft. Eerst wordt geïllustreerd hoe u de binaire methode gebruikt, en vervolgens wordt beschreven hoe u hetzelfde op een gemakkelijker manier bereikt. In een klasse C-adres zijn er slechts 8 bits beschikbaar voor het definiëren van hosts. Onthoud dat een subnet-bit aan de linkerkant begint en naar rechts toe werkt, zonder bits over te slaan. Dit betekent dat de enige mogelijk subnet-maskers voor klasse C zijn: 10000000=128 11000000=192 11100000=224 11110000=240 11111000=248 11111100=252 11111110=254
Volgens de RFCs kunt je niet maar één bit voor subnetting gebruiken. Dit zou immers betekenen dat het subnet-bit altijd aan of uit zou zijn, en dat is ongeldig. Het eerste subnet dat u dus kunt gebruiken, is 192, en het laatste is 252, omdat er minimaal twee bits nodig zijn voor het definiëren van hosts.
Hoofdstuk 3 • Internet-protocollen
130
In werkelijkheid kunt u wel degelijk één bit gebruiken voor het toewijzen van subnetten. Dit heet subnet nul (subnet-zero). Onthoud echter dat Cisco subnet-zero op het examen fout rekent!
De binaire methode: een klasse C-adres subnetten In deze paragraaf leert u hoe u een klasse C-adres kunt subnetten volgens de binaire methode. Begin bij het eerste subnet dat beschikbaar is voor klasse C-adressen, waarbij twee bits worden geleend voor het subnetten. In dit voorbeeld wordt gewerkt met het adres 255.255.255.192. 192=11000000
De enen vertegenwoordigen de subnet-bits en de nullen de host-bits die in elk subnet beschikbaar zijn. 192 biedt twee bits voor subnetting en 6 bits voor het bepalen van hosts in elk subnet. Wat zijn deze subnetten? Subnet-bits kunnen niet tegelijk aan en uit zijn, dus zijn de enige twee geldige subnetten: 01000000=64 (alle host-bits uit) en 10000000=128 (alle host-bits uit) De geldige hosts zijn de nummers tussen de twee subnetten, min de gereserveerde waarden met alle host-bits uit en alle host-bits aan. U vindt de hosts door eerst uw subnet op te zoeken. Dit doet u door alle host-bits uit te schakelen en daarna alle host-bits aan te zetten, zodat u het broadcast-adres voor het subnet weet. De geldige hostnummers bevinden zich tussen de twee nummers. In tabel 3.4 wordt het 64-subnet getoond, het bereik aan geldige hosts en het broadcast-adres: Tabel 3.4
Subnet 64 Subnet
Host
Betekenis
01 01 01 01
000000=64 000001=65 111110=126 111111=127
Het netwerk (doe dit eerst) De eerste geldige host De laatste geldige host Het broadcast-adres (doe dit als tweede)
Studiegids Cisco CCNA
131
In tabel 3.5 wordt het 128-subnet weergegeven met geldige hosts en broadcastadres. Tabel 3.5
Subnet 128 Subnet
Host
Betekenis
10 10 10
000000=128 000001=129 111110=190
Het subnet-adres De eerste geldige host De laatste geldige host
10
111111=191
Het broadcast-adres
Dat was toch niet zo moeilijk? U begrijpt waarschijnlijk al wat de strekking van het verhaal is. In het voorbeeld werden slechts twee subnet-bits gebruikt, maar wat nu als u wilt subnetten met 9, 10 of zelfs 20 subnet-bits? Doe dat maar eens met de binaire methode en u zult zien hoeveel tijd dat kost. Op het Cisco CCNA-examen hebt u net iets meer dan een minuut per vraag en het is dan ook belangrijk in de gaten te houden hoeveel tijd u kwijt bent aan de vragen over subnetting. Daarom is het zo belangrijk zo veel mogelijk van deze informatie uit het hoofd te leren, zoals eerder in dit hoofdstuk al is gezegd. Als u de binaire methode moet gebruiken, komt u tijd tekort op het examen en kunt u zakken. En dat terwijl u wel degelijk de stof beheerst! In de volgende paragraaf leeft u een andere manier, die veel sneller is als u regelmatig moet subnetten.
De snelle manier: een klasse C-adres subnetten Als u een mogelijk subnet hebt gekozen voor uw netwerk en moet bepalen hoeveel subnetten, geldige host-adressen en broadcast-adressen dat masker biedt, hoeft u slechts vijf eenvoudige vragen te beantwoorden: • Hoeveel subnetten zitten er in het gekozen subnet-masker? • Hoeveel geldige hosts zijn er beschikbaar per subnet? • Wat zijn de geldige subnetten? • Wat is het broadcast-adres van elk subnet? • Wat zijn de geldige hosts van elk subnet? En nu wordt het belangrijk dat u de machten van 2 in het geheugen hebt geprent. Zoek dit deel van dit hofodstuk nog eens op als u hulp nodig hebt. De antwoorden op die vijf belangrijke vragen vindt u als volgt:
Hoofdstuk 3 • Internet-protocollen
132
• Aantal subnetten? 2x–2=aantal subnetten. X is het aantal gemaskeerde bits (de enen). Bijvoorbeeld: 11000000 is 22–2. In dit voorbeeld zijn er 2 subnetten. • Hoeveel hosts per subnet? 2x–2=aantal hosts per subnet. X is het aantal nietgemaskeerde bits, de nullen. Bijvoorbeeld: 11000000 is 26–2. In dit voorbeeld zijn er 62 hosts per subnet. • Wat zijn de geldige subnetten? 256–subnet-masker=blokgrootte of basisgetal. Het eerste subnet is bijvoorbeeld 256–192=64. Het volgende subnet is het basisgetal zelf , ofwel 64+64=128, (het tweede subnet). Tel steeds het basisgetal bij zichzelf op tot u de waarde van het subnet-masker bereikt. Dit is geen geldig subnet is alle subnet-bits ingeschakeld zijn (enen). • Wat is het broadcast-adres voor elk subnet? Het broadcast-adres betekent dat alle host-bits zijn ingeschakeld; dit is het nummer onmiddellijk voorafgaand aan het volgende subnet. • Wat zijn de geldige hosts? Geldige hosts zijn de nummers tussen de subnetten min alle nullen en enen. Dit kan best verwarrend zijn. Toch is het niet zo lastig als het lijkt – probeer het maar eens.
Oefenen met subnetten: klasse C-adressen Alstublieft – bij deze een aantal oefeningen waarmee u de hierboven beschreven methode kunt oefenen. U begint met het eerste klasse C-subnet-masker en gaat verder met alle subnetten die in een klasse C-adres kunnen worden gebruikt. Als u die oefening gemaakt hebt, zult u zien hoe gemakkelijk die ook werken met klasse A- en klasse B-netwerken! Oefenvoorbeeld 1: 255.255.255.192 U gebruikt het klasse C-subnet-masker uit het vorige voorbeeld, 255.255.255.192. U zult zien hoeveel eenvoudiger deze methode is dan het uitschrijven van binaire getallen. Ga het netwerkadres 192.168.10.0 subnetten met subnet-masker 255.255.255.192. 192.168.10.0 255.255.255.192
=Netwerkadres =Subnet-masker
En nu het antwoord op de vijf vragen: • Aantal subnetten? 192 betekent twee bits aan (11000000), het antwoord zou dus zijn 22–2=2. (De min 2 staat voor alle subnet-bits aan en alle subnet-bits uit; deze waarden zijn per definitie ongeldig.)
Studiegids Cisco CCNA
133
• Aantal hosts per subnet? Er staan 6 host-bits uit (11000000), dus de vergelijking is 26–2=62 hosts. • Wat zijn de geldige subnetten? 256–192=64, het eerste subnet en het basisgetal (of variabele). Tel steeds de variabele bij zichzelf op totdat u het subnet-masker bereikt. 64+64=128. 128+64=192, dit is ongeldig omdat dit het subnetmasker is (alle subnet-bits zijn aan). De geldige twee subnetten zijn dus 64 en 128. • Wat is het broadcast-adres voor elk subnet? Het nummer vlak voordat het volgende subnet begint bestaat uit alle host-bits ingeschakeld en is dus het broadcast-adres. • Wat zijn de geldige hosts? Dit zijn de nummers tussen de subnetten. De gemakkelijkste manier om de hosts te vinden is het subnet-adres en het broadcast-adres uit te schrijven. De geldige hosts zijn dan duidelijk. In tabel 3.6 worden de 64- en 128-subnetten getoond, evenals de geldige host-bereiken en het broadcast-adres van beide subnetten. Tabel 3.6
De 64- en 128-subnetten Eerste Subnet
Tweede Subnet
Betekenis
64 65
128 129
126 127
190 191
De subnetten (doe dit eerst) De eerste host (voer hostadressering als laatste uit) De laatste host Het broadcast-adres (doe dit als tweede)
Ziet u? U vindt precies dezelfde antwoorden als op de binaire manier, en deze manier is veel eenvoudiger omdat er geen conversie tussen binair en decimaal aan te pas komt! Wellicht denkt u nu dat deze manier helemaal niet zo veel eenvoudiger is. Toegegeven: als er maar twee subnetten te berekenen zijn, maakt het inderdaad niet veel verschil. Maar u gaat voor goud: uit het blote hoofd kunnen subnetten. En dat leert u alleen door te oefenen! Oefenvoorbeeld 2: 255.255.255.224 Deze keer gaat u netwerkadres 192.168.10.0 subnetten met subnet-masker 255.255.255.224. 192.168.10.0 255.255.255.224
=Netwerkadres =Subnet-masker
Hoofdstuk 3 • Internet-protocollen
134
• Aantal subnetten? 224 is 11100000, de vergelijking is dus 23–2=6. • Aantal hosts? 25–2=30. • Wat zijn de geldige subnetten? 256–224=32. 32+32=64. 64+32=96. 96+32=128. 128+32=160. 160+32=192. 192+32=224, ongeldig omdat dit het subnet-masker is (alle subnet-bits aan). De subnetten zijn dus 32, 64, 96, 128, 160 en 192. • Wat is het broadcast-adres voor elk subnet? • Wat zijn de geldige hosts? Het antwoord op de vragen 4 en 5 krijgt u door de subnetten uit te schrijven en vervolgens de broadcast-adressen in te vullen – het nummer vlak voor het volgende subnet. Dan kunt u alle host-adressen invullen. In tabel 3.7 worden alle subnetten weergegeven voor het klasse C-subnet-masker 255.255.255.224. Tabel 3.7
Het klasse C-subnet-masker voor 255.255.255.224 Subnet 1 Subnet 2 Subnet 3
Subnet 4
Subnet 5
Subnet 6
32
64
96
128
160
192
33
65
97
129
161
193
62
94
126
158
190
222
63
95
127
159
191
223
Betekenis Het subnetadres De eerste geldige host De laatste geldige host Het broadcastadres
Oefenvoorbeeld 3: 255.255.255.240 Oefen dit nog een keer: 192.168.10.0 255.255.255.240
=Netwerkadres =Subnet-masker
• Aantal subnetten? 240 is 11110000 in binair. 24–2=14. • Aantal hosts? Vier host-bits, dus 24–2=14. • Geldige subnetten? 256–240=16. 16+16=32. 32+16=48. 48+16=64. 64+16=80. 80+16=96. 96+16=112. 112+16=128. 128+16=144. 144+16=160. 160+16=176. 176+16=192. 192+16=208. 208+16=224. 224+16=240, het subnet-masker en dus ongeldig. De geldige subnetten zijn dus 16, 32, 48, 64, 80, 96, 112, 128, 144, 160, 176, 192, 208 en 224.
Studiegids Cisco CCNA
135
• Broadcast-adres voor elk subnet? • Geldige hosts? Voor het antwoord op vragen 4 en 5 kijkt u in de volgende tabel. Hierin ziet u de subnetten, geldige hosts en broadcast-adressen van elk subnet. Zoek eerst het broadcast-adres van elk individueel subnet (Altijd het nummer vlak voor het volgende geldige subnet), en vul vervolgens de host-adressen in. Subnet
16
32
48
64
80
96
112
128 144 160 176 192
208 224
Eerste host
17
33
49
65
81
97
113
129 145 161 177 193
209 225
Laatste host
30
46
62
78
94
110
126
142 158 174 190 206
222 238
Broadcast
31
47
63
79
95
111
127
143 159 175 191 207
223 239
Oefenvoorbeeld 4: 255.255.255.248 Nog even doorgaan met oefenen: 192.168.10.0 255.255.255.248
=Netwerkadres =Subnet-masker
• Aantal subnetten? 248 in binair=11111000. 25–2=30. • Aantal hosts? 23–2=6. • Geldige subnetten? 256–248=8, 16, 24, 32, 40, 48, 56, 64, 72, 80, 88, 96, 104, 112, 120, 128, 136, 144, 152, 160, 168, 176, 184, 192, 200, 208, 216, 224, 232 en 240. • Broadcast-adres voor elk subnet? (Altijd het nummer net voor het volgende subnet.) • Geldige hosts? (De nummers tussen de subnetnummers en het broadcast-adres.) Kijk nu in de volgende tabel waarin de eerste drie en laatste drie subnetten worden getoond met geldige hosts en broadcast-adressen voor het klasse C-masker 255.255.255.248. Subnet Eerste host Laatste host Broadcast
8 9 14 15
16 17 22 23
24 25 30 31
224 225 230 231
232 233 238 239
240 241 246 247
Hoofdstuk 3 • Internet-protocollen
136 Oefenvoorbeeld 5: 255.255.255.252 Nog een paar: 192.168.10.0 255.255.255.252
=Netwerkadres =Subnet-masker
• Aantal subnetten? 62. • Aantal hosts? 2. • Geldige Subnetten? 4, 8, 12, enzovoort, tot aan 248. • Broadcast-adres voor elk subnet (Altijd het nummer net voor het volgende subnet.) • Geldige hosts? (De nummers tussen de subnetnummers en het broadcast-adres.) In de volgende tabel ziet u de eerste drie en laatste drie subnetten met geldige hosts en broadcast-adressen voor het klasse C-masker 255.255.255.252. Subnet Eerste host Laatste host Broadcast
4 5 6 7
8 9 10 11
12 13 14 15
240 241 242 243
244 245 246 247
248 249 250 251
Oefenvoorbeeld 6: 255.255.255.128 Eerder is al opgemerkt dat het niet is toegestaan slechts één bit te gebruiken voor het subnet. Maar zijn niet alle regels er om gebroken te worden? Dit masker kan worden gebruikt als u twee subnetten wilt maken met ieder 126 hosts. Helaas werkt de vijfvragentechniek niet met die subnet; daarom wordt het even apart uitgelegd. Ten eerste moet u op de router de globale configuratieopdracht ip subnet-zero gebruiken, zodat de router bereid is de regels te overtreden en een 1-bits subnetmasker te gebruiken (dit is een standaardopdracht voor alle routers die gebruikmaken van het 12.x Cisco-IOS). Omdat 128 (decimaal) gelijk is aan 1000000 in binair, is er slechts een bit beschikbaar voor subnetting. Deze bit kan in- of uitgeschakeld zijn; de twee beschikbare subnetten zijn dus 0 en 128. U bepaalt de subnetwaarde door te kijken naar de decimale waarde van het vierde octet. Als de waarde van het vierde octet minder is dan 128, bevindt de host zich in het 0-subnet. Als de waarde van het vierde octet hoger is dan 128, bevindt de host zich in het 128-subnet. De volgende tabel geeft de twee subnetten weer met het geldig host-bereik en het broadcast-adres voor het klasse C-masker 255.255.255.128.
Studiegids Cisco CCNA
137
Subnet Eerste host Laatste host
0 1 126
128 129 254
Broadcast
127
255
Als u dus een IP-adres 192.168.10.5 tegenkomt met het subnet-masker 255.255.255.128 weet u dat het uit het 0-subnet komt en dat bitnummer 128 uit moet zijn. Bij het IP-adres 192.168.10.189 moet 128 dus aan zijn en bevindt de host zich in het 128-subnet. Zo meteen hier meer over.
Subnetten uit het hoofd: klasse C-adressen Ongelofelijk, maar waar! Het is echt mogelijk uit het blote hoofd te subnetten. Volg het voorbeeld maar: 192.168.10.36 255.255.255.224
=Node-adres =Subnet-masker
Eerst bepaalt u het subnet en het broadcast-adres van dit IP-adres. U bereikt dit door vraag drie van de vijf belangrijke vragen te beantwoorden. 256–224=32. 32+32=64. Woohooo! Het adres valt tussen de twee subnetten en moet dus deel uitmaken van het 192.168.10.32-subnet. Het volgende subnet is 64; het broadcastadres is dus 63. (Weet u nog dat het broadcast-adres van een subnet altijd het nummer vlak voor het volgende subnet is?) Het geldige host-bereik is 33–62. Eitje! Probeer er nog een. Kijk eens of u ook een ander C-klasse adres kunt subnetten: 192.168.10.33 255.255.255.240
=Node-adres =Subnet-masker
Welk subnet en welk broadcast-adres gebruikt dit IP-adres? 256–240=16. 16+16=32. 32+16=48. Bingo – het host-adres bevindt zich tussen de subnetten 32 en 48. Het subnet is 192.168.10.32 en het broadcast-adres is 47. Het geldige hostbereik is 33–46. Nog eentje – om het (niet) af te leren. Dit is de gemakkelijkste van alle klasse Csubnetten: 192.168.10.17 255.255.255.252
=Node-adres =Subnet-masker
Welk subnet en welk broadcast-adres gebruikt dit IP-adres? 256-252=4, 8, 12, 16, 20. Hebbes! Het host-adres ligt tussen de subnetten 16 en 20. Het subnet is 192.168.10.16 en het broadcast-adres is 19. Het geldige host-bereik is 17-18. Zo, nu weet u alles over klasse C-subnetten. Meteen door met klasse B!
Hoofdstuk 3 • Internet-protocollen
138
3.3.3
Subnetting van klasse B-adressen Eens zijn alle mogelijke klasse B-subnetmaskers opgesomd. Dat zijn er een stuk meer dan bij klasse C: 255.255.128.0 255.255.192.0 255.255.224.0 255.255.240.0 255.255.248.0 255.255.252.0 255.255.254.0 255.255.255.0 255.255.255.128 255.255.255.192 255.255.255.224 255.255.255.240 255.255.255.248 255.255.255.252
U weet inmiddels dat een klasse B-netwerkadres 16 bits beschikbaar heeft voor het adresseren van hosts. Dit betekent dat er maximaal 14 bits gebruikt kunnen worden voor subnetting, omdat er minimaal 2 bits beschikbaar moeten blijven voor het adresseren van hosts. Is u trouwens iets opgevallen aan de lijst met subnetmaskerwaarden – een patroon misschien? Precies – daarom moest u de conversiegetallen voor de ‘binair-naardecimaal’-conversie uit het hoofd zou leren. Subnet-maskers beginnen aan de linkerkant, werken naar rechts en kunnen geen bits overslaan. De getallen zijn iedere keer weer dezelfde. Leer dit patroon uit uw hoofd. Het subnetten van een klasse B-netwerk gaat op vrijwel dezelfde manier als bij een klasse C-netwerk, alleen zijn er meer host-bits mee gemoeid. Gebruik dezelfde subnetgetallen die u gebruikt voor klasse C, maar voeg een 0 (nul) toe aan het netwerkgedeelte en een 255 voor het broadcast-gedeelte in het vierde octet. In de volgende tabel wordt een host-bereik van twee subnetten in een klasse B-subnet weergegeven: 16.0 16.255
32.0 32.255
Voeg nu nog de geldige hosts toe tussen de nummers en klaar is Kees!
Studiegids Cisco CCNA
139
Oefenen met subnetten: klasse B-adressen Uiteraard krijgt u ook de mogelijkheid te oefenen met het subnetten van klasse Badressen. Oefenvoorbeeld 1: 255.255.192.0 172.16.0.0 255.255.192.0
=Netwerkadres =Subnet-masker
• Aantal subnetten? 22–2=2. • Aantal hosts? 214–2=16.382. (6 bits in het derde octet en 8 in het vierde.) • Geldige subnetten? 256–192=64. 64+64=128. • Broadcast-adres voor elk subnet? (Altijd het nummer vlak voor het volgende subnet.) • Geldige hosts? (De nummers tussen netwerknummer en het broadcast-adres.) In de volgende tabel ziet u de twee beschikbare subnetten, het geldige host-bereik en het broadcast-adres van elk subnet: Subnet Eerste host Laatste host Broadcast
64.0 64.1 127.254 127.255
128.0 128.1 191.254 191.255
Merk op dat alleen de laagste en de hoogste waarden van het vierde octet zijn toegevoegd en zo de antwoorden zijn gevonden. Nogmaals, het lijkt sterk op subnetten van klasse C-adressen – alleen zijn 0 en 255 in het vierde octet toegevoegd. Oefenvoorbeeld 2: 255.255.240.0 172.16.0.0 255.255.240.0
=Netwerkadres =Subnet-adres
• Aantal subnetten? 24–2=14. • Aantal hosts? 212–2=4094. • Geldige subnetten? 256–240=16, 32, 48, enzovoort, tot aan 224. Dit zijn trouwens dezelfde getallen als in een klasse C 240-masker. • Broadcast-adres voor elk subnet (Altijd het nummer vlak voor het volgende subnet.) • Geldige hosts? (De nummers tussen netwerknummer en het broadcast-adres.)
Hoofdstuk 3 • Internet-protocollen
140
De volgende tabel toont de eerste drie subnetten, de geldige hosts en het broadcast-adres voor het klasse B-masker 255.255.240.0: Subnet Eerste host Laatste host
16.0 16.1 31.254
32.0 32.1 47.254
48.0 48.1 63.254
Broadcast
31.255
47.255
63.255
Oefenvoorbeeld 3: 255.255.254.0 • Aantal subnetten? 27–2=126. • Aantal hosts? 29–2=510. • Geldige subnetten? 256–254=2, 4, 6, 8, enzovoort, tot aan 252. • Broadcast-adres voor elk subnet (Altijd het nummer vlak voor het volgende subnet.) • Geldige hosts? (De nummers tussen netwerknummer en het broadcast-adres.) De volgende tabel toont de eerste vier subnetten, de geldige hosts en het broadcast-adres voor het klasse B-masker 255.255.254.0. Subnet Eerste host Laatste host Broadcast
2.0 2.1 3.254 3.255
4.0 4.1 5.254 5.255
6.0 6.1 7.254 7.255
8.0 8.1 9.254 9.255
Oefenvoorbeeld 4: 255.255.255.0 In tegenstelling tot wat veel mensen denken, is 255.255.255.0 in combinatie met een klasse B-netwerkadres niet ‘een klasse B-netwerk met een klasse C-subnetmasker.’ Het is onvoorstelbaar hoe veel mensen denken dat dit een klasse C-masker is terwijl het gebruikt wordt in een klasse B-netwerk. Het is een ‘klasse B-subnet-masker met 8 bits-subnetting’ – heel iets anders dan een klasse C-masker. Subnetten voor dit adres is vrij eenvoudig: • Aantal subnetten? 28–2=254. • Aantal hosts? 28–2=254. • Geldige subnetten? 256–255=1, 2, 3, enzovoort, tot aan 254. • Broadcast-adres voor elk subnet? • Geldige hosts?
Studiegids Cisco CCNA
141
De volgende tabel toont de eerste drie subnetten en de laatste, de geldige hosts en de broadcast-adressen in een klasse B 255.255.255.0-masker: Subnet Eerste host Laatste host Broadcast
1.0 1.1 1.254 1.255
2.0 2.1 2.254 2.255
3.0 3.1 3.254 3.255
254.0 254.1 254.254 254.255
Oefenvoorbeeld 5: 255.255.255.128 Wat is dit nu weer voor een masker? Ongeldig is het zeker niet. Het is wel een van de lastigste subnet-maskers om mee te werken. En het ergste is dat het in de praktijk een zeer handig subnet-masker is, omdat het meer dan 500 subnetten oplevert met elk 126 hosts. Een mooie optie dus! • Aantal subnetten? 29–2=510. • Aantal hosts? 27–2=126. • Geldige subnetten? Nu wordt het even lastig. 256–255=1, 2, 3, enzovoort, voor het derde octet. Maar het ene subnet-bit in het vierde octet mag u niet vergeten. Weet u nog hoe dat in zijn werk ging bij een klasse C-subnet-masker? U gaat op dezelfde manier te werk. (Nu weet u ook gelijk waarom dit al is behandeld bij de klasse C-maskers – daardoor wordt het nu eenvoudiger.) U krijgt er twee subnetten bij voor iedere waarde in het vierde octet; vandaar de 510 subnetten. Als het derde octet subnet 3 aangeeft, zouden de twee subnetten eigenlijk 3.0 en 3.128 zijn. • Broadcast-adres voor elk subnet? • Geldige hosts? In de volgende tabel leest u hoe u subnetten, geldige hosts en broadcast-adressen kunt berekenen voor het klasse B-subnet-masker 255.255.255.128. (De eerste zeven subnetten worden getoond, evenals het laatste.) Subnet Eerste host Laatste host Broadcast
0.128 0.129 0.254 0.255
1.0 1.1 1.126 1.127
1.128 1.129 1.254 1.255
2.0 2.1 2.126 2.127
2.128 2.129 2.254 2.255
3.0 3.1 3.126 3.127
3.128 3.129 3.254 3.255
255.0 255.1 255.126 255.127
Oefenvoorbeeld 6: 255.255.255.192 Deze wordt een beetje lastig. Zowel subnet 0 als 192 kunnen geldig zijn in het vierde octet. Het hangt er helemaal af van wat er in het derde octet gebeurt.
Hoofdstuk 3 • Internet-protocollen
142 • Aantal subnetten? 210–2=1.022. • Aantal hosts? 26–2=62.
• Geldige subnetten? 256–192=64 en 128. En zolang niet alle subnet-bits in het derde octet uit zijn, is subnet 0 in het vierde octet geldig. Verder geldt dat als niet alle subnet-bits in het derde octet aan zijn, 192 geldig is als subnet in het vierde octet. • Broadcast-adres voor elk subnet? • Geldige hosts? De volgende tabel geeft de eerste zeven subnetbereiken, geldige hosts en broadcastadressen. Subnet Eerste host Laatste host Broadcast
0.64 0.65 0.126 0.127
0.128 0.129 0.190 0.191
0.192 0.193 0.254 0.255
1.0 1.1 1.62 1.63
1.64 1.65 1.126 1.127
1.128 1.129 1.190 1.191
1.192 1.193 1.254 1.255
Merk op dat voor elke subnetwaarde in het derde octet, de subnetten 0, 64, 128, en 192 in het vierde octet ontstaan. Dit geldt voor elk subnet in het derde octet, behalve 0 en 255. Dit is aangetoond met de subnetwaarde 0 in het derde octet. Maar tevens geldt dat voor een subnet 1 in het derde octet, het vierde octet vier subnetten kent: 0, 64, 128 en 192. Oefenvoorbeeld 7: 255.255.255.224 Hier wordt op dezelfde manier gerekend als in het vorige voorbeeld, alleen zijn er meer subnetten en minder hosts per subnet beschikbaar. • Aantal subnetten? 211–2=2.046. • Aantal hosts? 25–2=30. • Geldige subnetten? 256–224=32, 64, 96, 128, 160, 192. Echter, zoals eerder aangetoond, de subnetten 0 als de 224 kunnen worden gebruikt als het derde octet niet de waarde 0 en niet de waarde 255 bevat. • Broadcast-adres voor elk subnet? • Geldige hosts?
Studiegids Cisco CCNA
143
De volgende tabel toont de eerste zeven subnetten. Subnet Eerste host Laatste host Broadcast
0.32 0.33 0.62 0.63
0.64 0.65 0.94 0.95
0.96 0.97 0.126 0.127
0.128 0.129 0.158 0.159
0.160 0.161 0.190 0.191
0.192 0.193 0.222 0.223
0.224 0.225 0.254 0.255
Kijk nu eens naar een situatie waarin een subnet-bit in het derde octet is ingeschakeld. In de volgende tabel ziet u alle beschikbare subnetten in het vierde octet: Subnet Eerste host Laatste host Broadcast
1.0 1.1 1.30 1.31
1.32 1.33 1.62 1.63
1.64 1.65 1.94 1.95
1.96 1.97 1.126 1.127
1.128 1.129 1.158 1.159
1.160 1.161 1.190 1.191
1.192 1.193 1.222 1.223
1.224 1.225 1.254 1.255
In de volgende tabel staan de laatste zeven subnetten. Subnet Eerste host Laatste host Broadcast
255.0 255.1 255.62 255.63
255.32 255.33 255.62 255.63
255.64 255.65 255.94 255.95
255.96 255.97 255.126 255.127
255.128 255.129 255.158 255.159
255.160 255.161 255.190 255.191
255.192 255.193 255.222 255.223
Subnetten uit het hoofd: klasse B-adressen Klasse B-subnetten uit het hoofd? Echt: uit het hoofd is gemakkelijker dan op papier! Kijk maar: Vraag: Van welk subnet en welk broadcast-adres maakt het IP-adres 172.16.10.33 255.255.255.224 gebruik?
Antwoord: 256–224=32. 32+32=64. Bingo – 33 ligt tussen 32 en 64. Onthoud echter dat de derde octet gezien wordt als deel van het subnet. Het antwoord is dus het 10.32-subnet. Broadcast-adres is 10.63, omdat 10.64 het volgende subnet is. Nog vier: Vraag: Van welk subnet en welk broadcast-adres maakt het IP-adres 172.16.90.66 255.255.255.192 gebruik? Antwoord: 256–192=64. 64+64=128. Het subnet is 172.16.90.64. Het broadcast-adres moet 172.16.90.127 zijn, omdat 90.128 het volgende subnet is.
Hoofdstuk 3 • Internet-protocollen
144
Vraag: Van welk subnet en welk broadcast-adres maakt het IP-adres 172.16.50.97 255.255.255.224 gebruik?
Antwoord: 256–224=32, 64, 96, 128. Het subnet is 172.16.50.96 en het broadcast-adres moet 172.16.50.127 zijn omdat 50.128 het volgende subnet is. Vraag: Van welk subnet en welk broadcast-adres maakt het IP-adres 172.16.10.10 255.255.255.192 gebruik?
Antwoord: 256–192=64. Dit adres moet zich in het subnet 172.16.10.0 bevinden; het broadcast-adres moet 172.16.10.63 zijn. Vraag: Van welk subnet en welk broadcast-adres maakt het IP-adres 172.16.10.10 255.255.255.252 gebruik?
Antwoord: 256–252=4. Subnet is 172.16.10.8; broadcast-adres is 172.16.10.11.
3.3.4
Subnetting van klasse A-adressen Het subnetten van klasse A-adressen gaat op dezelfde manier als bij klasse B- en C-adressen, maar er zijn 24 bits beschikbaar om mee te spelen in plaats van de 16 bij klasse B en de 8 bij een klasse C-adres. Eerst even en lijst met alle mogelijke klasse A-subnetmaskers: 255.128.0.0 255.192.0.0 255.224.0.0 255.240.0.0 255.248.0.0 255.252.0.0 255.254.0.0 255.255.0.0 255.255.128.0 255.255.192.0 255.255.224.0 255.255.240.0 255.255.248.0 255.255.252.0 255.255.254.0 255.255.255.0 255.255.255.128 255.255.255.192 255.255.255.224 255.255.255.240 255.255.255.248 255.255.255.252
Studiegids Cisco CCNA
145
Dat zijn ze. Er moeten minimaal twee bits beschikbaar blijven voor het definiëren van hosts. Is het patroon al duidelijk? Mooi, dan pakt u dit op dezelfde manier aan als bij klasse B of klasse C. Alleen met meer host-bits.
Oefenen met subnetten: klasse A-adressen Als u kijkt naar een IP-adres en een subnet-masker, moet u in staat zijn te zien welke bits voor het subnet worden gebruikt en welke voor de hosts. Dit is van levens-belang. Als u nog steeds moeite hebt met dit idee, doet u er goed aan de paragraaf IP-adressering nogmaals door te nemen. Hierin leest u hoe u het verschil bepaalt tussen de subnet-bits en de host-bits, waardoor een en ander een stuk duidelijker zou moeten worden. Oefenvoorbeeld 1: 255.255.0.0 Klasse A-adressen gebruiken standaard het subnet-masker 255.0.0.0, waardoor er 22 bits beschikbaar zijn voor subnetten. Er moeten immers twee bits beschikbaar blijven voor de adressering van hosts. Het masker 255.255.0.0 met een klasse A-adres gebruikt acht subnet-bits. • Aantal subnetten? 28–2=254. • Aantal hosts? 216–2=65.534. • Geldige subnetten? 256–255=1, 2, 3, enzovoort (allemaal in het tweede octet). De subnetten zijn 10.1.0.0, 10.2.0.0, 10.3.0.0, enzovoort, tot en met 10.254.0.0. • Broadcast-adres voor elk subnet? • Geldige hosts? In tabel 3.8 worden het eerste en het laatste subnet weergegeven, evenals het geldige host-bereik en de broadcast-adressen. Tabel 3.8
Het eerste en het laatste subnet
Subnet Eerste host Laatste host Broadcast
Eerste subnet 10.1.0.0 10.1.0.1 10.1.255.254 10.1.255.255
Laatste subnet 10.254.0.0 10.254.0.1 10.254.255.254 10.254.255.255
Hoofdstuk 3 • Internet-protocollen
146 Oefenvoorbeeld 2: 255.255.240.0
255.255.240.0 geeft 12 bits voor subnetting en laat 12 bits over voor adressering van de hosts. • Aantal subnetten? 212–2=4.094. • Aantal hosts? 212–2=4.094. • Geldige Subnetten? 256–240=16. En omdat het tweede octet 255 is (alle subnetbits aan) kan het derde octet beginnen met 0 zolang een subnet-bit is ingeschakeld in het tweede octet. De eerste geldige subnetten zijn dus 10.0.16.0, 10.0.32.0 en 10.0.48.0, tot aan 10.0.224.0. De volgende serie subnetten begint bij 10.1.0.0, 10.1.16.0, 10.1.32.0, 10.1.48.0, tot aan 10.1.240.0. Merk op dat 240 in het derde octet kan worden gebruiken als de subnet-bits in het tweede octet niet allemaal 1 zijn. Met andere woorden, 10.255.240.0 is ongeldig omdat dat alle subnet-bits ingeschakeld zijn. Het laatste geldige subnet zou dus 10.255.224.0 zijn. • Broadcast-adres voor elk subnet? • Geldige hosts? In tabel 3.9 ziet u een aantal voorbeelden van de host-bereiken. Tabel 3.9
Geldige host-bereiken voor het klasse A-masker 255.255.240.0
Subnet Eerste host Laatste host Broadcast
Eerste subnet 10.1.0.0 10.1.0.1 10.1.15.254 10.1.15.255
Tweede subnet 10.1.16.0 10.1.16.1 10.1.31.254 10.1.31.255
Laatste subnet 10.255.224.0 10.255.224.1 10.255.239.254 10.255.239.255
Oefenvoorbeeld 3: 255.255.255.192 Nog een voorbeeld met het tweede, derde en vierde octet voor subnetting. • Aantal subnetten? 218–2=262.142. • Aantal hosts? 26–2=62. • Geldige subnetten?Nu moeten de subnetnummers van het tweede, derde en vierde octet worden toegevoegd. Het tweede en derde octet kunnen de waarden 1 tot 255 bevatten, zolang niet alle subnet-bits in het tweede, derde en vierde octet tegelijk aan zijn. In het vierde octet zijn dat 256–192=64. En 0 is geldig als ten minste één subnet-bit in een ander octet is ingeschakeld. 192 is ook geldig, als niet alle subnet-bits in het tweede en derde octet aan zijn.
Studiegids Cisco CCNA
147
• Broadcast-adres voor elk subnet? • Geldige hosts? In de volgende tabel worden de eerste paar subnetten weergegeven en geldige hosts en broadcast-adressen in het klasse A-masker 255.255.255.192. Subnet Eerste host Laatste host Broadcast
10.0.0.64 10.0.0.65 10.0.0.126 10.0.0.127
10.0.0.128 10.0.0.129 10.0.0.190 10.0.0.191
10.0.0.192 10.0.0.193 10.0.0.254 10.0.0.255
10.1.0.0 10.1.0.1 10.1.0.62 10.1.0.64
De volgende tabel toont de laatste drie subnetten en de geldige hosts in het klasse A-masker 255.255.255.192. Subnet Eerste host Laatste host Broadcast
10.255.255.0 10.255.255.1 10.255.255.62 10.255.255.63
10.255.255.64 10.255.255.65 10.255.255.126 10.255.255.127
10.255.255.128 10.255.255.129 10.255.255.190 10.255.255.191
3.5 Samenvatting Er is in dit hoofdstuk behoorlijk wat stof behandeld. Het is dan ook het meest omvangrijke hoofdstuk van dit boek. U hebt kennis opgedaan van de Internet Protocol stack, en u kunt nu met IP-adressering en subnetting overweg – een enorme stap! Het is zeer waardevolle informatie, en dan niet alleen voor het CCNA-examen, maar voor iedereen die werkt met netwerken. Of u nu ontwerpt of uitvoert of problemen oplost, deze kennis komt u altijd van pas. Zelfs als u niet alles de eerste keer meteen begrijpt, is dat niet erg. Werk het hoofdstuk gewoon opnieuw door totdat wel alles duidelijk is. Gewoon oefenen met subnetten totdat u het volledig onder de knie hebt. U kunt ook een vriend vragen geldige IP-adressen op te schrijven en dan zelf uitzoeken welke subnetten, broadcast-adressen en host-bereiken erbij horen. Let er dan wel op dat het een goede vriend (of vriendin) is! Beloofd is beloofd: meer van dit soort vreselijk hoofdstukken krijgt u in dit boek niet voorgeschoteld! Dat is uw beloning voor het doorwerken van dit hoofdstuk. Er moet nog heel wat worden behandeld voor het examen, maar dan kan in kleinere, beter behapbare stukken. Bekijk het eens van deze kant: u bent al tot hier gekomen! Het is zonde nu af te haken en al die goede voornemens te laten varen. Blijf bij de les. Ploeter door de kennisvragen en de begripsvragen aan het eind van dit hoofdstuk en zorg ervoor dat u de uitleg van de antwoorden op de vragen goed begrijpt. Het ergste is voorbij!
Hoofdstuk 3 • Internet-protocollen
148
3.6 Kernbegrippen Voordat u aan het examen begint, moet u de volgende begrippen goed kennen: bit broadcast-adres byte klasse A-netwerk klasse B-netwerk klasse C-netwerk host-adres IP-adres netwerkadres node-adres octet subnet-masker
Hoofdstuk
4
Introductie tot het Cisco-IOS DIT HOOFDSTUK BEHANDELT ONDER MEER DE VOLGENDE CCNA EXAMENONDERWERPEN: ✓ Cisco-basisbegrippen, het IOS & basisbegrippen van netwerken. •
Bestuderen van router-elementen.
•
Beheren van de configuratiebestanden in de beheerdersEXEC-modus.
•
Beheren van router-wachtwoorden, identificatie en banners.
•
De belangrijkste IOS-software-opdrachten voor de startup van de router.
•
Inloggen op een router in gebruikersmodus en beheerdersmodus.
•
Een startconfiguratie controleren met behulp van de opdracht setup.
•
De context-gevoelige hulpfunctie gebruiken.
•
De opdrachten om Cisco-IOS-software mee te laden vanaf het flash-geheugen, een TFTP-server of het ROM.
•
Voorbereidingen treffen om backup te maken van de Cisco-IOS-software, deze op te waarderen (upgraden) en te laden.
•
Een overzicht geven van de problemen die zich in elk type routing voordoen als het te maken krijgt met veranderingen in topologie en de technieken beschrijven om deze problemen te verminderen.
•
De startconfiguratie van een router voorbereiden en IP activeren.
H
et is tijd om u te laten kennismaken met het Internetwerk Operating System (IOS). Dit IOS is de motor van de Cisco-routers en van sommige Ciscoswitches. Hiermee kunt u de apparaten ook configureren. In dit hoofdstuk leert u hoe u een Cisco-IOS-router configureert. Verder maakt u kennis met de begin-setup-modus en met de Cisco-IOS-Command Line Interface (CLI). Met de IOS-interface kunt u wachtwoorden configureren, banners instellen en nog veel meer. U leert de basisbegrippen van router-configuraties. Hier is een lijst van de onderwerpen die in dit hoofdstuk worden behandeld: • Het begrijpen en configureren van het Cisco-Internetwerk Operating System (IOS). • Verbinding leggen met een router. • Activeren van een router. • Inloggen op een router. • De router-prompts begrijpen. • De CLI-prompts. • Werken met edit- en helpfuncties. • Vergaren van basale route-informatie. • Instellen van router-wachtwoorden • Instellen van de router-banners • Configureren van de interface • Instellen van router-host-namen • Instellen van interface-beschrijvingen • Bekijken en opslaan van router-configuraties • Controleren van routing-configuraties En net als bij de voorafgaande hoofdstukken zijn de basisbegrippen die u hier leert belangrijk. Zonder deze basisbegrippen begrijpt u de rest van het boek niet.
Studiegids Cisco CCNA
161
4.1 De user-interface van de Cisco-router Het Cisco-Internetwerk Operating System (IOS) is de kern van de Cisco-routers en de meeste switches. Cisco heeft de Cisco Fusion ontwikkeld. Dit is bedoeld om op alle Cisco apparaten hetzelfde besturingssysteem te kunnen draaien. Maar dat gebeurt niet, omdat Cisco apparaten gekocht heeft die ze niet zelf hebben ontworpen en gemaakt. Vrijwel alle Cisco-routers draaien onder hetzelfde IOS, in tegenstelling tot ongeveer de helft van hun switches. In dit gedeelte leert u hoe u het Cisco-IOS eruitziet, en hoe u een Cisco-router stap-voor-stap met de setup-modus configureert. In het volgende gedeelte leert u hoe u een configuratie uitvoert met de Command-Line Interface (CLI).
4.1.1
Het IOS van de Cisco-router Het IOS is gemaakt om netwerkdiensten (network services) te leveren en om netwerkapplicaties mogelijk te maken. Het Cisco-IOS draait op de meeste Ciscorouters en op sommige Catalyst-switches van Cisco, zoals de Catalyst 1900-switch (behandeld in Appendix B). De IOS-software wordt gebruikt op Cisco-hardware om: • Netwerkprotocollen en functies door te geven • Apparaten met elkaar te verbinden om hogesnelheidsverkeer mogelijk te maken • De toegang tot het netwerk te beveiligen en te voorkomen dat er ongeoorloofd gebruik van gemaakt wordt • Schaalbaarheid te leveren om de uitbreiding van het netwerk te vergemakkelijken en de storingsbestendigheid (redundantie) te bevorderen • Een betrouwbaar netwerk te leveren om verbinding te leggen met de systeemcomponenten van het netwerk U kunt het Cisco-IOS gebruiken via de console-poort van een router, via een op de auxiliary-poort aangesloten modem, of zelfs via Telnet. Toegang tot de IOSopdrachtregel wordt een EXEC-sessie genoemd.
4.1.2
Verbinding leggen met een Cisco-router U kunt verbinding leggen met een Cisco-router om deze router te configureren, de configuratie te controleren en de kengetallen na te kijken. Er zijn meer manieren om dit te doen, maar meestal legt u verbinding via de console-poort. De console-poort is
Hoofdstuk 4 • Introductie tot het Cisco-IOS
162
meestal een RJ45-aanlsuiting die zich achter op de router bevindt. Er is meestal geen wachtwoord voor nodig. U kunt ook via een auxiliary-poort verbinding leggen met een Cisco-router. Dit is eigenlijk hetzelfde als een console-poort. U kunt ze op dezelfde wijze gebruiken. Met deze auxiliary-poort kunt u echter ook modemopdrachten zo configureren dat u met een modem verbinding kunt leggen met de router. Dit is een handige functie, waarmee u via een modemverbinding een niet-lokale router kunt bellen. Op deze manier kunt u verbinding leggen met de auxiliary-poort als de router uit de lucht is en u de router toch wilt configureren. De derde manier om verbinding te leggen met een Cisco-router is met het programma Telnet. Telnet is een terminal-emulatie programma dat zich als een dumbterminal (een ‘domme terminal’) gedraagt. Met Telnet kunt u verbinding leggen met alle actieve interfaces op een router, zoals een Ethernet- of een seriële poort. Figuur 4.1 laat een 2501-Cisco-router zien. Let vooral op de verschillende soorten interfaces en connecties. Figuur 4.1
2501 router Input: 100-240VAC Freq: 50.60 Hz Current: 1.2-0.6A Watts: 40W
AUI
SERIAL 0
SERIAL 1
CONSOLE
AUX
CISCO 2501
De 2501-router heeft twee seriële interfaces voor een WAN-aansluiting. Verder heeft deze een Attachment Unit Interface (AUI)-aansluiting voor een 10Mbps Ethernet-netwerkaansluiting. De router heeft ook een console-poort en een auxiliarypoort via RJ45-connectoren.
4.1.3
Een router activeren Aan de slag! Als u voor het eerst een Cisco-router aan zet voert deze een power-on controles uit (POST). Als die test goed gaat, zoekt en laadt deze het Cisco-IOS vanuit het flash-geheugen als het daar opgeslagen is. (Het flash-geheugen is een elektronisch uitwisbaar, programmeerbaar read-only geheugen [EEPROM].) Het IOS gaat dan verder met laden: het zoekt nu een bruikbare configuratie. Deze startup-config is in het NonVolatile RAM (NVRAM) opgeslagen. Deze mededelingen verschijnen als een router voor het eerst wordt gestart of herladen: System Bootstrap, Version 12.1(3r)T2, RELEASE SOFTWARE (fc1) Copyright (c) 2000 by cisco Systems, Inc. C2600 platform with 32768 Kbytes of main memory
Studiegids Cisco CCNA
163
Het eerste gedeelte toont de informatie over het bootstrap-programma, dat eerst een Power On Self Test (POST) uitvoert. Daarna vertelt dit programma de router hoe deze verder moet starten. Ga het IOS in het flash-geheugen zoeken en laden. Het volgende gedeelte, hieronder getoond, laat zien hoe het IOS gedecomprimeerd wordt in RAM. Dit gebeurt niet op alle routers op dezelfde manier. Op de 2600router die hier als voorbeeld wordt gebruikt, wordt het IOS in RAM geladen. De 2500-router draait het IOS vanuit het flash-geheugen en laadt het IOS niet in RAM. program load complete, entry point: 0x80008000, size: 0x43b7fc Self decompressing the image : ############################################################# ############################################################# ############################################################# ############################################################# ############################################################# ############################################################# ############################################################# ############################################################# ####################################[OK]
Nadat het IOS in RAM gedecomprimeerd is, wordt het IOS actief en begint de router te besturen, zoals u hier ziet. De IOS-versie op deze router is 12.1(8). Cisco Internetwork Operating System Software IOS (tm) C2600 Software (C2600-I-M), Version 12.1(8), RELEASE SOFTWARE (fc1) Copyright (c) 1986-2001 by cisco Systems, Inc. Compiled Tue 17-Apr-01 04:55 by kellythw Image text-base: 0x80008088, data-base: 0x8080853C
Als het IOS eenmaal geladen is, wordt de informatie uit de POST-test weergegeven, zoals u hieronder ziet: cisco 2621 (MPC860) processor (revision 0x101) with 26624K/6144K bytes of geheugen. Processor board ID JAD050697JB (146699779) M860 processor: part number 0, mask 49 Bridging software. X.25 software, Version 3.0.0. 2 FastEthernet/IEEE 802.3 interface(s) 1 Serial network interface(s) 32K bytes of non-volatile configuration memory. 8192K bytes of processor board System flash (Read/Write)
Hoofdstuk 4 • Introductie tot het Cisco-IOS
164
Als het IOS eenmaal actief is, laadt het een bruikbare configuratie vanuit NonVolatile RAM (NVRAM). Als er geen configuratie in NVRAM staat, gaat de router over op setup-modus. Dit is een stap-voor-stap proces om u te helpen de router te configureren. U kunt te allen tijde de setup-modus vanuit de opdrachtregel activeren door de opdracht set-up in te tikken vanuit de zogeheten beheerdersmodus. Hierover later meer. De setup-modus voert alleen zeer algemene opdrachten uit, maar deze kan zeer nuttig zijn als u niet weet hoe u bepaalde protocollen moet configureren, zoals bridging of DECnet.
4.2 Setup-modus U hebt dus eigenlijk twee mogelijkheden als u setup-modus gebruikt: Basic Management en Extended Setup. Met Basic Management hebt u slechts voldoende configuratiemogelijkheden om verbinding te leggen met de router. Met de Extended Setup kunt u sommige algemene parameters en interface-configuratie parameters instellen: --- System Configuration Dialogue --Do you want to enter the configuration ??? dialogue? [yes/no]: y At any point you may enter a question mark “?” for help. Use ctrl-c to abort configuration dialog at any prompt. Default settings are in square brackets “[]”.
Kijk eens naar de twee regels hierboven. De eerste regel zegt dat u Ctrl-C kunt gebruiken om de configuratie-dialoog op elk gewenste prompt af te breken. De tweede regel zegt dat de standaard instellingen tussen vierkante haakjes staan ‘[]’. Met de Basic Management Setup krijgt u maar net voldoende aansluitbaarheid om het systeem te kunnen beheren. Met Extended Setup kun t u zoveel méér doen. En daarom vraagt deze modus u om elke interface op het systeem te configureren. Do wou want to enter the basic management setup program? [yes/no]: n First, do you want to see the current interface summary? [yes]:return Every interface listed?? with OK? value “NO” has no valid configuration Interface IP-Address OK? Method Status Protocol FastEthernet0/0 unassigned NO unset up up FastEthernet0/1 unassigned NO unset up up
Studiegids Cisco CCNA
165
Configure global parameters: Enter host name [Router]: Todd The enable secret is a password that protects the access to privileged EXEC and configuration modes. This password, once enterd, is encrypted in the configuration. Enter authorisation Secret: todd The eanble password is used when you do not specify an enable secret wachtwoord, with sone older software versions and some boot images Enter enable password: todd % Please choose a password that is different from the enable secret. Enter enable password: todd1
Even iets tussendoor. Is het u opgevallen dat u in setup-modus twee ‘enable’ wachtwoorden moet configureren? Wachtwoorden worden verderop in dit hoofdstuk behandeld, maar u moet goed begrijpen dat u eigenlijk alleen het ‘enable secret’ wachtwoord gebruikt. Het ‘enable’ wachtwoord wordt gebruikt voor pre-10.3 IOSrouters (hele oude routers). Toch moet u het wachtwoord configureren in setupmodus, en het moet verschillen van het ‘enable secret’-wachtwoord. Als het ‘enable secret’wachtwoord geconfigureerd is, zal het ‘enable‘ wachtwoord nooit gebruikt worden.
Het ‘enable secret’ wachtwoord is versleuteld maar het ‘enable’ wachtwoord niet.
Het volgende wachtwoord is nodig om Telnet-sessies naar de router mogelijk te maken. U moet een Telnet (VTY)-wachtwoord configureren omdat u niet naar een router kunt telnetten als er geen wachtwoord voor de VTY-lijnen ingegeven is. The virtual terminal password is used to protect access to the router over a network interface. Enter virtual terminal password: todd Configure SNMP Network Management? [yes]:enter of no Community string [public]:enter Configure DECnet? [no]:enter Configure AppleTalk? [no]:enter Configure IP? [yes]:enter Configure IGRP routing? [yes]: n Configure RIP routing? [no]:enter Configure bridging? [no]:enter Configure IPX? [no]:enter
166
Hoofdstuk 4 • Introductie tot het Cisco-IOS
Deze opdrachten helpen u een protocol te configureren als u niet zeker weet welke opdrachten u nodig hebt. Als u echter de Command-Line Interface (CLI) gebruikt in plaats van setup-modus, hebt u veel meer flexibiliteit. De CLI wordt in de volgende paragraaf behandeld. Als u een Async-modemkaart hebt geïnstalleerd op uw router, kunt u via setupmodus de modems configureren: Async lines accept incoming calls. If you will have users dial in via modems, configure these lines. Configurere Async lines? [yes]: n
Als uw router een ISDN-BRI-interface heeft, verschijnt de prompt waarmee u het ISDN-switch type kunt configureren. Kijk eens naar de router-uitvoer: BRI interface needs isdn switch-type to configure Valid switch types are: [0] none..........Only if you don’t want to configure BRI. [1] basic-1tr6....1TR6 switch type for Germany [2] basic-5ess....AT&T 5ESS switch type for the US/Canada [3] basic-dms100..Northern DMS-100 switch type for the US/ Canada [4] basic-net3....NET3 switch type for the UK and Europe [5] basic-ni......Nationaal ISDN switch type [6] basic-ts013...TS013 switch type for Australia [7] ntt...........NTT switch type for Japan [8] vn3...........VN3 en VN4 switch types for France Choose ISDN BRI Switch Type [2]: 2
De volgende sectie van de Extended Setup behandelt het configureren van de interfaces. Op deze router zijn er slechts twee FastEthernet-interfaces: FastEthernet 0/0 en FastEthernet 0/1. De router-interfaces worden later in dit hoofdstuk behandeld. Configuring interface parameters: Do you want to configure FastEthernet0/0 interface? [yes]:return Use the 100 Base-TX (RJ-45) connector? [yes]:return Operate in full-duplex mode? [no]: y en return Configure IP on this interface? [yes]:return IP address for this interface: 1.1.1.1 Subnet mask for this interface [255.0.0.0] : 255.255.0.0 Class A network is 1.0.0.0, 16 subnet bits; mask is /16 Do you want to configure FastEthernet0/1 interface? [yes]:return
Studiegids Cisco CCNA
167
Use the 100 Base-TX (RJ-45) connector? [yes]:return Operate in full-duplex mode? [no]:y en return Configure IP on this interface? [yes]:return IP address for this interface: 2.2.2.2 Subnet mask for this interface [255.0.0.0] : 255.255.0.0 Class A network is 2.0.0.0, 16 subnet bits; mask is /16
Deze configuratie is zeer basaal, maar hiermee kunt u een router snel aan de praat krijgen. Het masker is hier /16. Dit betekent dat 16 van de 32 bits gebruikt worden.
Zie hoofdstuk 3 als u IP-subnetting nog eens wilt bekijken.
De Extended Setup toont nu de door u gemaakte huidige configuratie: The following configuration command script as created: hostname Todd enable secret 5 $1$B0wu$5F0m/EDdtRkQ4vy4a8qwC/ enable wachtwoord todd1 line vty 0 4 password todd snmp-server community public ! no decnet routing no appletalk routing ip routing no bridge 1 no ipx routing ! interface FastEthernet0/0 media-type 100BaseX full-duplex ip address 1.1.1.1 255.255.0.0 no mop enabled ! interface FastEthernet0/1 media-type 100BaseX full-duplex ip address 2.2.2.2 255.255.0.0 no mop enabled dialer-list 1 protocol ip permit dialer-list 1 protocol ipx permit ! end
Hoofdstuk 4 • Introductie tot het Cisco-IOS
168
[0] Go to the IOS command prompt without saving this config. [1] Return back to the setup without saving this config. [2] Save this configuration to nvram and exit. Enter your selection[2]:0
Het meest interessante aan de Extended Setup zijn de opties die u aan het einde voorgeschoteld krijgt. U kunt teruggaan naar CLI-modus en de huidige actieve configuratie negeren [0]; u kunt teruggaan naar setup om alles opnieuw te doen [1]; of u kunt de configuratie in NVRAM bewaren als de startup-config. Deze configuratie wordt dan geladen als de router opnieuw gestart wordt. Kies ‘0’ om naar het IOS te gaan – en sla het bestand dat net gemaakt is niet op. Hiermee komt u in de CLI terecht.
U kunt te allen tijde de setup-modus verlaten door Ctrl+C in te drukken.
4.3 Command-Line Interface Omdat hij zo flexibel is, is de Command-Line Interface (CLI) echt de beste manier om een router te configureren. De CLI wordt soms de ‘Cash Line Interface’ genoemd, omdat u gegarandeerd geld verdient als u geavanceerde configuraties op Cisco-routers en switches maakt met behulp van de CLI! Als u de CLI wilt gebruiken, selecteer dan No in het scherm met de Initial Configuration Dialog. Als u dat doet vertelt de router u alles wat u moet weten over de status van alle interfaces. Would you like to enter the initial configuration dialog? [yes]: n Would you like to terminate autoinstall? [yes]: press return Choose RETURN and get started! 00:00:42: %LINK-3-UPDOWN: Interface to up 00:00:42: %LINK-3-UPDOWN: Interface to down 00:00:42: %LINK-3-UPDOWN: Interface to down 00:00:42: %LINEPROTO-5-UPDOWN: Line Ethernet0, changed state to up
Ethernet0, changed state Serial0, changed state Serial1, changed state protocol on Interface
Studiegids Cisco CCNA
169
00:00:42: %LINEPROTO-5-UPDOWN: Line protocol on Interface Serial0, changed state to down 00:00:42: %LINEPROTO-5-UPDOWN: Line protocol on Interface Serial1, changed state to down 00:01:30: %LINEPROTO-5-UPDOWN: Line protocol on Interface Ethernet0, changed state to down 00:01:31: %LINK-5-CHANGED: Interface Serial0, changed state to administratively down 00:01:31: %LINK-5-CHANGED: Interface Ethernet0, changed state to administratively down 00:01:31: %LINK-5-CHANGED: Interface Serial1, changed state to administratively down 00:01:32: %IP-5-WEBINST_KILL: Terminating DNS process 00:01:38: %SYS-5-RESTART: System restarted — Cisco Internetwork Operating System Software IOS (tm) 2500 Software (C2500-DS-L), Version 11.3(9), RELEASE SOFTWARE (fc1) Copyright (c) 1986-1999 by cisco Systems, Inc. Compiled Tue 06-Apr-99 19:23 by dschwart IOS (tm) 2500 Software (C2500-DS-L), Version 11.3(9), RELEASE SOFTWARE (fc1) Copyright (c) 1986-1999 by cisco Systems, Inc. Compiled Tue 06-Apr-99 19:23 by dschwart
4.3.1
Op de router inloggen Druk op Return als de statusberichten van de interface verschijnen. De prompt Router> verschijnt nu. Dit is de gebruikersmodus waarmee u de interne meetwaarden bekijkt. Het is ook een opstapje naar het inloggen in beheerdersmodus. U kunt de configuratie van een Cisco-router alleen in beheerdersmodus bekijken en wijzigen. Typ enable als u naar beheerdersmodus wilt gaan. Router> Router>enable Router#
U zit nu op een Router#. Dit betekent dat u in beheerdersmodus werkt en de configuratie van de router kunt bekijken en wijzigen. U kunt teruggaan naar gebruikersmodus met de opdracht ‘disable’. Router#disable Router>
Typ hier logout om de console te verlaten:
Hoofdstuk 4 • Introductie tot het Cisco-IOS
170 Router>logout Router con0 is now available Press RETURN to get started.
U kunt ook gewoon logout of exit typen op de prompt van de beheerdersmodus om uit te loggen. Router>en Router#logout Router con0 is now available Press RETURN to get started.
4.3.2
Overzicht van de router-modi Als u de CLI wilt activeren om algemene wijzingen aan te brengen op de router, tik dan configure terminal (kortweg: config t). Hiermee komt u in de algemene configuratiemodus (global configuration mode) en daarin kunt u de actieve configuratie wijzigen. Typ config op de prompt van de beheerdersmodus. Kies dan het standaardantwoord [terminal] op de volgende vraag door Return in te drukken. Router#config Configuring from terminal, memory, or network [terminal]? press return Enter configuratie commands, one per line. End with CNTL/Z. Router(config)#
Hier brengt u wijzigingen aan die de router in zijn geheel beïnvloeden, vandaar de term algemene configuratiemodus (global configuration mode). U wijzigt de actieve configuratie – de configuratie die op dat moment in het dynamische RAM (DRAM) is geladen – met de opdracht configure terminal, of config t. Om de start-config te wijzigen – de configuratie die opgeslagen is in NVRAM – typt u de opdracht configure memory, of config mem. Als u de routerconfiguratie van een TFTP-host wilt ophalen (dit wordt behandeld in hoofdstuk 7), typt u configure network, of config net. Begrijp een ding goed: voordat er daadwerkelijk een wijziging doorgevoerd kan worden in een configuratie, moet de router een configuratie in RAM zetten. Dus als u config mem of config net intikt, vervangt u de op dat moment actieve configuratie door de configuratie in NVRAM op een TFTP-host. Dit wordt in hoofdstuk 7 behandeld.
Studiegids Cisco CCNA
171
Configure terminal, configure memory en configure network zijn opdrachten die gebruikt worden om informatie in RAM op een router te configureren. Meestal wordt alleen de opdracht configure terminal gegeven.
4.3.3
CLI-prompts Het is erg belangrijk dat u de prompts begrijpt die u ziet als u een router gaat configureren. Hiermee ziet u gemakkelijker in welke modus u op dat moment werkt, zodat u soepeler van modus kun wisselen. In dit gedeelte ziet u die prompts op een Cisco-router voorkomen. (Controleer altijd uw prompts voordat u de configuratie van een router wijzigt!) Niet elke opdracht wordt behandeld. Dat valt ver buiten de scope van dit examen. In plaats daarvan krijgt u een overzicht van alle prompts die u in dit hoofdstuk en in de rest van het boek tegenkomt. Deze opdrachten zijn die welke u in de praktijk het meest gebruikt, en voor het examen moet kennen.
Interfaces U wijzig een interface vanuit de algemene configuratiemodus (global configuration mode) met de opdracht: Router(config)#interface ? Async Async interface BVI Bridge-Group Virtual Interface Dialer Dialer interface FastEthernet FastEthernet IEEE 802.3 Group-Async Async Group interface Lex Lex interface Loopback Loopback interface Multilink Multilink-group interface Null Null interface Port-channel Ethernet Channel of interfaces Tunnel Tunnel interface Virtual-Template Virtual Template interface Virtual-TokenRing Virtual TokenRing Router(config)#interface fastethernet 0/0 Router(config-if)#
De prompt veranderde in Router(config-if)#? Dit laat u weten dat u in interface configuratie zit. Zou het ook niet leuk zijn als u ook een prompt kreeg die
Hoofdstuk 4 • Introductie tot het Cisco-IOS
172
aangaf welke interface u aan het configureren bent? Helaas, u zult het zonder moeten stellen, want die informatie geeft de prompt niet. (Zou dit een van de redenen zijn dat Cisco-beheerders meer verdienen dan Windows-beheerders? Of is dat gewoon omdat Cisco-experts slimmer zijn?) Een ding is zeker: u moet goed opletten als u een router configureert!
Subinterfaces Met subinterfaces kunt u logische interfaces maken binnen de router. De prompt verandert dan in Router(config-subif)#. (U kunt meer lezen over subinterfaces in de hoofdstukken 8 en 10, maar ga daar nu nog niet naar toe!) Router(config)#int f0/0.? <0-4294967295> FastEthernet interface number Router(config)#int f0/0.1 Router(config-subif)#
Line-opdrachten Gebruik de opdracht line om wachtwoorden voor de gebruikersmodus te configureren. De prompt wordt dan Router(config-line)#. Router#config t Enter configuration commands, one per line. End with CNTL/Z. Router(config)#line ? <0-4> First Line number aux Auxiliary line console Primary terminal line vty Virtual terminal Router(config)#line console 0 Router(config-line)#
De opdracht line console 0 is een major command (ook wel een algemene opdracht – een global command – genoemd). Elke opdracht die achter de prompt (config-line) wordt ingetikt, is een subcommand.
Routing-protocollen configureren Gebruik de prompt (config-router)# om route-protocollen zoals RIP en IGRP te configureren:
Studiegids Cisco CCNA
173
Router#config t Enter configuration commands, one per line. End with CNTL/Z. Router(config)#router rip Router(config-router)#
Het is niet erg als u nog niet begrijpt wat alle opdrachten precies doen, want ze worden later allemaal nader uitgelegd. Op dit moment is slechts zaak de beschikbare prompts te leren.
4.3.4
Edit- en Help-functies U kunt de krachtige edit-functies van het Cisco-IOS gebruiken om u te helpen bij het configureren van uw router. Als u een vraagteken intikt (?) achter een willekeurige prompt, krijgt u een lijst van alle beschikbare opdrachten die u achter die prompt kunt geven: Router#? Exec commands: access-enable Create a temporary Access-List entry access-profile Apply user-profile to interface access-template Create a temporary Access-List entry bfe For manual emergency modes setting clear Reset functions clock Manage the system clock configure Enter configuration mode connect Open a terminal connection copy Copy configuration or image data debug Debugging functions (see also ‘undebug’) disable Turn off privileged commands disconnect Disconnect an existing network connection enable Turn on privileged commands erase Erase flash or configuration memory exit Exit from the EXEC help Description of the interactive help system lock Lock the terminal login Log in as a particular user logout Exit from the EXEC mrinfo Request neighbor and version information from a multicast router --More--
U kunt hier drie dingen doen:
Hoofdstuk 4 • Introductie tot het Cisco-IOS
174
1. Op de spatiebalk drukken om naar de volgende pagina te gaan. Ook die staat vol met informatie. 2. Op Return om de volgende opdracht te zien. 3. Op Q drukken (of op elke andere toets) om het afbeelden van de lijst te stoppen en terug te gaan naar de prompt. En hier ziet u een sneltoets. Als u opdrachten zoekt die met een bepaalde letter beginnen, typ dan die letter en het vraagteken (?) zonder ruimte ertussen: Router#c? clear clock configure connect copy Router#c
Ziet u dat? Als u c? intikt krijgt u een overzicht van alle opdrachten die met ‘c’ beginnen. U ziet ook dat de prompt Router# die tegelijk met onze opdracht verscheen, er nog steeds staat. Dit is handig als u een lange opdracht moet geven en de volgende mogelijke optie voor de opdracht nodig hebt. Het zou nogal vervelend zijn als u telkens de gehele opdracht opnieuw moest invoeren! Om de volgende optie voor een opdracht te vinden, typt u eerste de opdracht en dan een vraagteken: Router#clock ? set Set the time and date Router#clock set ? hh:mm:ss Current Time Router#clock set 10:30:10 <1-31> Day of the month MONTH Month of the year Router#clock set 10:30:10 MONTH Month of the year Router#clock set 10:30:10 <1993-2035> Year Router#clock set 10:30:10
Router#
?
28 ? 28 may ? 28 may 2000 ?
Typ de opdracht clock en vervolgens een spatie en een vraagteken. U ziet nu een lijst van de volgende mogelijke opties voor die opdracht en wat ze doen. Ga gewoon door met het intikken van een opdracht, een spatie en dan een vraagteken totdat alleen (carriage return, Enter) overblijft.
Studiegids Cisco CCNA
175
Als u tijdens het invoeren van opdrachten dit ziet: Router#clock set 10:30:10 % Incomplete command.
weet u dat de opdracht nog niet volledig is. Druk op de toets ↑ om de laatste ingevoerde opdracht op te vragen, en ga dan door met de opdracht door het vraagteken te gebruiken. En als u deze foutmelding krijgt: Router(config)#access-list 110 permit host 1.1.1.1 ^ % Invalid input detected at “^” marker.
hebt u een opdracht verkeerd ingegeven. Ziet u dat kleine dakje – de ^ ? Dit tekentje, de circumflex, geeft aan waar u de opdracht verkeerd hebt ingevoerd. Dit bericht is ook een foutmelding: Router#sh te % Ambiguous command: ‘sh te’
Het betekent dat u niet alle sleutelwoorden of waarden die nodig zijn bij die opdracht hebt ingevoerd. Gebruik het vraagteken om de opdracht te vinden die u nodig hebt: Router#sh te? WORD tech-support terminal
Tabel 4.1 toont de lijst van de beschikbare edit-opdrachten op een Cisco-router. Tabel 4.1
Edit-opdrachten Opdracht
betekenis
Ctrl+A Ctrl+E Esc+B Ctrl+F Esc+F Ctrl+D Backspace Ctrl+R Ctrl+U Ctrl+W Ctrl+Z
Verplaatst de cursor naar het begin van de regel Verplaatst de cursor naar het einde van de regel Gaat een woord terug Gaat een teken vooruit Gaat een woord vooruit Verwijdert een teken Verwijdert een teken Laat een regel opnieuw zien Verwijdert een regel Verwijdert een woord Breekt configuratiemodus af en gaat terug naar EXEC
Tab
Vult een opdracht automatisch aan als u het begin intikt
Hoofdstuk 4 • Introductie tot het Cisco-IOS
176
Een andere leuke functie is het automatisch doorschuiven (scrollen) van lange regels. In het volgende voorbeeld had de ingevoerde opdracht de rechtermarge bereikt. De hele opdracht schoof toen automatisch tien posities naar links. Het dollarteken ($) geeft aan dat de regel naar links geschoven is. Router#config t Enter configuration commands, one per line. End with CNTL/Z. Router(config)#$ 110 permit host 171.10.10.10 0.0.0.0 host
U kunt de uitvoer van de opdracht history bekijken met de opdrachten in tabel 4.2. Tabel 4.2
Opdrachthistorie van de router Opdracht
betekenis
Ctrl+P of ↑ Ctrl+N of ↓ Show history Show terminal
Toont laatst ingevoerde opdracht Toont eerdere ingevoerde opdrachten Toont standaard de laatste 10 ingevoerde opdrachten Toont terminal-configuraties en omvang van de historiebuffer
Terminal history size
Wijzigt de buffergrootte (maximaal 256 opdrachten)
In het volgende voorbeeld wordt de opdracht show history gegeven. Daarna ziet u hoe u de omvang van de historiebuffer wijzigt met terminal history size. U controleert vervolgens deze wijziging met show terminal. Geef eerst de opdracht show history om de laatste tien opdrachten te zien die op de router ingevoerd zijn: Router#sh history en sh history show terminal sh cdp neig sh ver sh flash sh int e0 sh history sh int s0 sh int s1
Geef nu de opdracht show terminal om de omvang van de terminalhistory (historiebuffer) na te gaan:
Studiegids Cisco CCNA
177
Router#sh terminal Line 0, Location: “”, Type: “” [output cut] History is enabled, history size is 10. Full user help is disabled Allowed transports are lat pad v120 telnet mop rlogin nasi. Preferred is lat. No output characters are padded No special data dispatching characters Group codes: 0
De omvang van de historiebuffer wijzigt u vanuit beheerdersmodus met terminal history size : Router#sh terminal Line 0, Location: “”, Type: “” [output cut] Editing is enabled. History is enabled, history size is 25. Full user help is disabled Allowed transports are lat pad v120 telnet mop rlogin nasi. Preferred is lat. No output characters are padded No special data dispatching characters Group codes: 0
4.3.5
Basale route-informatie verzamelen De opdracht show version toont het volgende: 1. De basisconfiguratie voor de hardware van het systeem 2. De software-versie 3. De namen en broncode (sources) van de configuratiebestanden en de bootimage: Router#sh version Cisco Internetwork Operating System Software IOS (tm) 2500 Software (C2500-JS-L), Version 12.0(8), RELEASE SOFTWARE (fc1) Copyright (c) 1986-1999 by cisco Systems, Inc. Compiled Mon 29-Nov-99 14:52 by kpma Image text-base: 0x03051C3C, data-base: 0x00001000
178
Hoofdstuk 4 • Introductie tot het Cisco-IOS
Het bovenstaande beschrijft het Cisco-IOS dat op de router draait. De uitvoer hieronder beschrijft welk Read Only Geheugen (ROM) gebruikt wordt om de router te starten. ROM: System Bootstrap, Version 11.0(10c), SOFTWARE BOOTFLASH: 3000 Bootstrap Software (IGS-BOOT-R), Version 11.0(10c), RELEASE SOFTWARE (fc1)
De volgende uitvoer laat zien hoe lang de router al draait, hoe deze opnieuw gestart is (als u de mededeling krijgt System restarted by bus-error (‘systeem opnieuw gestart door bus-fout’), zit u zwaar in de problemen). Hier ziet u ook waarvanuit het Cisco-IOS geladen werd. Als laatste toont de uitvoer de IOS-naam. Flash is de standaard: RouterA uptime is 5 minutes System restarted by power-on System image file is “flash:c2500-js-l_120-8.bin”
Het volgende deel toont de processor (de machtige 68030!), de enorme hoeveelheid DRAM en flash-geheugen en de interfaces die de POST op de router heeft gevonden: cisco 2522 (68030) processor (revision N) with 14336K/2048K bytes of memory. Processor board ID 15662842, with hardware revision 00000003 Bridging software. X.25 software, Version 3.0.0. SuperLAT software (copyright 1990 by Meridian Technology Corp). TN3270 Emulation software. Basic Rate ISDN software, Version 1.1. 1 Ethernet/IEEE 802.3 interface(s) 2 Serial network interface(s) 8 Low-speed serial(sync/async) network interface(s) 1 ISDN Basic Rate interface(s) 32K bytes of non-volatile configuration memory. 16384K bytes of processor board System flash (Read ONLY) Configuration register is 0x2102
Het configuratie-registeradres wordt als laatste getoond – dit register wordt in hoofdstuk 7 behandeld.
Studiegids Cisco CCNA
4.3.6
179
Wachtwoorden instellen Er zijn vijf wachtwoorden om de Cisco-routers mee te beveiligen. Zoals u eerder in dit hoofdstuk hebt geleerd, worden de eerste twee gebruikt om in beheerdersmodus te komen. Als een gebruiker de opdracht enable gebruikt, vraagt het systeem hem of ahar om een van deze twee wachtwoorden in te voeren. De andere drie worden gebruikt als de gebruikersmodus wordt geactiveerd via de console-poort, via de auxiliary-poort, of via Telnet.
Enable-wachtwoorden Zo stelt u de ‘enable’ wachtwoorden in vanuit de algemene configuratiemodus: Router(config)#enable ? last-resort Define enable action if no TACACS servers respond password Assign the privileged level password secret Assign the privileged level secret use-tacacs Use TACACS to check enable passwords
Last-resort (laatste uitwijkmogelijkheid) Hiermee kunt u de router nog steeds benaderen als u via een TACACS-server de toegang heeft beveiligd en deze server niet beschikbaar is. Wordt niet gebruikt als de TACACS-server actief is. Wachtwoord Stelt het ‘enable’ wachtwoord in op oudere, pre-10.3 systemen. Wordt nooit gebruikt als er een ‘enable secret’ wachtwoord is ingesteld. Secret Het nieuwere, versleutelde wachtwoord dat voorrang krijgt boven het ‘enable’ wachtwoord als dat ingesteld is. Use-tacacs Vertelt de router dat deze de toegang middels een TACACS-server moet beveiligen. Dit is handig als u tientallen of zelfs honderden routers hebt. Of zou u graag het wachtwoord op 200 routers willen veranderen? Als u via de TACACS-server gaat hoeft u het wachtwoord slechts eenmaal te wijzigen. Router(config)#enable secret todd Router(config)#enable password todd The enable password you have chosen is the same as your enable secret. This is not recommmended. Re-enter the enable password.
Hoofdstuk 4 • Introductie tot het Cisco-IOS
180
Als u probeert hetzelfde wachtwoord in te voeren voor het ‘enable secret’- en ‘enable’-wachtwoord, geeft de router u een vriendelijke en beleefde waarschuwing. U moet het tweede wachtwoord wijzigen. Als u geen verouderde routers hebt, hoeft u niet eens te probéren het enable wachtwoord te gebruiken. Wachtwoorden voor gebruikersmodus worden toegewezen met de opdracht line: Router(config)#line ? <0-4> First Line number aux Auxiliary line console Primary terminal line vty Virtual terminal
Aux Stelt op de auxiliary-poort het wachtwoord voor de gebruikersmodus in. Het wordt meestal gebruikt om een modem op de router te configurere. Maar deze poort kan ook als een console gebruikt worden. Console Stelt het gebruikersmodus wachtwoord in voor een console. Vty Stelt een Telnet-wachtwoord op de router in. Als dit wachtwoord niet is ingesteld, kan Telnet niet worden gebruikt. Om de wachtwoorden voor de gebruikersmodus te configureren, configureert u het type verbinding dat u wilt. Dan typt u login of no login om de router te vertellen dat of deze bij dit type verbinding om een wachtwoord moet vragen. Het volgende kopje toont voor elk type verbinding stap-voor-stap een voorbeeld van de configuratie.
Hulpwachtwoord Om het hulpwachtwoord te configureren gaat u naar algemene configuratiemodus en typt line aux ?. U krijgt de keuze uit 0–0, omdat er slechts één poort is: Router(config-line)#line console ? % Unrecognized command Router(config-line)#exit Router(config)#line console ? <0-0> First Line number Router(config)#line console 0 Router(config-line)#login Router(config-line)#password todd1
Studiegids Cisco CCNA
181
Het is belangrijk dat u de login-opdracht onthoudt. De auxiliary-poort vraagt anders niet om een wachtwoord.
Console-wachtwoord Om het wachtwoord voor de console in te stellen geeft u de opdracht line console 0. Maar ziet u wat er gebeurde toen de opdracht line console 0 ? werd ingevoerd terwijl de poort nog werd geconfigureerd? Er verscheen een foutmelding. U kunt nog steeds line console 0 typen. Die opdracht wordt wel geaccepteerd, maar het hulpscherm werkt gewoon niet vanaf die prompt. Typ exit om een niveau terug te gaan. U ziet dat uw helpscherm nu wel werkt. Dit is een ‘feature’. Router(config-line)#line console ? % Unrecognized command Router(config-line)#exit Router(config)#line console ? <0-0> First Line number Router(config)#line console 0 Router(config-line)#login Router(config-line)#password todd1
Omdat er maar één console-poort is kan alleen voor line console 0 worden gekozen. U kunt het wachtwoord voor alle typen verbindingen op hetzelfde wachtwoord instellen, maar om veiligheidsredenen wordt dat afgeraden. Andere console-poort-opdrachten Er zijn nog een paar andere belangrijke opdrachten voor de console-poort die u moet kennen. De opdracht exec-timeout 0 0 zet de timeout (tijdoverschrijding) voor de console EXEC-sessie op nul, wat betekent dat er nooit een timeout komt. De standaard timeout is tien minuten. (Als u zich eens verveelt kunt u dit uitproberen op uw collega’s: stel het in op 0 1. Hiermee zal de console een timeout geven na één seconde! Om dit op te lossen moet de pijltoets ingedrukt blijven terwijl u de timeouttijd met de andere hand wijzigt!) Logging synchronous is een hele leuke opdracht. Het zou een standaard opdracht moeten zijn, maar dat is niet zo. De opdracht maakt echter wel een einde aan die ergerlijke console-berichten die verschijnen terwijl u aan het werk bent. Ze schoppen de gegevens die u aan het invoeren bent in de war. Uw invoerberichten zijn nu veel gemakkelijker te lezen.
Hoofdstuk 4 • Introductie tot het Cisco-IOS
182
Hier ziet u een voorbeeld van hoe u beide opdrachten moet configureren: Router(config)#line con 0 Router(config-line)#exec-timeout ? <0-35791> Timeout in minutes Router(config-line)#exec-timeout 0 ? <0-2147483> Timeout in seconds Router(config-regel)#exec-timeout 0 0 Router(config-regel)#logging synchronous
Het Telnet-wachtwoord Om het wachtwoord voor gebruikersmodus waarmee u naar de router kunt telnetten in te stellen, typt u line vty. Routers die niet de met Enterprise-editie van het CiscoIOS werken, hebben standaard vijf VTY-poorten; 0 tot en met 4. Maar als u met de Enterprise-editie werkt, hebt u er heel wat meer. De beste manier om erachter te komen hoeveel VTY-poorten u hebt, is met het vraagteken: Router(config-regel)#line vty 0 ? <1-4> Last Line Number Router(config-line)#line vty 0 4 Router(config-regel)#login Router(config-regel)#password todd2
Wat gebeurt er als u probeert te telnetten naar een router waarop geen VTYwachtwoord is ingesteld? U krijgt een foutmelding die zegt dat de verbinding geweigerd is omdat het wachtwoord niet is ingesteld. Maar u kunt dit omzeilen door de router-opdracht te geven de Telnet-verbinding toe te staan zonder een wachtwoord. Dit doet u met no login. Router(config-regel)#line vty 0 4 Router(config-regel)#no login
Nadat de routers geconfigureerd zijn met een IP-adres, kunt u het Telnetprogramma gebruiken om uw routers te configureren en te controleren. U hoeft niet langer een console-kabel te gebruiken. U kunt het Telnet-programma toepassen door telnet te tikken bij elke opdrachtprompt (DOS of Cisco). Telnet wordt in hoofdstuk 7 uitgebreid behandeld.
Studiegids Cisco CCNA
4.3.7
183
Wachtwoorden versleutelen Omdat alleen het ‘enable secret’ wachtwoord versleuteld is, moet u de gebruikersmodus en ‘enable’ wachtwoorden met de hand configureren. U ziet alle wachtwoorden behalve het enable secret als u een show runningconfig uitvoert op een router: Router#sh running-config [uitvoer verwijderd] ! enable secret 5 $1$rFbM$8.aXocHg6yHrM/zzeNkAT. enable password todd1 ! [uitvoer verwijderd] regel con 0 password todd1 login line aux 0 password todd login line vty 0 4 password todd2 login line vty 5 197 password todd2 login ! end Router#
Om uw wachtwoorden met de hand te versleutelen, geeft u de opdracht service password-encryption. Een voorbeeld: Router#config t Enter configuration commands, one per line. End with CNTL/Z. Router(config)#service password-encryption Router(config)#no service password-encryption Router(config)#^Z
Dat is alles! De wachtwoorden zijn nu versleuteld. U versleutelt de wachtwoorden en schakelt dan de opdracht uit. Typ nu show running-config en u ziet dat het enable wachtwoord en de regel-wachtwoorden allemaal versleuteld zijn:
Hoofdstuk 4 • Introductie tot het Cisco-IOS
184 Router#sh run Building configuration...
[uitvoer verwijderd] ! enable secret 5 $1$rFbM$8.aXocHg6yHrM/zzeNkAT. enable password 7 0835434A0D ! [uitvoer verwijderd] ! line con 0 password 7 111D160113 login line aux 0 password 7 071B2E484A login line vty 0 4 password 7 0835434A0D login line vty 5 197 password 7 09463724B login ! end Router#
4.3.8
Banners Met een banner kunt u een waarschuwing geven aan gebruikers die op uw internetwerk inbellen. U kunt een banner instellen op een Cisco-router zodat een gebruiker die zich op de router aanmeldt, of een beheerder die naar de router telnet, een banner krijgt met de informatie die u wilt dat ze krijgen. Er zijn vier soorten banners: Router(config)#banner ? LINE c banner-text c, where “c” is a delimiting character exec Set EXEC process creation banner incoming Set incoming terminal line banner login Set login banner motd Set Message of the Day banner
Message of the Day (MOTD) wordt het meest gebruikt. Iedereen die inlogt of met de router verbinding legt via Telnet, een auxiliary-poort, of een console-poort krijgt een bericht te zien.
Studiegids Cisco CCNA
185
Router(config)#banner motd ? LINE c banner-text c, where “c” is a delimiting character Router(config)#banner motd # Enter TEXT message. End with the character “#”. $ized to be in Acme.com netwerk, then you must disconnect immediately. # Router(config)#^Z Router# 00:25:12: %SYS-5-CONFIG_I: Configured from console by console Router#exit Router con0 is now available Press RETURN to get started. If you are not authorized to be in Acme.com network, then you must disconnect immediately. Router>
Deze MOTD-banner vertelt iedereen die zich op de router aanmeldt, dat als ze niet op de gastenlijst staan, ze moeten ophoepelen! (Bijvoorbeeld: als u niet geautoriseerd bent, moet u de verbinding verbreken.) Wat u goed moet begrijpen is het delimiting-teken – het teken dat gebruikt wordt om de router te vertellen waar het bericht eindigt. U kunt daar een willekeurig teken voor gebruiken, maar u mag het delimiting-teken niet in het bericht zelf gebruiken. Als het bericht afgelopen is druk dan op Return, voer het delimiting-teken in, en druk weer op Return. De banner werkt ook als u dat niet doet, maar als u meer dan één banner hebt worden ze tot één bericht gecombineerd en op één regel gezet. Dit zijn de andere banners: Exec-banner U kunt een line-activation-(exec-)banner configureren die tevoorschijn komt als er een EXEC-proces wordt gestart (zoals bij een line-activation of een verbinding op een VTY-poort). Incoming banner (Binnenkomende banner) U kunt een banner configureren die getoond wordt op terminals die verbonden zijn aan reverse Telnet-poorten. Deze banner is nuttig om gebruikers van reverse Telnet instructies te geven. Login-banner U kunt een login-banner zo configureren dat de router deze banner op elke terminal die verbinding maakt met de router laat zien. Deze banner wordt getoond na de MOTD-banner maar vóór de login-prompts. De login-banner kan niet per poort uitgeschakeld worden’. U moet een banner dus verwijderen met no banner login.
Hoofdstuk 4 • Introductie tot het Cisco-IOS
186
4.3.9
Router-interfaces De interface-configuratie is een van de belangrijkste configuraties van de router, want zonder interfaces is een router totaal nutteloos. Interface-configuraties luisteren nauw want ze moeten met andere apparaten kunnen communiceren. Enkele instellingen waarmee een interface geconfigureerd wordt zijn Netwerklaag-adressen, media-type en bandbreedte. Verschillende routers gebruiken verschillende methoden om hun interfaces te kiezen. De volgende opdracht toont bijvoorbeeld een 2522-router met tien seriële interfaces. De volgnummers zijn 0 tot en met 9: Router(config)#int serial ? <0-9> Serial interface number
Nu is het tijd de interface te kiezen die u wilt configureren. Als dat eenmaal gebeurd is komt u in interface-configuratiemodus voor die bepaalde interface. De opdracht om seriële poort 5 te kiezen zou dan luiden: Router(config)#int serial 5 Router(config)-if)#
De 2522-router heeft een Ethernet 10BaseT-poort. Typ interface ethernet 0 om die interface te configureren: Router(config)#int ethernet ? <0-0> Ethernet interface number Router(config)#int ethernet 0 Router(config-if)#
De 2500-router is een vaste-configuratie router. Dit betekent dat als u een versie of router koopt, u met die bijbehorende configuratie opgescheept bent. Om een interface te configureren moet u altijd de volgorde interface type number gebruiken. De router-series 2600, 3600, 4000, en 7000 hebben echter een fysiek slot in de router. Het poortnummer staat dan op de module die in dat slot is gestoken. In dit voorbeeld wordt de configuratie op een 2600-router interface type slot/port: Router(config)#int fastethernet ? <0-1> FastEthernet interface number Router(config)#int fastethernet 0 % Incomplete command. Router(config)#int fastethernet 0? / Router(config)#int fastethernet 0/? <0-1> FastEthernet interface number
Studiegids Cisco CCNA
187
En onthoud dat u niet gewoon int fastethernet 0 kunt intikken. De volledige opdracht moet ingetikt worden – type slot/port of int fastethernet 0/0 of int fa 0/0. Om het gebruikte type connector in te stellen, kiest u de opdracht media-type. Dat type kan de router meestal zelf bepalen: Router(config)#int fa 0/0 Router(config-if)#media-type ? 100BaseX Use RJ45 for -TX; SC FO for -FX MII Use MII connector
Een interface activeren U kunt een interface uitschakelen met de interface-opdracht shutdown en deze inschakelen met de opdracht no shutdown. Of een interface uitgeschakeld is, kunt u zien met show interface. Een andere manier om de status van de interface na te gaan is met show running-config. Alle interfaces zijn standaard uitgeschakeld. Router#sh int ethernet0 Ethernet0 is administratively down, line protocol is down [uitvoer verwijderd] Activeer de interface met no shutdown. Router#config t Enter configuratie commands, one per line. End with CNTL/Z. Router(config)#int ethernet0 Router(config-if)#no shutdown Router(config-if)#^Z 00:57:08: %LINK-3-UPDOWN: Interface Ethernet0, changed state to up 00:57:09: %REGELPROTO-5-UPDOWN: Line protocol on Interface Ethernet0, changed state to up Router#sh int ethernet0 Ethernet0 is up, line protocol is up [uitvoer verwijderd]
Een IP-adres op een interface instellen Misschien hoeft u zelf geen IP op uw routers te gebruiken, maar veel mensen doen het wel. Om IP-adressen op een interface te configureren geeft u de opdracht ip address vanuit de interface-configuratiemodus:
Hoofdstuk 4 • Introductie tot het Cisco-IOS
188
Router(config)#int e0 Router(config-if)#ip address 172.16.10.2 255.255.255.0 Router(config-if)#no shut
Denk eraan de interface in te schakelen met no shutdown (kortweg: no shut). Denk er ook aan om bijvoorbeeld de opdracht show interface e0 te geven om te zien of de interface uitgeschakeld is of niet. Show running-config
geeft u trouwens dezelfde informatie.
De opdracht ip address address mask start de IP-verwerking op de interface.
Als u een tweede subnet-adres aan een interface wilt toevoegen, geeft u de opdracht secondary. Als u een ander IP-adres intikt en op Enter drukt vervangt u het bestaande IP-adres en subnetmasker. Dit is ongetwijfeld een van de mooiste kenmerken van het Cisco-IOS. Probeer het eens. Voeg een tweede IP-adres toe met de opdracht secondary: Router(config-if)#ip address 172.16.20.2 255.255.255.0 secondary Router(config-if)#^Z
U kunt nagaan of beide adressen geconfigureerd zijn op de interface met show running-config (kortweg: sh run): Router#sh run Building configuration... Current configuration: [uitvoer verwijderd] ! interface Ethernet0 ip address 172.16.20.2 255.255.255.0 secondary ip address 172.16.10.2 255.255.255.0 !
Het is echt niet aan te raden meer IP-adressen op een interface te hebben. Dit is inefficiënt. Het voorbeeld is gegeven voor het geval u op een kwade dag met een MISmanager te maken krijgt die dol is op een totaal belachelijk netwerkontwerp en u dwingt het te beheren!
Studiegids Cisco CCNA
189
Seriële interface-opdrachten Voordat u een seriële interface gaat configureren moet een eerst een paar dingen weten. Ten eerste zal de interface meestal aan een CSU/DSU-type apparaat hangen dat de kloksnelheid voor die verbinding bepaalt. Maar als u een back-to-back configuratie hebt, bijvoorbeeld een die gebruikt wordt in een lab-omgeving, moet één kant de kloksnelheid bepalen. Die kant is in dit geval de DCE-kant van de kabel. Alle Ciscorouters zijn DTE-apparaten, dus moet u een interface-opdracht geven om de kloksnelheid te bepalen als u wilt dat deze interface zich als een DCE-apparaat gedraagt. U configureert een DCE-serïele interface met clock rate: Router#config t Enter configuration commands, one per line. End with CNTL/Z. Router(config)#int s0 Router(config-if)#clock rate ? Speed (bits per second) 1200 2400 4800 9600 19200 38400 56000 64000 72000 125000 148000 250000 500000 800000 1000000 1300000 2000000 4000000 <300-4000000>
Choose clockrate from list above
Router(config-if)#clock rate 64000 %Error: This command applies only to DCE interfaces Router(config-if)#int s1 Router(config-if)#clock rate 64000
Het kan geen kwaad om een kloksnelheid op een interface te zetten. De opdracht clock rate is in bits per seconde.
Hoofdstuk 4 • Introductie tot het Cisco-IOS
190
De tweede opdracht die u moet kennen is bandwidth. Elke Cisco-router wordt geleverd met de bandbreedte van een T1 (1,544Mbps.) voor seriële verbindingen. Maar dat heeft niets te maken met de manier waarop gegevens worden doorgegeven over een verbinding. De bandbreedte van een seriële verbinding wordt gebruikt door routing protocollen als IGRP, EIGRP en OSPF om zo het beste pad naar een netwerk op afstand te berekenen. Dus als u RIP-routering gebruikt, is de bandbreedte van een seriële verbinding irrelevant. RIP gebruikt daar alleen hop count voor. (Als u meer wilt weten over route-protocollen en metriek, lees dan hoofdstuk 5). Router(config-if)#bandwidth ? <1-10000000> Bandwidth in kilobits Router(config-if)#bandwidth 64
Hebt u gezien dat , in tegenstelling tot de opdracht clock rate, de opdracht bandwidth in kilobits opgeven wordt?
4.3.10
Hostnamen De identiteit van de router wordt met de opdracht hostname ingesteld. Dit is alleen lokaal van belang, en heeft dus geen effect op hoe de router omgaat met ‘lookups’ in het bijzonder. Deze opdracht bepaalt ook niet hoe de router op het internetwerk werkt. Router#config t Enter configuration commands, one per line. End with CNTL/Z. Router(config)#hostname todd todd(config)#hostname Amsterdam Amsterdam(config)#
Het is erg verleidelijk om de host-naam met uw eigen naam te configureren, maar het is aan te raden een naam te kiezen die iets te maken heeft met de locatie van de router.
4.3.11
Beschrijvingen Beschrijvingen instellen op een interface is handig voor de beheerder en, net als de host-naam, alleen lokaal van belang. Dat is een handige opdracht omdat u deze kunt gebruiken om bijvoorbeeld circuitnummers in de gaten te houden.
Studiegids Cisco CCNA
191
Amsterdam(config)#int e0 Amsterdam(config-if)#description Verkoop Lan Amsterdam(config-if)#int s0 Amsterdam(config-if)#desc Wan to Rotterdam circuit:6fdda4321
De beschrijving van een interface kunt u bekijken met show running-config of show interface. Amsterdam#sh run [uitvoer verwijderd] interface Ethernet0 description Verkoop Lan ip address 172.16.10.30 255.255.255.0 no ip directed-broadcast ! interface Serial0 description Wan to Rotterdam circuit:6fdda4321 no ip address no ip directed-broadcast no ip mroute-cache Amsterdam#sh int e0 Ethernet0 is up, line protocol is up Hardware is Lance, address is 0010.7be8.25db (bia 0010.7be8.25db) Description: Verkoop Lan [uitvoer verwijderd] Amsterdam#sh int s0 Serial0 is up, line protocol is up Hardware is HD64570 Description: Wan to Rotterdam circuit:6fdda4321 [uitvoer verwijderd] Amsterdam#
4.3.12
Configuraties bekijken en bewaren Als u in setup-modus werkt vraagt het systeem u of u de configuratie wilt gebruiken die u zojuist hebt gemaakt. Als u Ja zegt, kopieert het systeem de configuratie die in DRAM actief is, de running-config, naar NVRAM. Deze configuratie wordt dan de start-configuratie (startup-config). U kunt de configuratie ook met de hand van DRAM naar NVRAM kopiëren. Dit doet u met copy running-config startup-config. U kunt ook de korte weg nemen met copy run start:
Hoofdstuk 4 • Introductie tot het Cisco-IOS
192
Amsterdam#copy run start Destination filename [startup-config]?return Warning: Attempting to overwrite an NVRAM configuration previously written by a different version of the system image. Overwrite the previous NVRAM configuration?[confirm]return Building configuration...
Het bericht waarschuwt u dat u een oudere start-up config probeert te overschrijven. Het IOS is pas bijgewerkt naar versie 12.8, en de laatste keer dat het bestand opgeslagen werd, draaide 11.3. Als u een vraag ziet met een antwoord tussen blokhaken [ ] betekent dit, dat u het standaard antwoord kiest als u op Enter drukt. Toen het systeem vroeg om de naam van het doelbestand, was het standaardantwoord startup-config. Het ‘feature’-aspect van (in goed Nederlands: de fout in) deze uitvoer is dat u niet eens iets anders in kúnt tikken, anders krijgt u een foutmelding! Amsterdam#copy run start Destination filename [startup-config]? todd %Error opening nvram:todd (No such file or directory) Amsterdam#
Okee – u hebt gelijk – dat is raar! Als u die naam toch niet kunt veranderen, waarom vragen ze hem dan? Omdat dit ‘feature’ pas toegevoegd werd aan versie 12.x van het IOS, is het vrij zeker dat die naam ooit relevant en belangrijk wordt. Hoe dan ook, u kunt beide configuraties vanuit beheerdersmodus bekijken met show running-config of show startup-config. De opdracht sh run is de afkorting voor show running-config. Deze laat u weten dat u de huidige configuratie bekijkt: Router#sh run Building configuration... Current configuration: ! version 12.0 service timestamps debug uptime service timestamps log uptime no service wachtwoord-encryption ! hostname Router ip subnet-zero frame-relay switching ! [uitvoer verwijderd]
Studiegids Cisco CCNA
193
De opdracht sh start – de afkorting voor show startup-config – toont de configuratie die gebruikt zal worden als de router de volgende keer wordt herstart. Het laat ons ook weten hoeveel NVRAM nodig is om het deze startconfiguratie te bewaren: Router#sh start Using 4850 out of 32762 bytes ! version 12.0 service timestamps debug uptime service timestamps log uptime no service password-encryption ! hostname Router ! ! ip subnet-zero frame-relay switching ! [uitvoer verwijderd]
Het bestand startup-config kan verwijderd worden met erase startup-config. Als u daarna weer probeert het bestand startup-config te bekijken krijgt u een foutmelding. Router#erase startup-config Erasing the nvram filesystem will remove all files! Continue? [confirm] [OK] Erase of nvram: complete Router#sh start %% Non-volatile configuration memory is not present Router#
Als u de router opnieuw laadt na de opdracht erase startup-config komt u in de setup-modus terecht. Druk op Ctrl+C om de setup-modus te verlaten. Op dit punt moet u de setup-modus niet meer gebruiken om de router mee te configureren. Setup-modus is ontworpen om mensen te helpen die niet weten hoe ze de Cash Line Interface moeten gebruiken. Dat weet u intussen wel!
4.3.13
De configuratie controleren Het is duidelijk: de show running-config methode is de beste manier om uw configuratie te controleren. Show startup-config is de beste manier om te controleren welke configuratie gebruikt wordt als de router opnieuw geladen wordt.
Hoofdstuk 4 • Introductie tot het Cisco-IOS
194
Als u de running-config bekijkt en het lijkt allemaal te werken, kunt u uw configuratie controleren met utilities als Ping en Telnet. Ping staat voor Packet Internet Groper. Het is een programma dat gebruik maakt van ICMP-echo-verzoeken en -antwoorden (requests en replies). (ICMP wordt in hoofdstuk 3 behandeld). Ping stuurt een pakket naar een niet-lokale host. Als die host antwoordt, weet u dat die host actief is. Maar u weet niet of deze wel goed functioneert – dat u een NT server kunt pingen betekent dat nog niet dat u kunt inloggen. Maar zelfs met dit nadeel is Ping een indrukwekkend beginpunt voor het oplossen van problemen in een internetwerk. Wist u dat u met verschillende protocollen kunt pingen? Het is mogelijk en u kunt dit proberen door in gebruikersmodus of beheerdersmodus ping ? in te tikken achter de prompt van de router: Router#ping ? WORD appletalk decnet ip ipx srb
Ping destination address or hostname Appletalk echo DECnet echo IP echo Novell/IPX echo srb echo
Om het netwerkadres van de buren te vinden moet u naar de router of de switch gaan. U kunt ook show cdp entry * protocol typen. Met deze opdracht vindt u de netwerkadressen die u nodig hebt om te Pingen. (Cisco Discovery Protocol [CDP] wordt in hoofdstuk 6 behandeld.) Traceroute gebruikt ICMP-timeouts om het pad dat een pakket over een internetwerk neemt in de gaten te houden. Ping daarentegen vindt gewoon de host en geeft antwoord. Trace wordt ook gebruikt bij meer protocollen. Router#traceroute ? WORD Trace route to destination address or hostname appletalk AppleTalk Trace clns ISO CLNS Trace ip IP Trace oldvines Vines Trace (Cisco) vines Vines Trace (Banyan)
Telnet is een geweldig gereedschap. Het gebruikt IP op de Netwerk-laag en TCP op de Transport-laag om een sessie op een niet-lokale host te beginnen. Als u naar een apparaat kunt telnetten moet uw IP-verbinding wel in orde zijn. U kunt alleen naar IPadressen telnetten en vanaf Windows-hosts of routerprompts naar niet-lokale apparaten telnetten.
Studiegids Cisco CCNA
195
Router#telnet ? WORD IP address or hostname of a remote system
Typ achter de routerprompt een host-naam of IP-adres en het systeem neemt aan dat u wilt telnetten – het is niet nodig de eigenlijke opdracht te typen: telnet.
Controleren met de opdracht Show Interface Een andere manier om uw configuratie te controleren is door het intikken van de opdrachten show interface. De eerste daarvan is show interface ?. Dit levert een lijst op met alle beschikbare interfaces die geconfigureerd kunnen worden. De enige niet-logische interfaces zijn Ethernet en Serial. Router#sh int ? Ethernet IEEE 802.3 Null Null interface Serial Serial accounting Show interface accounting crb Show interface routing/bridging info irb Show interface routing/bridging info
De volgende opdracht is show interface ethernet 0. Die toont het hardware-adres, het logische adres, de inkapselingsmethode en het aantal collisions: Router#sh int e0 Ethernet0 is up, line protocol is up Hardware is Lance, address is 0010.7b7f.c26c (bia 0010.7b7f.c26c) Internet address is 172.16.10.1/24 MTU 1500 bytes, BW 10000 Kbit, DLY 1000 usec, reliability 255/255, txload 1/255, rxload 1/255 Encapsulation ARPA, loopback not set, keepalive set (10 sec) ARP type: ARPA, ARP Timeout 04:00:00 Last input 00:08:23, output 00:08:20, output hang never Last clearing of “show interface” counters never Queueing strategy: fifo Output queue 0/40, 0 drops; input queue 0/75, 0 drops 5 minute input rate 0 bits/sec, 0 packets/sec 5 minute output rate 0 bits/sec, 0 packets/sec
196
Hoofdstuk 4 • Introductie tot het Cisco-IOS 25 packets input, 2459 bytes, 0 no buffer Received 25 broadcasts, 0 runts, 0 giants, 0 throttles 0 input errors, 0 CRC, 0 frame, 0 overrun, 0 ignored, 0 abort 0 input packets with dribble condition detected 33 packets output, 7056 bytes, 0 underruns 0 output errors, 0 collisions, 1 interface resets 0 babbles, 0 late collision, 0 deferred 0 lost carrier, 0 no carrier 0 output buffer failures, 0 output buffers swapped out
De belangrijkste informatie die u van show interface krijgt zijn de gegevens over de verbindingsstatus en status van het data-link protocol. Als de uitvoer aantoont dat Ethernet 0 en het verbindingsprotocol functioneren, dan werkt de interface goed. RouterA#sh int e0 Ethernet0 is up, line protocol is up
De eerste parameter slaat op de Fysieke laag. Die functioneert goed als de router het bericht ‘carrier detect’ ontvangt. De tweede parameter heeft te maken met de Data-Link-laag. Deze is onafhankelijk van de ontvangst van de keepalive-berichten van de apparaten die met deze interface verbonden zijn. (Keepalives worden tussen apparaten gebruikt om te zorgen dat de verbinding in stand gehouden wordt.) RouterA#sh int s0 Serial0 is up, line protocol is down
Als de lijn ‘up’ is maar het protocol ‘down’, hebt u te maken met een probleem op het gebied van de kloksnelheid, de keepalive of de framing. Controleer of de keepalive-instellingen aan beide uiteinden van de verbinding gelijk zijn, dat de kloksnelheid ingesteld is, en dat het inkapselingstype aan beide zijden hetzelfde is. RouterA#sh int s0 Serial0 is down, line protocol is down
Zijn zowel de interface als het protocol ‘down’, dan is de oorzaak waarschijnlijk een kabel of een interface. Is het ene eind door de beheerder uitgeschakeld (zie hierna), dan zal het andere einde waarschijnlijk voor beide parameters de status ‘down’ weergeven. Om de interface in te schakelen geeft u de opdracht no shutdown in interface-configuratie: RouterB#sh int s0 Serial0 is administratively down, line protocol is down
Studiegids Cisco CCNA
197
De volgende opdracht show interface serial 0 toont de status van de serïele lijn en de Maximum Transmission Unit (MTU) – standaard 1.500 bytes. De opdracht toont ook de standaard bandbreedte (BW) op alle Cisco-serïele verbindingen: 1.544Kbps. Deze waarde wordt gebruikt om de bandbreedte van een lijn te bepalen voor route-protocollen als IGRP, EIGRP, en OSPF. Een belangrijke instelling om goed in de gaten te houden is de keepalive. Die is standaard ingesteld op tien seconden. Elke router stuurt elke tien seconden een keepalive-bericht naar diens buurman en als de beide routers niet op de dezelfde keepalive-tijd staan ingesteld, werkt het gewoon niet. U kunt de tellers op de interface opnieuw initialiseren met clear counters: Router#sh int s0 Serial0 is up, line protocol is up Hardware is HD64570 MTU 1500 bytes, BW 1544 Kbit, DLY 20000 usec, reliability 255/255, txload 1/255, rxload 1/255 Encapsulation HDLC, loopback not set, keepalive set (10 sec) Last input never, output never, output hang never Last clearing of “show interface” counters never Queueing strategy: fifo Output queue 0/40, 0 drops; input queue 0/75, 0 drops 5 minute input rate 0 bits/sec, 0 packets/sec 5 minute output rate 0 bits/sec, 0 packets/sec 0 packets input, 0 bytes, 0 no buffer Received 0 broadcasts, 0 runts, 0 giants, 0 throttles 0 input errors, 0 CRC, 0 frame, 0 overrun, 0 ignored, 0 abort 0 packets output, 0 bytes, 0 underruns 0 output errors, 0 collisions, 16 interface resets 0 output buffer failures, 0 output buffers swapped out 0 carrier transitions DCD=down DSR=down DTR=down RTS=down CTS=down Router#clear counters ? Ethernet IEEE 802.3 Null Null interface Serial Serial Router#clear counters s0 Clear “show interface” counters on this interface [confirm]return Router# 00:17:35: %CLEAR-5-COUNTERS: Clear counter on interface Serial0 by console Router#
Hoofdstuk 4 • Introductie tot het Cisco-IOS
198
De opdracht Show Controllers De opdracht show controllers geeft u informatie over de fysieke interface. De opdracht laat u ook het type seriële kabel zien dat op een seriële poort is aangesloten. Dit zal meestal alleen de DTE-kabel zijn. Deze is verbonden met een type Data Service Unit (DSU)-apparaat. Router#sh controllers serial 0 HD unit 0, idb = 0x1229E4, driver structure at 0x127E70 buffer size 1524 HD unit 0, V.35 DTE cable cpb = 0xE2, eda = 0x4140, cda = 0x4000 Router#sh controllers serial 1 HD unit 1, idb = 0x12C174, driver structure at 0x131600 buffer size 1524 HD unit 1, V.35 DCE cable cpb = 0xE3, eda = 0x2940, cda = 0x2800
Op de interface serial 0 is een DTE-kabel aangesloten, terwijl op de interface serial 1 een DCE-kabel is aangesloten. Serial 1 moet de kloksnelheid voor de verbinding bepalen met de opdracht clock rate . Serial 0 volgt de kloksnelheid die door de DSU is bepaald.
4.4 Samenvatting Dit is het einde van uw kennismaking met het Cisco-Internetwerk Operating System (IOS)! Het is, maar dat weet u inmiddels, het enorm belangrijk dat u deze basiskennis goed beheerst voordat u doorgaat met de volgende hoofdstukken. De elementen van deze basiskennis staan hieronder: • Het Cisco Internetwerk Operating System (IOS) begrijpen en weten hoe u het IOS gebruikt om Cisco-routers te configureren en te laten werken. • Een router benaderen via consoleverbindingen en LANverbindingen. • Een router activeren en de setup-modus starten. • Op een router inloggen en het verschil kennen tussen gebruikersmodus en beheerdersmodus. • Routerprompts begrijpen in de configuratiemodus van de router. • De edit- en hulpfunctionaliteit van de CLI op de router begrijpen. • Bijeenzoeken van basale routering informatie met behulp van de show opdrachten:
Studiegids Cisco CCNA
199
• Wachtwoorden instellen op de router voor de gebruikersmodus (user mode) en de beheerdersmodus (privileged mode). • Router-banners instellen voor identificatie. • Een interface configureren en het IP-adres op een interface instellen. • Hostnamen op een router instellen voor router-identificatie. • Interface-beschrijvingen instellen om elke interface op een router te identificeren. • Router-configuraties bekijken en bewaren met de show en de copy run start-opdrachten. • Verifiëren van routering-configuraties met de show-opdrachten.
4.5 Kernbegrippen Voor het examen moet u de volgende begrippen kennen: Auxiliary-poort Basic management setup Cisco-Internetwerk Operating System (IOS) Command-Line Interface (CLI) console-poort extended setup setup-modus Telnet
Hoofdstuk
5
IP-routeren DE VOLGENDE ONDERWERPEN UIT HET CCNA-EXAMEN WORDEN IN DIT HOOFDSTUK BEHANDELD: ✓ Routing •
Een RIP-routeprotocol toevoegen aan uw configuratie.
•
Een IGRP-routeprotocol toevoegen aan uw configuratie.
✓ Cisco-basisbegrippen, het IOS en basisbegrippen van netwerken •
Opsommen van problemen waarop elk type routering stuit bij wijzigingen in topologie en beschrijven van technieken om deze problemen te verminderen.
D
it hoofdstuk behandelt IP-routering (IP-routeren). Dat is een belangrijk onderwerp omdat het verband houdt met alle routers en configuraties die IP gebruiken. IP-routering is het proces waarbij pakketten verhuizen van het ene netwerk naar het andere. Daarbij wordt gebruik gemaakt van routers. Voordat u dit hoofdstuk leest, moet u het verschil begrijpen tussen een routing protocol (routeprotocol) en een gerouteerd protocol. Een routeprotocol wordt door routers gebruikt om alle netwerken in het internetwerk dynamisch te zoeken en zich ervan te overtuigen dat alle routers dezelfde routetabel gebruiken. Voorbeelden van routeprotocollen zijn RIP en IGRP. Als alle routers eenmaal op de hoogte zijn van alle netwerken, kunt u met een gerouteerd protocol gebruikersgegevens (pakketten) over het internetwerk sturen. Voorbeelden van een gerouteerd protocol zijn IP en IPX. In dit hoofdstuk leert u hoe u op Cisco-routers IP-routeren moet configureren en controleren. De volgende onderwerpen worden behandeld: • Statisch routeren • Standaard routeren • Dynamisch routeren
5.1 Basisbegrippen van routering Als u een internetwerk maakt door uw WANs en LANs aan een router te verbinden moet u daarna een logisch netwerkadres (zoals een IP-adres) configureren op alle hosts op het internetwerk. Hiermee kunnen de hosts met elkaar over het internetwerk communiceren. Routering (routeren) is de term die gebruikt wordt om een pakket van een apparaat op een netwerk door het internetwerk naar een ander apparaat op een ander netwerk te sturen. Routers malen niet om hosts – ze willen alleen de netwerken weten en het beste pad naar elk netwerk. Het logische netwerkadres van de bestemmingshost wordt gebruikt om pakketten naar een netwerk te krijgen via een gerouteerd netwerk.
Studiegids Cisco CCNA
223
Dan wordt het hardware-adres van de host gebruikt om het pakket van een router aan de bestemmingshost over te dragen. Als uw netwerk geen routers heeft, kunt u niet routeren. Routers regelen het verkeer naar alle netwerken in uw internetwerk. Om pakketten te kunnen versturen moet een router minimaal het volgende weten: • Het bestemmingsadres • De naburige routers waar deze meer kan leren over bestemmingsnetwerken • De mogelijke routes naar alle bestemmingsnetwerken • De beste route naar elk bestemmingsnetwerk • Hoe een router routeinformatie bijhoudt en controleert De router krijgt van zijn buren of een beheerder informatie over bestemmmingsnetwerken. De router bouwt dan een routetabel die beschrijft hoe hij de bestemmingsnetwerken moet vinden. Als het netwerk direct-verbonden is aan de router weet de router al hoe hij bij het netwerk moet komen. Als de netwerken niet direct-verbonden zijn, moet de router leren hoe hij naar dat bestemmingsnetwerk moet komen door statische of dynamische routering. Statische routering betekent dat de beheerder met de hand alle bestemmingsnetwerken in de routetabel moet tikken. Bij dynamische routering communiceert een protocol op een router met hetzelfde protocol op naburige routers. De routers brengen elkaar dan op de hoogte van alle netwerken die ze kennen en zetten die gegevens in de routetabel. Als er een wijziging in het netwerk optreedt, brengen de dynamische routeprotocollen automatisch alle routers van deze wijziging op de hoogte. Als er statische routering wordt gebruikt moet de beheerder alle wijzigingen met de hand in alle routers te zetten. Meestal wordt in een groot netwerk een combinatie van zowel dynamische als statische routering gebruikt.
5.2 Het IP-routeringsproces Het IP-routeringsproces is relatief eenvoudig en de omvang van het netwerk doet er niet toe. Als voorbeeld dient figuur 5.1. Aan de hand van deze figuur wordt stap voor stap beschreven wat er gebeurt als host A met host B op een ander netwerk wil communiceren. In dit voorbeeld pingt een gebruiker op host A het IP-adres van host B. Het kan niet eenvoudiger, maar toch moet een aantal stappen gezet worden: 1. ICMP – Internet Control Message Protocol – maakt een echo request van enige omvang (het alfabet in het Data-veld; het veld met gegevens).
Hoofdstuk 5 • IP-routeren
224 Figuur 5.1
Een voorbeeld van IP-routering met twee hosts en een router Host A 172.16.10.2
Host B 172.16.20.2
Ethernet0 172.16.10.1
Ethernet1 172.16.20.1
2. ICMP overhandigt die inhoud aan IP, dat er een pakket van maakt. Dit pakket moet minimaal een IP-bronadres bevatten, een IP-bestemmingsadres en een protocol-veld met de waarde 01h. Met deze gegevens weet de ontvangende host aan wie de lading moet worden gegeven als de bestemming bereikt wordt – in dit voorbeeld, ICMP. 3. Als het pakket eenmaal is gemaakt, gebruikt IP zijn Address Resolution Protocol (ARP) om te bepalen of het IP-bestemmingsadres op het lokale of op een bestemmingsnetwerk staat. 4. Omdat ARP en IP besluiten dat dit een niet-lokaal verzoek is, moet het pakket naar de standaard gateway gestuurd worden. Daarna wordt het pakket naar het bestemmingsnetwerk verzonden. Het Windows-register wordt gelezen om de geconfigureerde gateway te vinden. 5. De standaard gateway van host 172.16.10.2 is geconfigureerd op 172.16.10.1. Voordat dit pakket naar de standaard gateway gezonden kan worden, moet het hardware-adres van interface Ethernet 0 op de router (geconfigureerd met het IP-adres 172.16.10.1) bekend zijn. Waarom? Zodat het pakket overhandigd kan worden aan de laag Data Link. Die zet het in een frame en dan gaat het naar de interface van de router die verbonden is met netwerk 172.16.10.0. Hosts communiceren alleen middels hardwareadressen op het lokale LAN. 6. Eerst wordt de ARP-cache gecontroleerd om te zien of het IP-adres van de standaard gateway al naar een adres is vertaald: • Als dat zo is wordt het pakket overhandigd aan de laag Data Link en in een frame gezet. (Het hardware-bestemmingsadres wordt met het pakket meegestuurd.) • Als het hardware-adres nog niet in de ARP-cache van de host staat, gaat er een ARP-broadcast uit naar het lokale netwerk om het hardware-adres van 172.16.10.1 op te sporen. De router beantwoordt het verzoek en geeft
Studiegids Cisco CCNA
225
het hardware-adres van Ethernet 0. Daarna slaat de host dit adres in zijn geheugen op. De router slaat ook het hardware-adres van host A op in de ARP-cache. 7. Het pakket en hardware-bestemmingadres worden aan de laag Data Link overhandigd. Vervolgens maakt de LAN-driver contact met het soort LAN dat wordt gebruikt. (In dit voorbeeld is dat Ethernet.) Er wordt een frame gemaakt die het pakket inkapselt met besturingsinformatie. Binnen dat frame zitten de hardware-adressen van de bestemming en de bron, plus een Ethernet-Type-veld. Dit beschrijft het Netwerk Laag-protocol dat het pakket aan de laag Data Link overhandigd heeft - in dit geval is dat IP. Aan het einde van het frame zit een Frame Check Sequence-veld (FCS) met daarin het antwoord op de Cyclic Redundancy Check (CRC). 8. Als het frame eenmaal compleet is wordt het aan de fysieke laag gegeven die het bitje voor bitje op een fysiek medium zet (in dit voorbeeld een twistedpair-draad). 9. Elk apparaat in het collision-domein ontvangt deze aparte bits en bouwt het frame weer op. Ze draaien elk een CRC en controleren het antwoord in het FCS-veld. Als de antwoorden niet kloppen wordt het frame weggegooid. Als de CRC overeenkomt wordt het hardware-adressen van de bestemming (in dit voorbeeld de interface van de router, Ethernet 0), gecontroleerd om te zien of ook dat klopt. Als dit zo is, wordt het Ether-Type-veld gecontroleerd om het protocol te vinden dat op de Netwerk-laag werd gebruikt. 10. Het pakket wordt uit het frame gehaald en het frame wordt weggegooid. Het pakket wordt overhandigd aan het protocol dat in het Ether-Type-veld staat – het wordt aan IP gegeven. 11. IP ontvangt het pakket en controleert het IP-bestemmingsadres. Omdat het bestemmingsadres van het pakket niet overeenkomt met de geconfigureerde adressen op de ontvangende router, zoekt de router het IP-bestemmingsnetwerkadres op in zijn routetabel. 12. In de routetabel moet netwerk 172.16.20.0 zijn opgenomen, anders wordt het pakket onmiddellijk weggegooid. Daarna wordt er een ICMP-bericht teruggestuurd naar het apparaat waar het bericht vandaan kwam met het bericht destination network unavailable. 13. Als de router in zijn tabel een route naar het bestemmingsnetwerk vindt, wordt het pakket overgezet naar de interface die het pakket nu moet gaan verzenden – in dit voorbeeld is dat interface Ethernet 1. 14. De router verhuist (packet-switches) het pakket naar de Ethernet1-buffers. 15. De Ethernet 1-buffer wil het hardware-adres van de bestemmingshost weten en controleert eerst de ARP-cache. Als het hardware-adres van host B al
226
Hoofdstuk 5 • IP-routeren
vertaald is, worden het pakket en het hardware-adres overhandigd aan de laag Data Link, die het geheel gaat vertalen. 16. Als het hardware-adres nog niet vertaald is stuurt de router een ARP-broadcast uit om het hardware-adres van 172.16.20.2 te weten te komen. 17. Host B antwoordt met zijn hardware-adres. In dat geval worden het pakket en het hardware-adres van de bestemming beide naar de laag Data Link gestuurd om in een frame gezet te worden. 18. De laag Data Link maakt een frame en zet het bestemmingsadres, het bronhardware-adres, Ether-Type-veld en FCS-veld aan het einde van dit frame. Het frame wordt aan de fysieke laag overhandigd die het bit voor bit naar het fysieke medium verstuurt. 19. Host B ontvangt het frame en draait onmiddellijk een CRC. Als het antwoord gelijk is aan het FCS-veld wordt het hardware-adres van de bestemming gecontroleerd. Als dat klopt, wordt het Ether-Type-veld gecontroleerd. Daar wordt het protocol vastgesteld waaraan het pakket overhandigd moet worden, in de laag Netwerk. In dit voorbeeld is dat IP. 20. In de laag Netwerk ontvangt IP het pakket en controleert het IP-bestemmingsadres. Nu dit adres eindelijk klopt met het eigen IP-adres van het apparaat (host B), controleert IP het protocolveld om uit te zoeken waaraan het de inhoud moet geven. 21. De inhoud wordt aan ICMP gegeven. Die begrijpt dat dit een echoverzoek is. ICMP antwoordt hierop door het pakket onmiddellijk weg te gooien. Deze maakt nu een echo-antwoord met daarin nieuwe inhoud. 22. Nu wordt een pakket gemaakt met daarin de bron, het bestemmingsadres, het protocolveld en de inhoud. Het bestemmingsapparaat is nu host A. 23. ARP controleert nu of het IP-bestemmingsadres een lokaal apparaat is op het lokale LAN of een apparaat op een niet-lokaal netwerk. Omdat het bestemmingsapparaat op een niet-lokaal netwerk staat, gaat het pakket naar de standaard gateway. 24. Het standaard gateway-adres staat in het Windows-register. De ARP-cache wordt gecontroleerd om na te gaan of het hardware-adres al is gevonden op basis van een IP-adres. 25. Als het hardware-adres van de standaard gateway is gevonden, worden het pakket en het hardware-adres van de bestemming doorgeven aan de laag Data Link. Hier worden ze opgenomen in een frame. 26. De laag Data Link voorziet het pakket van informatie voor een frame en zet deze gegevens in de header:
Studiegids Cisco CCNA
227
• Het bestemmingsadres en hardware-adres van de bron • Het Ether-Type-veld met IP erin • Het FCS-veld met het CRC-antwoord 27. Het frame wordt nu aan de fysieke laag gegeven. Die stuurt het bitje voor bitje over het netwerk via het netwerkmedium. 28. De Ethernet 1-interface van de router ontvangt de bits en maakt een frame. De CRC wordt gedraaid en het FCS-veld wordt gecontroleerd om te kijken of de antwoorden overeenkomen. 29. Als de CRC in orde wordt bevonden, wordt het bestemmingsadres van hardware gecontroleerd. Omdat de interface van de router overeenkomt, wordt het pakket uit het frame gehaald. Het Ether-Type-veld wordt gecontroleerd om te zien welk protocol op de laag Netwerk het pakket moet ontvangen. 30. Het protocol moet IP zijn, dus daar gaat het pakker naar toe. IP voert eerst een CRC-check uit op de header en controleert dan het IP-bestemmingsadres. (Noot: IP draait géén volledige CRC zoals de laag Data Link – het controleert alleen de header op fouten.) Omdat het IP-bestemmingsadres niet overeenkomt met een van de interfaces van de router wordt de routetabel gecontroleerd om te zien of er een route in staat naar 172.16.10.0. Als de routetabel geen route naar het bestemmingsnetwerk bevat wordt het pakket onmiddellijk weggegooid. (Hier ligt de oorzaak van veel verwarring bij veel beheerders – als een ping niet slaagt denken de meeste mensen dat het pakket nooit op de bestemmingshost is aangekomen. Maar zoals u hier ziet is dat niet altijd het geval! Als de route terug naar de afzender, host A, op slechts één van de nietlokale routers ontbreekt, wordt het pakket op de terugweg weggegooid. Dus niet op weg naar bestemmingshost B. 31. Maar de router weet wel hoe hij naar het netwerk 172.16.10.0 moet komen. De exit-interface is Ethernet 0 – dus wordt het pakket verhuisd naar interface Ethernet 0. 32. De router controleert de ARP-cache om te bepalen of het hardware-adres voor 172.16.10.2 al is vertaald. 33. Omdat het hardware-adres naar 172.16.10.2 al in de cache is gezet toen het Ping-pakket naar host B ging, worden het hardware-adres en het pakket overhandigd aan de laag Data Link. 34. De laag Data Link maakt een frame met het hardware-adres van de bestemming en van de bron. Dan zet deze laag IP in het Ether-Type-veld. Op het frame wordt een CRC uitgevoerd. Het antwoord wordt in het FCS-veld gezet.
Hoofdstuk 5 • IP-routeren
228
35. Het frame wordt overhandigd aan de fysieke laag die het bitje voor bitje over het lokale netwerk stuurt. 36. De bestemmingshost ontvangt het frame, voert een CRC uit, controleert het hardware-adres van de bestemming en kijkt dan in het Ether-Type-veld om er achter te komen aan waaraan hij het pakket moet geven. 37. Dit blijkt IP te zijn. Nadat het pakket aan IP op de laag Netwerk is gegeven, controleert IP het protocolveld op verdere instructies. IP vindt instructies om de pakketinhoud aan ICMP te geven. ICMP stelt vast dat het pakket een ICMP-echo-antwoord is. 38. ICMP bevestigt de ontvangst van het antwoord door een uitroepteken (!) te sturen aan de gebruikersinterface. ICMP probeert dan nog eens vier echoverzoeken naar de bestemmingshost te sturen. U hebt nu 38 makkelijke stappen gezet om IP-routering te begrijpen. Wat u hier goed moet begrijpen, is dat het proces hetzelfde is, ongeacht de grootte van uw netwerk. Het pakket maakt bij een groter netwerk gewoon wat extra sprongetjes voordat het de bestemmings-host ontdekt.
5.2.1
IP-routering in een groter netwerk In het voorbeeld in de vorige paragraaf had de routetabel van de router al beide IPnetwerken in zijn routetabel omdat de netwerken direct-verbonden zijn met de router. Maar wat gebeurt er als u nog eens drie routers toevoegt? Figuur 5.2 laat vier routers zien: 2500A, 2500B, 2500C, and 2621A. Deze routers kennen standaard alleen hun direct-verbonden netwerken.
Figuur 5.2
Een voorbeeld van IP-routering met meer routers 172.16.30.0/24
172.16.10.0/24
172.16.50.0/24 .1 E0
.1 S0 S0 S1 S0 E0 .1 .2 .1 .2 E0 2501A 172.16.20.0/24 2501B 172.16.40.0/24 2501C .2
.1 Fa0/0 2621A
Figuur 5.2 toont de drie 2501-routers die middels een WAN verbonden zijn en router 2621 die via het Ethernet-netwerk aan router 2501A is gekoppeld. Elke router is ook verbonden met een Ethernet-netwerk. Elk logisch netwerk is omkaderd zodat
Studiegids Cisco CCNA
229
ze goed herkenbaar zijn in de figuur. Het idee is dat elke router alle vijf de netwerken moet kennen. De netwerken die gebruikt worden het netwerk te configureren, worden ook getoond op de figuur. De eerste stap is om elke router van de juiste configuratie te voorzien. Tabel 5.1 toont het schema met IP-adressen dat wordt gebruikt om het netwerk te configureren. Nadat de netwerkconfiguratie is behandeld, leert u meer over het configureren van IProutering. Elk netwerk in de onderstaande tabel heeft een 24-bit subnetmasker (255.255.255.0). Tabel 5.1
Netwerk-adressering voor het IP-netwerk Router
Netwerkadres
Interface
Adres
2621A 2501A 2501A 2501B 2501B
172.16.10.0 172.16.10.0 172.16.20.0 172.16.20.0 172.16.40.0
f0/0 e0 s0 s0 s1
172.16.10.1 172.16.10.2 172.16.20.1 172.16.20.2 172.16.40.1
2501B 2501C
172.16.30.0 172.16.40.0
e0 s0
172.16.30.1 172.16.40.2
2501C
172.16.50.0
e0
172.16.50.1
Het configureren van routers is een relatief eenvoudig proces. U hoeft slechts IPadressen te koppelen aan uw interfaces en daarna een no-shutdown op de interfaces uit te voeren. De situatie die straks wordt behandeld, is iets ingewikkelder, maar eerst gaat u IP-adressen op het netwerk configureren.
Configuratie van router 2621A Om router 2621 te configureren moet u een IP-adres koppelen aan interface FastEthernet 0/0. Configuratie van de hostnamen van elke router zorgt voor makkelijke identificatie: Router> en Router#config t Router (config)#hostname 2621A 2621A(Config)#interface fa0/0 2621A(Config-if)#IP-adres 172.16.10.1 255.255.255.0 2621A(Config-if)#no shut
De configuratie bestaat uit slechts enkele regels. Als u hier moeite mee hebt, kijk dan nog eens naar hoofdstuk 4.
Hoofdstuk 5 • IP-routeren
230
U kunt de IP-routetabellen op een Cisco-router zien door in de beheerdersmodus de opdracht show ip route te tikken. De opdrachtuitvoer ziet eruit als hieronder is afgebeeld: alleen het geconfigureerde netwerk staat in de routetabel. Dit betekent dat de router alleen weet hoe hij naar netwerk 172.16.10.0. moet komen. 2621A#sh ip route Codes: C - connected, S - statische, I - IGRP, R - RIP, M mobile, B – BGP D - EIGRP, EX - EIGRP external, O OSPF, IA - OSPF inter area N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2 E1 - OSPF external type 1, E2 - OSPF external type 2, E – EGP i - IS-IS, L1 - IS-IS level-1, L2 - IS-IS level-2, * - candidate default U - per-user static route, o - ODR, P - periodic downloaded static route T - traffic engineered route Gateway of last resort is not set 172.16.0.0/24 is subnetted, 1 subnet C 172.16.10.0 is directly connected, FastEthernet0/0 2621A#
Deze routetabel laat het direct-verbonden netwerk 172.16.10.0. zien. Bekijk de ‘C’ eens; dit betekent dat het netwerk direct-verbonden is. De codes voor elk type verbinding staan boven in de uitvoer van de opdracht show ip route samen met hun afkortingen. Om ruimte te sparen worden de codes in de rest van dit hoofdstuk niet in de uitvoer opgenomen.
Configuratie van router 2501A Nu configureert u de volgende router. Om router 2501A te configureren moeten er twee interfaces geconfigureerd worden: Ethernet 0 en serial 0. Router>en Router#config t Router(config)#hostname 2501A 2501A(config)#int e0 2501A(config-if)#IP-address 172.16.10.2 255.255.255.0 2501A(config-if)#no shut 2501A(config-if)#int s0 2501A(config-if)#IP-address 172.16.20.1 255.255.255.0 2501A(config-if)#no shut
Deze configuratie configureert Serial 0 in netwerk 172.16.20.0 en Ethernet 0 in netwerk 172.16.10.0. De opdracht show ip route laat de volgende uitvoer zien:
Studiegids Cisco CCNA
231
2501A#sh ip route Codes: C - connected, S - static, I - IGRP, R - RIP, M – [uitvoer verwijderd] Gateway of last resort is not set 172.16.0.0/24 is subnetted, 2 subnets C 172.16.20.0 is directly connected, Serial0 C 172.16.10.0 is directly connected, Ethernet0 2501A#
Router 2501A weet hoe hij naar netwerken 172.16.10.0 en 172.16.20.0. moet komen. Router 2621 en router A kunnen nu communiceren omdat ze deel uitmaken van dezelfde LAN.
Configuratie van router 2501B De configuratie van router 2501B gaat op dezelfde manier. U moet hier echter ook de opdracht clock rate toevoegen aan de DCE-interfaces die aan beide seriële interfaces verbonden zijn. Lees hoofdstuk 4 nog eens door als u meer wilt weten over de DCE-interfaces en de opdracht clock rate. Router>en Router#config t Router(config)#hostname 2501B 2501B(config)#int e0 2501B(config-if)#IP-address 172.16.30.1 255.255.255.0 2501B(config-if)#no shut 2501B(config-if)#int s0 2501B(config-if)#IP-address 172.16.20.2 255.255.255.0 2501B(config-if)#clock rate 64000 2501B(config-if)#no shut 2501B(config-if)#int s1 2501B(config-if)#IP-address 172.16.40.1 255.255.255.0 2501B(config-if)#clock rate 64000 2501B(config-if)#no shut
Deze reeks opdrachten stelt de hostnaam van de router en de IP-adressen van alle interfaces in. Ook stelt de opdracht de kloksnelheid op de seriële interfaces in. De uitvoer van de opdracht show ip route toont de direct-verbonden netwerken 172.16.20.0, 172.16.30.0 en 172.16.40.0. 2501B#sh ip route Codes: C - connected, S - static, I - IGRP, R - RIP, M – [uitvoer verwijderd] Gateway of last resort is not set
Hoofdstuk 5 • IP-routeren
232 172.16.0.0/24 is subnetted, C 172.16.40.0 is directly C 172.16.30.0 is directly C 172.16.20.0 is directly 2501B#
3 subnets connected, Serial1 connected, Ethernet0 connected, Serial0
Router A en router B kunnen communiceren omdat ze deel uitmaken van hetzelfde WAN-netwerk. Maar router B kan niet communiceren met router 2621 omdat router B netwerk 172.16.10.0 niet kent. Router A kan pingen met routers 2621 en 2501B, maar routers 2501B en 2621 kunnen elkaar niet zien – nog niet.
Configuratie van router 2501C De configuratie van router 2501C is dezelfde als die van 2501A. Ze hebben alleen verschillende netwerk-IDs. Router>en Router#config t Router(config)#hostname 2501C 2501C(config)#int e0 2501C(config-if)#IP-address 172.16.50.1 255.255.255.0 2501C(config-if)#no shut 2501C(config-if)#int s0 2501C(config-if)#IP-address 172.16.40.2 255.255.255.0 2501C(config-if)#no shut
Interface Ethernet 0 is geconfigureerd en maakt deel uit van netwerk 172.16.50.0. Interface Serial 0 is geconfigureerd in het WAN-netwerk 172.16.40.0. De uitvoer van de opdracht show ip route die u hieronder ziet, toont de direct-verbonden netwerken op router 2501C. 2501C#sh ip route Codes: C - connected, S - static, I - IGRP, R - RIP, M – [uitvoer verwijderd] Gateway of last resort is not set 172.16.0.0/24 is subnetted, 2 subnets C 172.16.50.0 is directly connected, Ethernet0 C 172.16.40.0 is directly connected, Serial0 2501C#
Router 2501C kan communiceren met 2501B omdat ze allebei deel uitmaken van hetzelfde WAN-netwerk. Maar 2501C kan geen andere router of niet-lokaal netwerk zien.
Studiegids Cisco CCNA
233
5.3 IP-routering configureren in het netwerk Het netwerk in de vorige paragraaf is nu correct geconfigureerd met IP-adressering. Maar hoe stuurt een router nu pakketen naar niet-lokale netwerken? De routers kunnen alleen pakketten sturen door te kijken naar de routetabel en uit te zoeken hoe ze naar de niet-lokale netwerken moeten komen. Maar onze geconfigureerde routers hebben in elke routetabel alleen de beschikking over informatie over direct-verbonden netwerken. Wat gebeurt er als een router een pakket ontvangt met een netwerk dat niet in de routetabel is opgenomen? De router stuurt geen broadcast uit om naar een niet-lokaal netwerk te zoeken – de router gooit het gewoon weg. Er zijn manieren om de routetabellen zo te configureren dat ze alle netwerken in dit kleine internetwerk omvatten. Dan worden pakketten wel doorgestuurd. Maar de beste manier voor het ene netwerk is niet noodzakelijkerwijze de beste manier voor het andere. Als u de verschillende soorten routers begrijpt, kunt u besluiten wat voor u de beste manier is. De diverse soorten routeren die in dit hoofdstuk behandeld worden: • Statisch routeren • Standaard routeren • Dynamisch routeren We beginnen met de beschrijving en implementatie van statisch routeren op ons netwerk. Waarom? Omdat een goede implementatie van statisch routeren een bewijs is dat u internetwerken goed begrijpt.
5.3.1
Statisch routeren Statisch routeren vindt plaats als een beheerder met de hand routes invoert in de routetabel van elke router. Statisch routeren heeft zowel voor- als nadelen, zoals alle processen die met routeren te maken hebben. Statisch routeren heeft de volgende voordelen: • Geen overhead op de CPU van de router. • Geen gebruik van bandbreedte tussen routers • Beveiliging (omdat de beheerder alleen routeren toestaat tussen bepaalde netwerken) Statisch routeren heeft de volgende nadelen: • De beheerder moet heel goed begrijpen hoe een internetwerk werkt, en hoe elke router verbonden is voordat hij de routers juist kan configureren.
Hoofdstuk 5 • IP-routeren
234
• Als er een netwerk toegevoegd wordt aan het internetwerk, moet de beheerder een route hiernaar toevoegen aan alle routers. • Dit is niet haalbaar in grote netwerken. Het zou een voltijdsbaan zijn. De syntaxis van de opdracht om een statische route aan een routetabel toe te voegen is ip route [destination_network] [mask] [next_hop_address or exitinterface] [administrative_distance][permanent]
De onderstaande lijst beschrijft elk onderdeel van de syntaxis: ip route De opdracht om een statische route vast te leggen. destination network (bestemmingsnetwerk) Het netwerk dat u in de routetabel zet. mask (masker) Het subnetmasker dat op het netwerk gebruikt wordt. next hop address (volgende hop-adres) Het adres van het volgende tussenstation (hop) die het pakket ontvangt en doorstuurt naar het niet-lokale netwerk. Dit is een routerinterface die op een direct-verbonden netwerk staat. U moet in staat zijn de interface van de router te pingen voordat u de route toevoegt. Als u het ‘next hop address’ verkeerd intikt of de interface naar die router niet beschikbaar is, komt de statische route wel in de configuratie van de router, maar niet in de routetabel. exit interface (uitgangsinterface) Wordt zonodig gebruikt in plaats van het volgende hop-adres. Moet op een pointto-point link gebruikt worden, bijvoorbeeld een WAN. Deze opdracht werkt niet op een LAN, zoals Ethernet. administrative distance (administratieve afstand) Statische routes hebben standaard een administratieve afstand van 1. U kunt de standaardwaarde wijzigen door een administratief gewicht (administratieve weight) aan het einde van de opdracht toe te voegen. Administratieve afstand wordt later in dit hoofdstuk behandeld bij het deel over dynamisch routeren. permanent Als de interface afgesloten is of de router niet kan communiceren met de volgende router wordt de route automatisch uit de routetabel verwijderd. Als u de optie permanent gebruikt, blijft de ingevoerde route altijd in de routetabel staan, wat er ook gebeurt.
Studiegids Cisco CCNA
235
Om te begrijpen hoe statische routes werken, wordt de configuratie op een voorbeeldnetwerk gedemonstreerd. U vindt dit voorbeeldnetwerk in figuur 5.2.
Router 2621A Elke routetabel neemt automatisch direct-verbonden netwerken op. Om naar alle netwerken in het internetwerk te kunnen routeren, moet de routetabel informatie bevatten over de identificatie van die andere netwerken en de route ernaar toe. Router 2621 is alleen verbonden met netwerk 172.16.10.0. Voordat router 2621A in staat is naar alle netwerken te routeren, moeten de volgende netwerken geconfigureerd worden in de routetabel: • 172.16.20.0 • 172.16.30.0 • 172.16.40.0 • 172.16.50.0 De onderstaande router-uitvoer toont de configuratie van statische routes op router 2621A en de routetabel na de configuratie. Voordat router 2621A de nietlokale netwerken kan vinden moet er voor elk netwerk een regel in de routetabel opgenomen worden die het netwerk en het masker beschrijft, en die duidelijk maakt waarheen de pakketten gestuurd moeten worden. Elke statische route stuurt de pakketten naar 172.16.10.2. Dit is het volgende tussenstation (hop) van router 2621. 2621A(Config)#ip 172.16.10.2 2621A(Config)#ip 172.16.10.2 2621A(Config)#ip 172.16.10.2 2621A(Config)#ip 172.16.10.2
route 172.16.20.0 255.255.255.0 route 172.16.30.0 255.255.255.0 route 172.16.40.0 255.255.255.0 route 172.16.50.0 255.255.255.0
Nadat de router is geconfigureerd, tikt u show running-config en show ip route om de statische routes te bekijken. Als de routes niet in de routetabel staan kan de router niet communiceren met het volgende tussenstation dat u hebt ingesteld. U kunt de parameter permanent gebruiken om de route in de routetabel te houden, zelfs als er geen contact gelegd kan worden met het volgende tussenstation.
Hoofdstuk 5 • IP-routeren
236
2621A#sh ip route [uitvoer verwijderd] 172.16.0.0/24 is subnetted, 5 subnets S 172.16.50.0 [1/0] via 172.16.10.2 S 172.16.40.0 [1/0] via 172.16.10.2 S 172.16.30.0 [1/0] via 172.16.10.2 S 172.16.20.0 [1/0] via 172.16.10.2 C 172.16.10.0 is directly connected, FastEthernet0/0 2621A#
Router 2621 heeft nu alle informatie die hij nodig heeft om te kunnen communiceren met de andere niet-lokale netwerken. Als router 2501A echter niet met dezelfde informatie is geconfigureerd, worden de pakketten op 2501A weggegooid.
Router 2501A Router 2501A is verbonden aan de netwerken 172.16.10.0 en 172.16.20.0. De volgende statische routes moeten geconfigureerd worden op router 2501A: • 172.16.30.0 • 172.16.40.0 • 172.16.50.0 Hier is de configuratie voor router 2501A. 2501A(Config)#ip route 172.16.30.0 255.255.255.0 172.16.20.2 2501A(Config)#ip route 172.16.40.0 255.255.255.0 172.16.20.2 2501A(Config)#ip route 172.16.50.0 255.255.255.0 172.16.20.2
Door naar de routetabel te kijken ziet u dat router 2501A nu begrijpt hoe hij elk netwerk moet vinden. 2501A#sh ip route [uitvoer verwijderd] 172.16.0.0/24 is subnetted, 5 subnets S 172.16.50.0 [1/0] via 172.16.20.2 S 172.16.40.0 [1/0] via 172.16.20.2 S 172.16.30.0 [1/0] via 172.16.20.2 C 172.16.20.0 is directly connected, Serial0 C 172.16.10.0 is directly connected, Ethernet0 2501A#
Studiegids Cisco CCNA
237
De S in de eerste kolom van de routetabel betekent dat de route naar het netwerk op dezelfde rij een statische route is. De [1/0] is de administratieve afstand en het aantal tussenstations naar het niet-lokale netwerk. In dit geval is dat 0. Router 2501A heeft nu een volledige routetabel. Zodra de andere routers in het internetwerk een complete routetabel hebben kan 2501A communiceren met alle nietlokale netwerken.
Router 2501B Router 2501B is direct-verbonden met netwerken 172.16.20.0, 172.16.30.0 en 172.16.40.0. Er hoeven nog maar twee routes toegevoegd te worden: 172.16.10.0 en 172.16.50.0. 2501B(Config)#ip route 172.16.10.0 255.255.255.0 172.16.20.1 2501B(Config)#ip route 172.16.50.0 255.255.255.0 172.16.40.2
De volgende uitvoer toont de routetabel op router 2501B. 2501B#sh ip route [uitvoer verwijderd] 172.16.0.0/24 is subnetted, 5 subnets S 172.16.50.0 [1/0] via 172.16.40.2 C 172.16.40.0 is directly connected, Serial1 C 172.16.30.0 is directly connected, Ethernet0 C 172.16.20.0 is directly connected, Serial0 S 172.16.10.0 [1/0] via 172.16.20.1 2501B#
2501B toont nu alle netwerken in het internetwerk en kan dus communiceren met alle routers en netwerken, behalve met de hosts op netwerk 172.16.50.0 Dit komt omdat 2501C nog niet geconfigureerd is.
Router 2501C Router 2501C is direct-verbonden met netwerken 172.16.40.0 en 172.16.50.0. De routetabel moet de netwerken 172.16.10.0, 172.16.20.0 en 172.16.30.0 nog leren kennen. Hier is de configuratie:
Hoofdstuk 5 • IP-routeren
238
2501C(Config)#ip route 172.16.10.0 255.255.255.0 172.16.40.1 2501C(Config)#ip route 172.16.20.0 255.255.255.0 172.16.40.1 2501C(Config)#ip route 172.16.30.0 255.255.255.0 172.16.40.1
Hieronder ziet u de uitvoer van de opdracht show ip route die op router 2501C werd gegeven 2501C#sh ip route [uitvoer verwijderd] 172.16.0.0/24 is C 172.16.50.0 C 172.16.40.0 S 172.16.30.0 S 172.16.20.0 S 172.16.10.0 2501C#
subnetted, 5 subnets is directly connected, Ethernet0 is directly connected, Serial0 [1/0] via 172.16.40.1 [1/0] via 172.16.40.1 [1/0] via 172.16.40.1
Nu op alle routers de juiste routetabel staat, kunnen alle routers en hosts probleemloos met elkaar communiceren. Als u echter zelfs maar één netwerk of één andere router toevoegt aan het internetwerk, moet u alle routetabellen van alle routers met de hand bijwerken. Dit is geen probleem voor een klein netwerk, maar het kost te veel tijd bij een groot internetwerk.
De configuratie controleren Als alle routetabellen van alle routers eenmaal geconfigureerd zijn, moeten ze gecontroleerd worden. De beste manier om dat te doen is met het Ping-programma. Door te pingen vanaf routers 2621A en 2501C wordt het hele netwerk van begin tot einde getest. Hier is de uitvoer van een ping naar netwerk 172.16.50.0 van router 2621A: 2621A#ping 172.16.50.1 Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 172.16.50.1, timeout is 2 seconds: .!!!! Success rate is 80 percent (4/5), round-trip min/avg/max = 64/66/68 ms 2621A#
Studiegids Cisco CCNA
239
Het eerste antwoord is een puntje. Dat betekent dat het eerste ping-antwoord te laat terugkomt. Het moet te lang wachten op het ARP-vraag- en antwoordspel. Als het ARP eenmaal het hardware-adres van de standaard gateway heeft gevonden, zal de vertaling tussen IP- en het Ethernet-adres in de ARP-cache worden gezet en vier uur lang in deze cache opgeslagen blijven. Alle volgende IP-verbindingen naar de volgende router zullen niet meer worden vertraagd omdat er geen ARP-broadcasts meer uitgevoerd hoeven te worden. Een ping van router-2501C naar 172.16.10.0 zal een goede IP-verbinding testen. Hier is de routeruitvoer: 2501C#ping 172.16.10.1 Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 172.16.10.1, timeout is 2 seconds: !!!!! Success rate is 100 percent (5/5), round-trip min/avg/max = 64/67/72 ms
De eerste ping was nu wel op tijd terug omdat de ARP-broadcasts slechts op één LAN gestuurd worden, niet op een WAN. En omdat u probleemloos van begin tot einde kunt pingen, is de statische routeconfiguratie een succes!
5.3.2
Standaard routeren Standaard routeren (default routing) wordt gebruikt om pakketten met een niet-lokaal bestemmingsnetwerk dat niet in de routetabel staat, naar de volgende router te sturen. U kunt standaard routeren alleen gebruiken op stub-netwerken. Een stub-netwerk heeft slechts één uitgangspoort uit het netwerk. In het internetwerk voorbeeld dat in de vorige paragraaf gebruikt werd, zijn 2621A en 2501C de enige routers in een stub-netwerk. Als u probeert een standaardroute op routers 2501A en 2501B te zetten, worden pakketten niet doorgestuurd naar de juiste netwerken. Ze hebben namelijk meer dan één interface naar andere routers. Hoewel router 2501C twee aansluitingen heeft, hoeft deze geen pakketten te sturen naar een andere router op netwerk 172.16.50.0. Router 2501C stuurt alleen pakketten naar 172.16.40.1. Dit is de interface van 2501B. Router 2621A stuurt alleen pakketten naar de 172.16.10.2 interface van 2501A. Om een standaardroute te configureren, gebruikt u wildcards (jokers) in het netwerkadres en de maskerlocaties van een statische route. (Beschouw een standaardroute maar als een statische route die wildcards gebruikt, in plaats van gegevens over het netwerk en het masker.) In dit deel maakt u een standaardroute op router 2501C. Router 2501C is direct verbonden met netwerken 172.16.40.0 en 172.16.50.0. De routetabel moet de netwerken 172.16.10.0, 172.16.20.0 en 172.16.30.0 kennen. Om
Hoofdstuk 5 • IP-routeren
240
de router te configureren zodat deze naar de andere drie netwerken routeert, zijn drie statische routers in de routetabel gezet. In plaats daarvan kunt u volstaan met één standaardroute. Eerst moet u de bestaande statische routes van de router verwijderen en daarna de standaardroute toevoegen. 2501C(Config)#no 172.16.40.1 2501C(Config)#no 172.16.40.1 2501C(Config)#no 172.16.40.1 2501C(Config)#ip
ip route 172.16.10.0 255.255.255.0 ip route 172.16.20.0 255.255.255.0 ip route 172.16.30.0 255.255.255.0 route 0.0.0.0 0.0.0.0 172.16.40.1
Kijk nu eens naar de routetabel. U ziet slechts twee direct-verbonden netwerken, plus een regel met in de eerste kolom een S*. Dit betekent dat deze regel in aanmerking komt voor als standaardroute. 2501C#sh ip route [uitvoer verwijderd]
Gateway of last resort is 172.16.40.1 to netwerk 0.0.0.0 172.16.0.0/24 is subnetted, 5 subnets C 172.16.50.0 is directly connected, Ethernet0 C 172.16.40.0 is directly connected, Serial0 S* 0.0.0.0/0 [1/0] via 172.16.40.1 2501C#
In de routetabel is nu ook de ‘gateway of last resort’ ingesteld. Er is echter nog een opdracht die u moet kennen als u standaardroutes gebruikt: de opdracht ip classless. Alle Cisco-routers zijn klasse-georiënteerde (classfull) routers. Dit betekent dat ze een standaard subnetmasker verwachten op elke interface van de router. Als een router een pakket ontvangt voor een bestemmingssubnet dat niet in de routetabel staat, zal deze standaard het pakket laten vallen. Als u standaard routeren gebruikt, moet u de opdracht ip classless gebruiken omdat er geen niet-lokale subnetmaskers in de routetabel staan. Omdat versie 12.x van het IOS op de routers draait, staat de opdracht ip classless standaard aan. Als u standaard routeren gebruikt en deze opdracht niet in uw configuratie staat, moet u hem toevoegen. De opdracht staat is: 2501C(Config)#ip classless
Studiegids Cisco CCNA
241
Dit is een opdracht in de algemene configuratiemodus (global configuration mode). Het leuke van ip classless is dat standaard routeren soms zonder deze opdracht werkt, maar soms ook niet. Voor alle zekerheid moet u deze opdracht altijd gebruiken als u standaard routeren gebruikt.
5.3.3
Dynamisch routeren Dynamisch routeren wordt toegepast als er protocollen gebruikt worden om routetabellen op routers te vinden en bij te werken. (Dit is eenvoudiger dan statisch of standaard routeren, maar het gaat ten koste van CPU-processen op de router en bandbreedte op de netwerkverbindingen.) Een routeprotocol bepaalt welke spelregels een router gebruikt als hij met naburige routers communiceert. De twee types routeprotocollen die in dit boek behandeld worden zijn het Routing Information Protocol (RIP) en het Interior Gateway Routing Protocol (IGRP). Enhanced IGRP is een geavanceerd afstand-vector routeprotocol en is door Cisco ontwikkeld. Open Shortest Path First is een niet-producentspecifiek link-state routeprotocol dat gebruikt wordt in de TCP/IP stack. U kunt meer te weten komen over andere types routeprotocollen zoals Enhanced Interior Gateway Routing Protocol (EIGRP) en Open Shortest Path First (OSPF), in het boek CCNP: Routing Study Guide (Sybex, 2001), dat de nieuwe CCNP: Routing exam van Cisco behandelt. Er zijn twee soorten routeprotocollen in internetwerken: Interior Gateway Protocol (IGP) en Exterior Gateway Protocol (EGP). IGP-routeprotocollen worden gebruikt om route-informatie uit te wisselen met routers in hetzelfde autonome systeem (AS). Een AS is een verzameling netwerken binnen een gezamenlijk administratief domein. Dit houdt dus in dat alle routers met dezelfde gegevens in de routetabel, deel uitmaken van hetzelfde AS. EGPs worden gebruikt om tussen Autonome Systemen te communiceren. Een voorbeeld van een EGP is Border Gateway Protocol (BGP). Ook BGP wordt behandeld in het boek CCNP: Routing Study Guide (Sybex, 2001) Omdat routeprotocollen zo belangrijk zijn voor dynamisch routeren, kijkt u in het volgende deel naar de basisinformatie over deze protocollen. In het deel dat daarna volgt wordt dieper ingegaan op de details van RIP.
5.4 Basisbegrippen van het routeprotocol U moet een aantal basisbegrippen van routeprotocollen (routing protocols) kennen voordat dieper wordt ingegaan op RIP. Vooral administratieve afstanden, de drie soorten routeprotocollen en routeringslussen moet u goed begrijpen.
Hoofdstuk 5 • IP-routeren
242
5.4.1
Administratieve afstanden Administratieve afstanden (Administrative distances, AD) worden gebruikt om de betrouwbaarheid van route-informatie die de router van zijn buurman ontvangt, aan te geven. Een administratieve afstand is een natuurlijk getal tussen 0 tot 255, waarbij 0 staat voor de meest betrouwbare route en 255 betekent dat er geen verkeer via deze route gestuurd wordt. Als een router twee updates ontvangt die hetzelfde niet-lokale netwerk bevatten, controleert een router eerst de AD. Als een van de twee bekendgemaakte routes een lager AD heeft dan de andere, zal alleen de route met de laagste AD in de routetabel worden geplaatst. Als beide bekendgemaakte routes naar hetzelfde netwerk dezelfde AD hebben, worden routeprotocol-metrieken (zoals de hop-count of bandbreedte van de verbindingen) gebruikt om het beste pad naar dat niet-lokale netwerk te vinden. Alleen de routegegevens met de laagste metriek worden in de routetabel gezet. Als van beide routes echter zowel de AD als de metriek gelijk zijn, neemt de router beide routers op in de routetabel. Het gerouteerde protocol zal van beide routes evenveel gebruik maken als het naar het betrokken netwerk gaat. Tabel 5.2 toont de standaard administratieve afstanden die een Cisco-router gebruikt om te besluiten welke route hij naar een niet-lokaal netwerk neemt.
Tabel 5.2
Standaard Administratieve Afstanden Route bron
standaard AD
Verbonden interface Statische route EIGRP IGRP OSPF RIP Externe EIGRP
0 1 90 100 110 120 170
Onbekend
255 (deze route wordt nooit gebruikt)
Als een netwerk direct-verbonden is zal de router altijd de interface gebruiken waaraan dat het netwerk hangt. Als een beheerder een statische route naar een nietlokaal netwerk configureert zal de router daaraan de voorkeur geven boven alle andere routes naar dat netwerk. U kunt de administratieve afstand van statische routes wijzigen, maar standaard hebben zij een AD van 1.
Studiegids Cisco CCNA
5.4.2
243
Routeprotocollen Er zijn drie klassen routeprotocollen: Afstand vector (distance vector) De afstand-vector-protocollen zoeken het beste pad naar een remote netwerk door de afstand te beoordelen. Als een pakket door een router gaat noemt men dat een hop. De route met het minste aantal hops naar het bestemmingsnetwerk is volgens deze protocollen de beste route. De vector wijst de weg naar het bestemmingsnetwerk. Zowel RIP als IGRP zijn afstand-vector-routeprotocollen. Link-state In link-state-protocollen, ook wel kortste-weg-eerst (OSPF: open shortest path first)-protocollen genoemd, maken de routers elk drie aparte tabellen. Een van deze tabellen houdt bij wat de direct-verbonden buren zijn, een bepaalt de topologie van het gehele internetwerk, en een wordt gebruikt als de routetabel. Link-state routers weten meer over het internetwerk dan welk afstand-vector routering-protocol dan ook. OSPF is een IP-routeprotocol dat volledig binnen de groep van link-state protocollen valt. Voor meer informatie over OSPF, kunt u het boek CCNP Routing Study Guide (Sybex, 2001) doornemen. Hybride Hybride protocollen gebruiken aspecten van zowel afstand-vector als link-state protocollen (zoals EIGRP). Voor meer informatie over EIGRP, kunt u het boek CCNP: Routing Study Guide (Sybex, 2001) doornemen. Er is geen vaste methode om routeprotocollen te configureren. Dit is een taak die per geval of per situatie wordt uitgevoerd. Echter, als u begrijpt hoe de verschillende routeprotocollen werken, kunt u goede zakelijke besluiten nemen. Dit boek en het bijbehorende examen behandelen alleen afstand-vector routeprotocollen en de theorie daarvan.
5.4.3
Afstand-vector-routeprotocollen Het afstand-vector route-algoritme geeft complete routetabellen door aan naburige routers. De naburige routers combineren dan de ontvangen routetabel met hun eigen routetabellen om de kaart van het internetwerk te vervolmaken. Dit heet routering per gerucht, omdat een router die een bijwerking ontvangt van een buurman, de informatie over bestemmingsnetwerken gelooft zonder die informatie zelf na te gaan. Binnen een netwerk kunnen meer routes naar hetzelfde bestemmingsnetwerk gaan. Als dat het geval is, wordt eerst de administratieve afstand gecontroleerd. Als de administratieve afstand gelijk is, gebruikt het protocol een andere metriek om te bepalen welk pad naar dat bestemmingsnetwerk het beste is.
Hoofdstuk 5 • IP-routeren
244
RIP gebruikt alleen hop count om het beste pad naar een internetwerk te bepalen. Als RIP meer dan één route vindt naar hetzelfde bestemmingsnetwerk met dezelfde hop count, zal het automatisch het verkeer naar dat netwerk gelijk over deze routes verdelen met het Round Robin (bij toerbeurt) algoritme. RIP kan dit voor maximaal zes routes naar een bestemmingsnetwerk doen. Met dit type routeringsmetriek ontstaat echter een probleem als de verbindingen naar een bestemmingsnetwerk verschillende bandbreedtes bieden maar dezelfde hop count hebben. Figuur 5.3, bijvoorbeeld, toont twee verbindingen naar een bestemmingsnetwerk 172.16.10.0. Figuur 5.3
Pinhole congestion Router A SO
Netwerk 172.16.30.0 SO
SO
Netwerk 172.16.20.0 SO
Router B
T1
Netwerk 172.16.10.0
Router C
56K
Router D
Netwerk 172.16.30.0 is een T1-verbinding met een brandbreedte van 1.544Mbps. Netwerk 172.16.20.0 is een 56K-verbinding. U wilt dus dat de router T1 kiest, en niet de 56K-verbinding. Omdat hop count echter de enige metriek is die bij RIP-routering wordt toegepast, worden ze beschouwd als gelijkwaardig. Ze worden dus ook allebei gebruikt bij het doorsturen van IP-pakketten naar het bestemmingsnetwerk. Dit wordt een pinhole congestion genoemd. U moet goed begrijpen wat een afstand-vector-routeprotocol doet als het van start gaat. In figuur 5.4 beginnen de vier routers met alleen hun direct-verbonden netwerken in de routetabel. Nadat een afstand-vector routeprotocol op elke router is geactiveerd, worden de routetabellen bijgewerkt met alle routegegevens van naburige routers. Zoals u in figuur 5.4 ziet, bevat elke router alleen de direct-verbonden netwerken in elke routetabel. Elke router stuurt zijn volledige routetabel naar elke actieve interface. De routetabel van elke router bevat het netwerknummer, de exit-interface (uitgangsinterface) en de hop count naar het netwerk. In figuur 5.5 zijn de routetabellen compleet omdat ze informatie bevatten over alle netwerken in het internetwerk. Ze worden dan ‘gesynchroniseerd’ (converged) genoemd. Zodra de routers gesynchroniseerd zijn worden er geen gegevens meer doorgegeven. Daarom is snelle synchronisatie een voordeel. Een van de moeilijkheden met RIP is zijn trage synchronisatie.
Studiegids Cisco CCNA Figuur 5.4
245
Het internetwerk met afstand-vector routing 172.16.30.0
172.16.20.0 172.16.10.0
E0
F0/0
S0
E0
S0
172.16.40.0 S1
S0
2501B
2501A
172.16.50.0
E0 2501C
2621A Routetabel 172.16.10.0 F0/0 0
Figuur 5.5
Routetabel
Routetabel
Routetabel
172.16.10.0
E0
0
172.16.20.0
S0
0
172.16.40.0
S0
0
172.16.20.0
S0
0
172.16.30.0
E0
0
172.16.50.0
E0
0
172.16.40.0
S1
0
Gesynchroniseerde routetabellen 172.16.30.0
172.16.20.0 172.16.10.0 F0/0
E0
S0 2501A
E0
S0
172.16.40.0 S1
S0
172.16.50.0
E0
2501B
2501C
Routetabel
Routetabel
2621A Routetabel
Routetabel
172.16.10.0 F0/0 0
172.16.10.0
E0
0
172.16.20.0
S0
0
172.16.40.0
S0
172.16.20.0 F0/0 1
172.16.20.0
S0
0
172.16.30.0
E0
0
172.16.50.0
E0
0
172.16.30.0 F0/0 2
172.16.30.0
S0
1
172.16.40.0
S1
0
172.16.10.0
S0
2
172.16.40.0 F0/0 2
172.16.40.0
S0
1
172.16.10.0
S0
1
172.16.20.0
S0
1
172.16.50.0 F0/0 3
172.16.50.0
S0
2
172.16.50.0
S1
1
172.16.30.0
S0
1
0
De routetabellen in elke router bewaren gegevens over: • het netwerknummer • de interface waarheen de router het pakket stuurt op weg naar het bestemmingsnetwerk • de hop count of metriek naar het bestemmingsnetwerk
5.4.4
Routeringslussen Afstand-vector-routeprotocollen houden alle veranderingen op het internetwerk bij door regelmatig nieuwtjes naar alle actieve interfaces te broadcasten. Deze broadcast
Hoofdstuk 5 • IP-routeren
246
bevat de volledige routetabel. Dat werkt goed, hoewel het CPU-tijd en bandbreedte op de verbindingen in beslag neemt. Als het netwerk uitvalt, kunnen er problemen optreden. De trage synchronisatie van afstand-vector-routeprotocollen kan inconsistente routetabellen en routeringslussen tot gevolg hebben. Routeringslussen kunnen ontstaan omdat niet alle routers tegelijk bijgewerkt worden. Stel dat de interface naar netwerk 5 in figuur 5.6 uitvalt. Alle routers krijgen die informatie door van router E. Router A heeft een pad naar netwerk 5 via routers B, C, en E in zijn tabellen staan. Als netwerk 5 uitvalt, vertelt router E dit aan router C. Hierdoor stopt router C met routeren naar netwerk 5 via router E. Maar routers A, B en D weten dit nog niet dus blijven zij actualiseringsgegevens (update information) sturen. Router C zal uiteindelijk zijn update sturen en ervoor zorgen dat B ophoudt met routeren naar netwerk 5. Routers A en D zijn echter nog steeds niet bijgewerkt. Volgens hen is netwerk 5 nog steeds in drie hops bereikbaar via router B. Figuur 5.6
Voorbeeld van een routeringslus Netwerk 3
RouterA
RouterB
56K
Netwerk 5
Netwerk 4
RouterC
RouterE
T3
RouterD
Het probleem ontstaat als router A, zoals elke 30 seconden, het bericht ‘Hallo, ik ben er nog – dit zijn de links die ik ken’ stuurt. Dit bericht zegt ook dat netwerk 5 bereikbaar is. Routers B en D ontvangen dan het geweldige nieuws dat netwerk 5 bereikt kan worden via router A. Zij sturen dus die informatie door. Elk pakket dat bestemd is voor netwerk 5 gaat nu naar router A, naar router B, en dan weer terug naar router A. Dit is een routeringslus – hoe stop je zoiets?
5.4.5
Maximale hop count Het probleem van de routeringslus wordt tellen tot oneindig (count to infinity) genoemd. Het wordt veroorzaakt door roddel en verkeerde informatie die over het hele internetwerk gestuurd worden. Als u niet ingrijpt neemt de hop count oneindig toe, namelijk telkens als een pakket de router passeert. Een manier om dit op te lossen is door het definiëren van een maximum hop count. Afstand-vector (RIP) beperkt de hop count tot maximaal 15, dus alle
Studiegids Cisco CCNA
247
bestemmingen waar 16 hops voor nodig zijn, worden onbereikbaar. Met andere woorden, na een lus van 15 hops, wordt netwerk 5 als onbereikbaar beschouwd. Zo verhindert de maximum hop count dat pakketten eeuwig in de lus blijven rondzingen. Hoewel dit een werkbare oplossing is, verwijdert het de routeringslus zelf niet. Pakketten gaan nog steeds de lus in, maar in plaats van ongecontroleerd rond te razen, stuiteren ze gewoon 16 keer op en neer en sterven dan.
5.4.6
Split horizon Een andere oplossing voor de routeringslus is de split horizon. Dit vermindert onjuiste route-informatie en routering overhead in een afstand-vector-netwerk (distance vector network). Split horizon bepaalt namelijk dat informatie niet teruggestuurd kan worden naar de oorspronkelijk bron. Met andere woorden, de router weet via welke interface een netwerkroute bekendgemaakt werd. Hij zal die route-informatie niet via dezelfde interface naar ander routers doorsturen. Dit voorkomt dat router A de bijgewerkte informatie die hij heeft ontvangen van router B weer terugstuurt naar router B.
5.4.7
Route poisoning Een andere manier om problemen die veroorzaakt worden door inconsistente bijwerkingen te voorkomen en netwerklussen te stoppen, is route poisoning. Als netwerk 5 bijvoorbeeld uit de lucht gaat, begint router E met route poisoning door een tabelregel in te voeren voor netwerk 5. Hierin wordt een hop count van 16 ingevuld. Daarmee wordt netwerk 5 als onbereikbaar geclassificeerd. Door deze vergiftiging van de route naar netwerk 5, is router C niet vatbaar voor onjuiste bijwerkingen over de route naar netwerk 5. Als router C een route- poisoning ontvangt van router E, stuurt deze een bijwerking, een zgn. poison reverse update, terug naar router E. Dit zorgt er voor dat alle routers op het segment de informatie over de ‘poisoned route’ hebben ontvangen. Route poisoning en split horizon zorgen voor een zeer veerkrachtig en betrouwbaar afstand-vector netwerk (distance vector network). Ze voorkomen netwerklussen.
5.4.8
Holddowns En dan zijn er nog de holddowns. Deze voorzieningen voorkomen dat er regelmatige bijwerkberichten uitgaan die een route weer invoeren als die voortdurend aan en uit gaat (flapping). Dit gebeurt meestal bij een seriële verbinding die verloren gaat en dan weer terugkomt. Als er geen manier is om dit te stabiliseren, kan het netwerk zichzelf nooit synchroniseren en kan de ‘knipperlicht’-interface het hele netwerk onbruikbaar maken.
Hoofdstuk 5 • IP-routeren
248
Holddowns voorkomen dat routes te snel wijzigen door tijd te reserveren om één van de volgende doelen te bereiken: • de uitgevallen route komt weer beschikbaar. • het netwerk stabiliseert zich enigszins voordat het overschakelt op de beste alternatieve route. Ze vertellen routers ook dat ze gedurende een bepaalde periode geen wijzigingen mogen aanbrengen op pas verwijderde routes. Dit verhindert dat niet-actieve routes voortijdig weer ingevoerd worden in de tabellen van de andere routers. Als een router van zijn buurman het bericht krijgt dat een voorheen toegankelijk netwerk niet meer functioneert, gaat de holddown-timer lopen. Als er een nieuwe route binnenkomt van een buurman met een betere metriek dan de oorspronkelijke route naar het bestemmingsnetwerk, wordt de holddown verwijderd en de gegevens weer doorgegeven via de nieuwe route. Soms wordt een route ontvangen van een naburige router voordat de holddown-timer afgelopen is. Als die slechter dan of gelijk is aan de vorige route, wordt die informatie genegeerd en blijft de holddown-timer doorlopen. Dit geeft het netwerk meer tijd zichzelf te stabiliseren voordat het weer probeert te synchroniseren. Holddowns gebruiken ‘triggered updates’ om een naburige router ervan op de hoogte te stellen dat er een wijziging in het netwerk is. Triggered updates stellen de holddown-timer opnieuw in. In tegenstelling tot update-berichten van naburige routers, maken triggered updates een nieuwe routetabel. Deze wordt onmiddellijk naar de naburige routers gestuurd omdat er een verandering is ontdekt in het internetwerk. Triggered updates stellen de holddown-timer op drie momenten opnieuw in:
Leer dit van buiten! •
De holddown-timer loopt af.
•
De route ontvangt een betere route naar het bestemmingsnetwerk
•
Een flush-timer (de tijd die een route vastgehouden wordt voordat deze wordt verwijderd) verwijdert de route uit de routetabel.
5.5 Routing Information Protocol (RIP) Routing Information Protocol (RIP) is een zuiver afstand-vector-routeprotocol (distance vector protocol). Het verstuurt elke 30 seconden de volledige routetabel via alle actieve interfaces. RIP gebruikt alleen hop count om de beste weg naar een niet-
Studiegids Cisco CCNA
249
lokaal netwerk te bepalen. Het heeft echter een maximum toegestane hop count van standaard 15. Dit houdt in dat 16 als onbereikbaar beschouwd wordt. RIP werkt goed in kleine netwerken, maar is niet efficiënt op grote netwerken met langzame WANlinks of op netwerken met een groot aantal routers. De RIP-versie 1 gebruikt alleen klasse-georiënteerde routering (classful routing). Dit betekent dat alle apparaten in het netwerk hetzelfde subnetmasker moeten gebruiken. Dat komt omdat RIP-versie 1 geen updates met subnetmasker-informatie erachter stuurt. RIP-versie 2 omvat de prefix routing en stuurt wel subnetmaskergegevens mee met de route-informatieberichten. Dit wordt klasseloze routering (classless routing) genoemd. Alleen RIP-versie 1 wordt in dit boek behandeld, omdat het CCNA dat onderwerp ook behandeld.
5.5.1
RIP-timers RIP gebruikt drie verschillende soorten timers om zijn gedrag te bepalen: Route update-timer Stelt de interval in (meestal 30 seconden) tussen periodieke routering berichten. De router stuurt in deze berichten een volledige kopie van de routetabel naar alle buren. Route invalid-timer Bepaalt de tijdsduur die moet verstrijken (90 seconden) voordat een router besluit dat een route ongeldig is geworden. De router zal tot die conclusie komen als deze in die periode geen informatie heeft ontvangen over een bepaalde route. Als de route ongeldig is geworden, stuurt de router bijwerkingen naar alle buren. Route flush-timer Bepaalt de tijd tussen het moment dat een route ongeldig wordt en dat deze uit de routetabel verwijderd wordt (240 seconden). Voordat een route uit de tabel verwijderd wordt, stelt de router alle buren op de hoogte van diens naderende ondergang. De waarde van de route invalid-timer moet lager zijn dan die van de route flush-timer. Dit om er voor te zorgen dat de router genoeg tijd heeft om zijn buren op de hoogte te stellen van de ongeldig route voordat hij zijn routetabel bijwerkt en de route verwijdert.
5.5.2
RIP configureren Om RIP te configureren schakelt u het protocol in met de opdracht router rip en vertelt u het RIP-routeprotocol over welke netwerken informatie uitgewisseld moet worden. Dat is alles. Neem als voorbeeld het router-netwerk met vier routers (opnieuw getoond in figuur 5.7). Dit netwerk gaat u configureren met RIP-routering.
Hoofdstuk 5 • IP-routeren
250 Figuur 5.7
IP-routering met meer routers 172.16.30.0/24
172.16.10.0/24
172.16.50.0/24 .1 E0
.1 S0 S0 S1 S0 E0 .1 .2 .1 .2 E0 2501A 172.16.20.0/24 2501B 172.16.40.0/24 2501C .2
.1 Fa0/0 2621A
Router 2621A RIP heeft een administratieve afstand van 120. Statische routes hebben standaard een administratieve afstand van 1. Omdat u zojuist statische routes hebt geconfigureerd, wordt de informatie die doorgegeven is met RIP niet overgenomen in de routetabellen van de routers van dit netwerk. Het eerste dat u moet doen, is de statische routes van elke router verwijderen. Dit doet u met de opdracht no ip route. In de routeruitvoer van 2621A (zie hieronder) moet u de hele opdracht geven om de route uit de tabel te halen. 2621A#config t Enter configuration CNTL/Z. 2621A(config)#no ip 172.16.10.2 2621A(config)#no ip 172.16.10.2 2621A(config)#no ip 172.16.10.2 2621A(config)#no ip 172.16.10.2
commands, one per line.
End with
route 172.16.20.0 255.255.255.0 route 172.16.30.0 255.255.255.0 route 172.16.40.0 255.255.255.0 route 172.16.50.0 255.255.255.0
Als de statische routes eenmaal zijn verwijderd uit de routetabel kunt u het RIProuteprotocol toevoegen met de opdrachten router rip en network. De opdracht network laat het routeprotocol weten over welke netwerken het gegevens mag uitwisselen. (In het Engels wordt deze manier van gegevensuitwisseling aangeduid als ‘to advertise’.) In de routerconfiguratie hieronder hebt u het routeprotocol niet verteld over welke subnetten gegevens uitgewisseld mag worden. In plaats daarvan hebt u het protocol de klasse-georiënteerde grens verteld. RIP zoekt de bijbehorende subnetten en wisselt die informatie uit met andere routers.
Studiegids Cisco CCNA
251
2621A(config)#router rip 2621A(config-router)#network 172.16.0.0 2621A(config-router)#^Z 2621A#
Dat is alles. Twee opdrachten en u bent klaar – dat maakt uw baan een stuk gemakkelijker dan wanneer u statische routes gebruikt, nietwaar? Houdt echter in uw achterhoofd dat deze methode extra CPU-tijd op de router en bandbreedte op het netwerk in beslag neemt. De bovenstaande netwerkopdracht gebruikt het netwerkadres 172.16.0.0, hoewel de router verbonden is aan veel verschillende subnetten. RIP and IGRP gebruiken het klasse-georiënteerde adres (classful address) als zij het netwerkadres configureren. Daarom moeten alle subnetmaskers hetzelfde zijn op alle apparaten in het netwerk (dit is klasse-georiënteerde routering, classful routing).
U moet begrijpen dat RIP is geconfigureerd door middel van klasse-geöriënteerde routering netwerkadressen!
Router 2501A Om RIP op router 2501A te configureren moet u de drie statische routes verwijderen die u in het vorige voorbeeld hebt toegevoegd. Als u eenmaal zeker weet dat er geen routes in de routetabel staan met een betere administratieve afstand dan 120, kunt u RIP toevoegen. Als u de statische routes niet verwijdert, zullen RIP-routes nooit in de routetabel worden gevonden. RIP draait echter wel op de achtergrond, en neemt CPU-tijd op de routers en bandbreedte op het netwerk in beslag. 2501A#config t Enter configuration commands, one per line. End with CNTL/Z. 2501A(config)#no ip route 172.16.30.0 255.255.255.0 172.16.20.2 2501A(config)#no ip route 172.16.40.0 255.255.255.0 172.16.20.2 2501A(config)#no ip route 172.16.50.0 255.255.255.0 172.16.20.2 2501A(config)#router rip 2501A(config-router)#network 172.16.0.0 2501A(config-router)#^Z 2501A#
Het kan bijna niet makkelijker.
Hoofdstuk 5 • IP-routeren
252
Router 2501B Router 2501B had slechts twee statische routes. Als u die eenmaal hebt verwijderd, kunt u de RIP-routering inschakelen. 2501B#config t Enter configuration commands, one per line. End with CNTL/Z. 2501B(config)#no ip route 172.16.10.0 255.255.255.0 172.16.20.1 2501B(config)#no ip route 172.16.50.0 255.255.255.0 172.16.40.2 2501B(config)#router rip 2501B(config-router)#network 172.16.0.0 2501B(config-router)#^Z 2501B#
U moet nog op één router RIP-routering configureren.
Router 2501C Router 2501C heeft slechts één standaardroute omdat u de opdracht default route hebt gegeven. Verwijder eerst de standaardroute; daarna kunt u RIP-routering toevoegen. RouterC#config t Enter configuration commands, one per line. End with CNTL/Z. RouterC(config)#no ip route 0.0.0.0 0.0.0.0 172.16.40.1 RouterC(config)#router rip RouterC(config-router)#network 172.16.0.0 RouterC(config-router)#^Z RouterC# 05:10:31: %SYS-5-CONFIG_I: Configured from console by console
Het is belangrijk te onthouden waarom u dit doet. Direct-verbonden routes hebben een administratieve afstand van 0, statische routes hebben een administratieve afstand van 1, en RIP heeft een administratieve afstand van 120. RIP wordt het roddelprotocol genoemd omdat het doet denken aan de middelbare school. Een gerucht dat je daar hoort (advertised route) moet wel waar zijn. Zo gedraagt RIP zich ook op een internetwerk – precies zoals een veertienjarige scholier.
Studiegids Cisco CCNA
5.5.3
253
De RIP-routetabellen controleren Elke routetabel bevat nu zowel de routes naar direct aan de router verbonden netwerken als de routers die middels RIP door naburige routes bekend zijn gemaakt. De volgende routeruitvoer toont de inhoud van de routetabel op router 2621A. 2621A#sh ip route [uitvoer verwijderd] 172.16.0.0/24 is subnetted, 172.16.50.0 [120/3] via FastEthernet0/0 R 172.16.40.0 [120/2] via FastEthernet0/0 R 172.16.30.0 [120/2] via FastEthernet0/0 R 172.16.20.0 [120/1] via FastEthernet0/0 C 172.16.10.0 is directly 2621A# R
5 subnets 172.16.10.2, 172.16.10.2, 172.16.10.2, 172.16.10.2, connected, FastEthernet0/0
In deze uitvoer ziet u dezelfde regels in de routetabellen als toen u statische routes gebruikte. De R betekent echter dat de netwerken dynamisch toegevoegd werden, met behulp van het RIP-routeprotocol. De aanduiding [120/3] is de administratieve afstand van de route (120) gecombineerd met het aantal hops naar dat netwerk (3). De volgende routeruitvoer toont de routetabel van router 2501A. 2501A#sh ip route [uitvoer verwijderd] 172.16.0.0/24 is subnetted, 172.16.50.0 [120/2] via Serial0 R 172.16.40.0 [120/1] via Serial0 R 172.16.30.0 [120/1] via Serial0 C 172.16.20.0 is directly C 172.16.10.0 is directly 2501A# R
5 subnets 172.16.20.2, 00:00:11, 172.16.20.2, 00:00:11, 172.16.20.2, 00:00:11, connected, Serial0 connected, Ethernet0
In de bovenstaande uitvoer staan weer dezelfde netwerken in de routetabel. U hebt ze niet met de hand hoeven toe te voegen De volgende routeruitvoer toont de routetabellen voor routers 2501B en 2501C.
Hoofdstuk 5 • IP-routeren
254
2501B#sh ip route Codes: C - connected, S - static, I - IGRP, R - RIP, M – [uitvoer verwijderd] Gateway of last resort is not set 172.16.0.0/24 is subnetted, 172.16.50.0 [120/1] via Serial1 C 172.16.40.0 is directly C 172.16.30.0 is directly C 172.16.20.0 is directly R 172.16.10.0 [120/1] via 2501B# R
5 subnets 172.16.40.2, 00:00:26, connected, Serial1 connected, Ethernet0 connected, Serial0 172.16.20.1, 00:00:04, Serial0
RouterC#sh ip route Codes: C - connected, S - static, I - IGRP, R - RIP, M – [uitvoer verwijderd] Gateway of last resort is not set 172.16.0.0/24 is subnetted, 172.16.50.0 is directly 172.16.40.0 is directly 172.16.30.0 [120/1] via Serial0 R 172.16.20.0 [120/1] via Serial0 R 172.16.10.0 [120/2] via Serial0 RouterC# C C R
5 subnets connected, Ethernet0 connected, Serial0 172.16.40.1, 00:00:06, 172.16.40.1, 00:00:06, 172.16.40.1, 00:00:06,
RIP heeft goed gewerkt in dit kleine internetwerk. Maar deze techniek staat slechts een maximale hop count van 15 hops toe (waarbij 16 onbereikbaar is). Verder stuurt elke router waarop dit protocol is geactiveerd elke 30 seconden een bericht met daarin de volledige routetabel uit. Dit berichtenverkeer kan een ravage aanrichten op een groter internetwerk.
5.5.4
Het doorgeven van RIP-informatie beperken Misschien wilt u helemaal niet dat uw RIP-netwerk overal bekendgemaakt wordt op uw LAN en WAN. Het heeft bijvoorbeeld geen zin uw RIP-netwerk op het Internet bekend te maken. Er zijn een paar verschillende manieren om te voorkomen dat ongewenste RIPberichten over uw LAN- en WAN-netwerken verspreid worden. De makkelijkste manier om dit te doen is met de opdracht passive-interface. Deze opdracht
Studiegids Cisco CCNA
255
voorkomt dat de router RIP-berichten doorstuurt via een opgegeven interface. Diezelfde interface kan echter nog steeds RIP-berichten ontvangen. Hieronder een voorbeeld van hoe u een passive-interface op een router configureert: RouterA#config t RouterA(config)#router rip RouterA(config-router)#network 172.16.0.0 RouterA(config-router)#passive-interface serial 0
Deze opdracht weerhoudt de router ervan RIP-berichten door te sturen via interface Serial 0. Deze interface kan echter nog steeds RIP-berichten ontvangen.
5.6 Interior Gateway Routing-Protocol (IGRP) Interior Gateway Routing Protocol (IGRP) is het producentspecifieke afstand-vectorrouteprotocol van Cisco (het proprietary distance vector protocol van Cisco). Dit betekent dat al uw routers Cisco-routers moeten zijn als u IGRP in uw netwerk wilt toepassen. Cisco heeft dit routeprotocol ontwikkeld om de problemen bij RIP op te lossen. IGRP heeft een maximale hop count van 255 met een standaard van 100. Dit is makkelijk in grotere netwerken en lost het probleem op van het maximale aantal van 15 hops in een RIP-netwerk. IGRP gebruikt ook een andere metriek dan RIP. IGRP gebruikt de bandbreedte en de verbinding als een metriek om de beste route naar een internetwerk te bepalen. Dit wordt een samengestelde metriek (composite metric) genoemd. Betrouwbaarheid, belasting, en Maximum Transmission Units (MTUs) van de verbinding kunnen ook gebruikt worden, maar ze worden niet standaard gebruikt.
5.6.1
IGRP-Timers IGRP heeft de volgende timers met standaardinstellingen waarmee zijn gedrag geregeld wordt: Update-timers Deze bepalen hoe vaak routing-update berichten verstuurd moeten worden. De standaard is 90 seconden. Invalid-timers Deze bepalen hoe lang een router moet wachten voordat deze besluit dat een route ongeldig is als de router er geen specifieke update over ontvangt. De standaard is drie maal de update-tijd.
Hoofdstuk 5 • IP-routeren
256
Holddown-timers Deze bepalen de holddown tijd. De standaard is drie maal de tijd van de updatetimer tijd plus 10 seconden. Flush-timers Deze bepalen hoeveel tijd er verloopt voordat een route uit de routetabel ‘verwijderd’ wordt. De standaard is zeven maal de tijd van de routing-update-tijd.
5.6.2
IGRP-routing configureren De opdracht waarmee u IGRP configureert is dezelfde als u die welke u gebruikt om RIP-routering mee te configureren. Er is wel een belangrijk verschil: u gebruikt een autonoom systeem- (AS, autonomous system) nummer. Alle routers binnen een autonoom systeem moeten hetzelfde AS-nummer gebruiken, anders kunnen ze geen routegegevens uitwisselen. U schakelt IGRP-routering in: RouterA#config t RouterA(config)#router igrp 10 RouterA(config-router)#network 172.16.0.0
De configuratie in bovenstaande routeropdrachten is net zo eenvoudig als in RIProutering. Alleen gebruikt IGRP een AS-nummer. Dit nummer bepaalt met welke routers in het internetwerk de route-informatie uitgewisseld zal worden.
U moet onthouden dat u een klasse-georiënteerd (classful) netwerknummer intikt als u IGRP configureert!
IGRP biedt de mogelijkheid tot load balancing (de verdeling van de netwerkbelasting) over maximaal zes ongelijkwaardige verbindingen. Bij RIP moeten netwerken dezelfde hop count hebben voordat ze gebruikt kunnen worden voor load balancing. IGRP gebruikt bandbreedte om de load balancing over de verbinding te bepalen. Binnen IGRP gebruikt u de opdracht variance om te bepalen hoe u de netwerkbelasting verdeelt over de ongelijkwaardige verbindingen. Deze opdracht bepaalt hoe de verbindingen, vanaf die met de beste metriek tot en met die met de slechtste maar nog acceptabele metriek, worden belast.
Load balancing en het delen van verkeer (traffic sharing) worden diepgaander behandeld in het boek CCNP: Routing Study Guide (Sybex, 2001).
Studiegids Cisco CCNA
257
IGRP-configuratie is behoorlijk simpel en niet veel anders dan RIP-configuratie. U moet beslissen welk AS-nummer u gebruikt voordat u de routers configureert. Onthoud dat alle routers in uw internetwerk hetzelfde AS-nummer moeten gebruiken als u wilt dat ze route-informatie delen. In het internetwerk dat tot nu toe als voorbeeld is gebruikt, wordt AS 10 toegepast om de routers te configureren. In het volgende kopje wordt de situatie behandeld waarin een internetwerk met IGRP-routering wordt geconfigureerd.
Router 2621A Het AS-nummer, zoals u in de routeruitvoer hieronder ziet, kan elk nummer zijn van 1 tot 65535. Een router kan lid zijn van zoveel Autonome Systemen als u maar wilt. 2621A#config t Enter configuration commands, one per line. CNTL/Z. 2621A(config)#router igrp ? <1-65535> Autonomous system number
End with
2621A(config)#router igrp 10 2621A(config-router)#netw 172.16.0.0 2621A(config-router)#^Z 2621A#
De opdracht router igrp schakelt IGRP-routering in op de router. Net als bij RIP, moet u wel nog steeds het te gebruiken netwerknummer opgeven. IGRP gebruikt klasse-georiënteerde routering. Dit betekent dat subnetmaskergegevens niet meegestuurd worden met de routeprotocolberichten.
Als u het netwerkadres 172.16.10.0 op de router intikt, zal die dat accepteren en de configuratie wijzigen naar het klasse-georiënteerde adres 172.16.0.0. Bij het examen is men echter niet zo vergevingsgezind. Uw antwoord wordt fout gerekend als u het verkeerde netwerknummer intikt. Denk klasse-georiënteerd!
Router 2501A Om router 2501A te configureren, hoeft u alleen maar de IGRP-routering in te schakelen en AS-nummer 10 te gebruiken. Daarna voegt u het netwerknummer toe:
Hoofdstuk 5 • IP-routeren
258 2501A#config t Enter configuration commands, one per line. CNTL/Z. 2501A(config)#router igrp 10 2501A(config-router)#netw 172.16.0.0 2501A(config-router)#^Z 2501A#
End with
Router 2501B Om router 2501B te configureren moet u IGRP inschakelen met behulp van AS 10. 2501B#config t Enter configurationcommands, one per line. End with CNTL/Z. 2501B(config)#router igrp 10 2501B(config-router)#netw 172.16.0.0 2501B(config-router)#^Z 2501B#
Router 2501C De laatste router is 2501C. Ook hier moet u AS 10 gebruiken. 2501C#config t Enter configuration commands, one per line. CNTL/Z. 2501C(config)#router igrp 10 2501C(config-router)#netw 172.16.0.0 2501C(config-router)#^Z RouterC#
5.6.3
End with
De IGRP-routetabellen controleren Als de routers eenmaal geconfigureerd zijn, moet u de configuratie controleren met de opdracht show ip route. Alle routes in de volgende uitvoer zijn hetzij netwerken naar direct-verbonden netwerken hetzij door IGRP gemaakte routes. Omdat RIP niet uitgeschakeld is, draait
Studiegids Cisco CCNA
259
het nog steeds op de achtergrond. Het neemt zowel CPU-tijd op de router als bandbreedte in beslag. Een router zal echter nooit een route die door RIP wordt gevonden in de routetabel zetten. IGRP heeft namelijk een betere administratieve afstand dan RIP. De routeruitvoer die hieronder is afgebeeld komt van router 2621A. Alle routes staan in de routetabel. 2621A#sh ip route [uitvoer verwijderd]
I I I I C
172.16.0.0/24 is subnetted, 5 subnets 172.16.50.0 [100/160360] via 172.16.10.2, FastEthernet0/0 172.16.40.0 [100/160260] via 172.16.10.2, FastEthernet0/0 172.16.30.0 [100/158360] via 172.16.10.2, FastEthernet0/0 172.16.20.0 [100/158260] via 172.16.10.2, FastEthernet0/0 172.16.10.0 is directly connected, FastEthernet0/0
De I betekent dat IGRP de routes maakt. De aanduiding [100/160360] is de administratieve afstand van IGRP en de samengestelde metriek. Hoe lager de samengestelde metriek, hoe beter de route. De volgende uitvoer toont de routetabel voor router 2501A. 2501A#sh ip route [uitvoer verwijderd] 172.16.0.0/24 is 172.16.50.0 00:00:49, Serial0 I 172.16.40.0 00:00:49, Serial0 I 172.16.30.0 00:00:49, Serial0 C 172.16.20.0 C 172.16.10.0 2501A# I
subnetted, 5 subnets [100/160350] via 172.16.20.2, [100/160250] via 172.16.20.2, [100/158350] via 172.16.20.2, is directly connected, Serial0 is directly connected, Ethernet0
De volgende routeruitvoer toont de routetabel van router 2501B.
Hoofdstuk 5 • IP-routeren
260 2501B#sh ip route [uitvoer verwijderd]
172.16.0.0/24 is subnetted, 5 subnets 172.16.50.0 [100/8576] via 172.16.40.2, 00:01:11, Serial1 C 172.16.40.0 is directly connected, Serial1 C 172.16.30.0 is directly connected, Ethernet0 C 172.16.20.0 is directly connected, Serial0 I 172.16.10.0 [100/158350] via 172.16.20.1, 00:00:36, Serial0 2501B# I
De volgende routeruitvoer toont de routetabel van router 2501C. 2501C#sh ip route [uitvoer verwijderd] 172.16.0.0/24 is subnetted, 5 subnets 172.16.50.0 is directly connected, Ethernet0 172.16.40.0 is directly connected, Serial0 172.16.30.0 [100/8576] via 172.16.40.1, 00:00:28, Serial0 I 172.16.20.0 [100/160250] via 172.16.40.1, 00:00:28, Serial0 I 172.16.10.0 [100/160350] via 172.16.40.1, 00:00:28, Serial0 2501C# C C I
5.7 Configuraties controleren Het is belangrijk dat u uw configuraties controleert als u ze eenmaal af hebt. De onderstaande lijst bevat de opdrachten die u kunt gebruiken om de gerouteerde protocollen (routed protocols) en routeprotocollen (routing protocols) te controleren die op uw Cisco-routers zijn geconfigureerd. De eerste opdracht werd behandeld in de vorige paragraaf; de andere worden verderop in het boek behandeld. • show ip route • show protocolls • show ip protocol • debug ip rip • debug ip igrp events • debug ip igrp transactions
Studiegids Cisco CCNA
5.7.1
261
De opdracht Show Protocols De opdracht show protocols is nuttig want het toont de adressen voor de laag Netwerk die op elke interface geconfigureerd zijn. 2501B#sh protocol Global values: Internet Protocol routering is enabled Ethernet0 is up, line protocol is up Internet address is 172.16.30.1/24 Serial0 is up, line protocol is up Internet address is 172.16.20.2/24 Serial1 is up, line protocol is up Internet address is 172.16.40.1/24 2501B#
Deze uitvoer toont het IP-adres van de interfaces Ethernet 0, Serial 0, en Serial 1 op router 2501B. Als IPX of AppleTalk op de router geconfigureerd waren, zouden deze netwerkadressen ook worden getoond.
5.7.2
De opdracht Show IP-Protocol De opdracht show ip protocol toont u de routeprotocollen die op uw router geconfigureerd zijn. In de onderstaande uitvoer draaien zowel RIP als IGRP op de router. Echter alleen IGRP verschijnt in de routetabel. De reden hiervan is de lagere administratieve afstand. De opdracht show ip protocols laat ook de timers zien die het routeprotocol gebruikt. In de uitvoer hieronder verstuurt RIP elke 30 seconden broadcastberichten. Dit is het standaard interval. Verder naar onder ziet u dat RIP is geactiveerd voor netwerk 172.16.0.0. De twee buren die het protocol vond zijn 172.16.40.2 en 172.16.20.1. 2501B#sh ip protocol Routering Protocol is “rip” Sending updates every 30 seconds, next due in 6 seconds Invalid after 180 seconds, hold down 180, flushed after 240 Outgoing update filter list for all interfaces is Incoming update filter list for all interfaces is Redistributing: rip Default version control: send version 1, receive any version
Hoofdstuk 5 • IP-routeren
262 Interface Send Recv Ethernet0 1 1 2 Serial0 1 1 2 Serial1 1 1 2 Routing for Networks: 172.16.0.0 Routing Information Sources: Gateway Distance 172.16.40.2 120 172.16.20.1 120 Distance: (default is 120)
Key-chain
Last Update 00:00:21 00:00:23
In de bovenstaande routeruitvoer toont de laatste regel de standaard administratieve afstand voor RIP (120). De onderstaande uitvoer toont de IGRP-routeringsgegevens. De update-timer is standaard 90 seconden. De administratieve afstand is 100. Routing Protocol is “igrp 10” Sending updates every 90 seconds, next due in 42 seconds Invalid after 270 seconds, hold down 280, flushed after 630 Outgoing update filter list for all interfaces is Incoming update filter list for all interfaces is Default networks flagged in outgoing updates Default networks accepted from incoming updates IGRP metric weight K1=1, K2=0, K3=1, K4=0, K5=0 IGRP maximum hopcount 100 IGRP maximum metric variance 1 Redistributing: eigrp 10, igrp 10 Routing for Networks: 172.16.0.0 Routing Information Sources: Gateway Distance Last Update 172.16.40.2 100 00:00:47 172.16.20.1 100 00:01:18 Distance: (default is 100)
De gegevens die de opdracht show ip protocols oplevert, zijn onder andere het AS, de protocol-timers, netwerken die bekendgemaakt worden, de gateways, en de administratieve afstand (100). De invalid-timer is ingesteld op 270 seconden (drie maal de update-timer). Als er geen route-informatie is ontvangen binnen drie update-intervallen, wordt de route als ongeldig beschouwd. De holddown-timer is 280. Dit is ongeveer drie maal de updatetimer. Dit is het aantal seconden dat route-informatie niet doorgestuurd wordt terwijl de router wacht op nieuwe informatie over die route. Als er geen nieuwe informatie
Studiegids Cisco CCNA
263
ontvangen wordt voordat de holddown-timer afloopt, begint de flush-timer te lopen. Als de flush-timer afloopt wordt de route uit de routetabel verwijderd.
5.7.3
De opdracht Debug IP RIP Na de opdracht debug ip rip stuurt de router de routing updates die hij verzendt en ontvangt ook naar de console-sessie. Als u via Telnet op de router werkt, moet u de opdracht Terminal monitor geven om de uitvoer van de debug-opdrachten te kunnen ontvangen. In deze routeruitvoer wordt RIP zowel verzonden als ontvangen op de interfaces Serial 1, Serial 0 en Ethernet 0. Dit is een geweldig gereedschap om problemen mee op te lossen. De metriek is de hop count. 2501B#debug ip rip RIP protocol debugging is on 2501B# 07:12:56: RIP: received v1 update from 172.16.40.2 on Serial1 07:12:56: 172.16.50.0 in 1 hops 07:12:56: RIP: received v1 update from 172.16.20.1 on Serial0 07:12:56: 172.16.10.0 in 1 hops
Let in bovenstaande debug-uitvoer op de router-updates die via de interfaces Serial 0 en Serial 1ontvangen worden op router 2501B. Die zijn respectievelijk van routers 2501A en 2501C. Wat u moet opvallen, is dat de split horizon regels de routers 2501A en 2501C ervan weerhouden de routes die ze eerst ontvangen hebben van router 2501B terug te sturen naar diezelfde router. Dit houdt in dat alleen netwerk 176.16.50.0 bekend wordt gemaakt vanaf router 2501C. Alleen de gegevens over netwerk 176.16.10.0 worden vanaf router 2501A naar router 2501B gestuurd. 07:12:58: RIP: sending v1 update to Ethernet0 (172.16.30.1) 07:12:58: subnet 172.16.40.0, 07:12:58: subnet 172.16.20.0, 07:12:58: RIP: sending v1 update to Serial0 (172.16.20.2) 07:12:58: subnet 172.16.40.0, 07:12:58: subnet 172.16.30.0, 07:12:58: RIP: sending v1 update to Serial1 (172.16.40.1) 07:12:58: subnet 172.16.30.0, 07:12:58: subnet 172.16.20.0,
255.255.255.255 via metric 1 metric 1 255.255.255.255 via metric 1 metric 1 255.255.255.255 via metric 1 metric 1
Hoofdstuk 5 • IP-routeren
264
In de bovenstaande uitvoer zorgen de split horizon regels ervoor dat alleen de netwerken 176.16.20, 30 en 40 aan de routers 2501A en 2501C bekendgemaakt worden. Router 2501B zal de netwerken 172.16.10.0 en 172.16.50.0 niet terugsturen naar de routers 2501A en 2501C. 2501B#undebug all All possible debugging has been turned off 2501B#
U schakelt debugging uit met de undebug all of de opdracht no debug all. U kunt ook de verkorte opdracht un all gebruiken.
5.7.4
De opdracht Debug IP IGRP Met de opdracht debug ip igrp zijn er twee mogelijkheden. U hebt de beschikking over events en Transactions, zoals u hieronder ziet: 2501B#debug ip igrp ? events IGRP protocol events transactions IGRP protocol transactions
Het verschil tussen deze opdrachten wordt in de volgende paragrafen behandeld.
De opdracht Debug IP IGRP Events De opdracht debug ip igrp events is een samenvatting van de IGRP-informatie die op het netwerk wordt uitgewisseld. Deze routeruitvoer toont de bron en bestemming van elke update en het aantal routes in elke update. Informatie over afzonderlijke routes wordt door deze opdracht niet getoond. 2501B#debug ip igrp events IGRP event debugging is on 07:13:50: IGRP: received request from 172.16.40.2 on Serial1 07:13:50: IGRP: sending update to 172.16.40.2 via Serial1 (172.16.40.1) 07:13:51: IGRP: Update contains 3 interior, 0 system, and 0 exterior routes. 07:13:51: IGRP: Total routes in update: 3 07:13:51: IGRP: received update from 172.16.40.2 on Serial1
Studiegids Cisco CCNA 07:13:51: IGRP: Update contains 0 exterior routes. 07:13:51: IGRP: Total routes in 2501B#un 07:13:52: IGRP: received update Serial1 07:13:52: IGRP: Update contains 0 exterior routes. 07:13:52: IGRP: Total routes in 2501B#un all All possible debugging has been
265 1 interior, 0 system, and update: 1 from 172.16.40.2 on 1 interior, 0 system, and update: 1 turned off
U kunt de opdracht uitschakelen met de opdracht undebug all.
De opdracht Debug IP IGRP Transactions De opdracht debug ip igrp transactions toont ‘message requests’ van naburige routers die om een bijwerking vragen. U ziet ook de broadcasts die de router naar zijn buren stuurt. In deze uitvoer werd via interface Serial 1 op router 2501B een verzoek ontvangen van een naburige router op netwerk 172.16.40.2. Router 2501B antwoordde met een bijwerkingsbericht (update packet). 2501B#debug ip igrp transactions IGRP protocol debugging is on 07:14:05: IGRP: received request from 172.16.40.2 on Serial1 07:14:05: IGRP: sending update to 172.16.40.2 via Serial1 (172.16.40.1) 07:14:05: subnet 172.16.30.0, metric=1100 07:14:05: subnet 172.16.20.0, metric=158250 07:14:05: subnet 172.16.10.0, metric=158350 07:14:06: IGRP: received update from 172.16.40.2 on Serial1 07:14:06: subnet 172.16.50.0, metric 8576 (neighbor 1100) 2501B#un all All possible debugging has been turned off 2501B#
U kunt de opdracht uitschakelen met de opdracht undebug all (kortweg: un all).
Hoofdstuk 5 • IP-routeren
266
5.8 Samenvatting In dit hoofdstuk is IP-routering zeer gedetailleerd behandeld. Het is belangrijk dat u de in dit hoofdstuk behandelde basisbegrippen begrijpt. Voor alles wat op een Ciscorouter gebeurt moet namelijk een vorm van IP-routering geconfigureerd en geactiveerd zijn. In dit hoofdstuk zijn de volgende onderwerpen behandeld: • IP-routering en hoe frames worden gebruikt om pakketten te verhuizen via routers naar de bestemmingshost. • Statisch routeren en hoe een beheerder dit toepast in een Cisco-internetwerk. • Standaard routeren en hoe dit toegepast wordt in stub-netwerken. • Dynamisch routeren en hoe lussen op te lossen in afstand-vector routeprotocollen. • De configuratie en controle van RIP-routering. • De configuratie en controle van IGRP-routering.
5.9 Kernbegrippen Voordat u deelneemt aan het examen moet u de volgende termen kennen: classless routing (klasseloos routeren) composite metric (samengestelde metriek) holddown hop count poison reverse updates route poisoning split horizon
5.10 Opdrachten in dit hoofdstuk Overzicht van alle opdrachten in dit hoofdstuk behandelde opdrachten:
Studiegids Cisco CCNA Opdracht
267 Beschrijving
Toont de IP-routetabel. Maakt statische en standaardroutes op een router. Een algemene configuratie-opdracht. Hij vertelt een router dat deze pakketten moet doorsturen naar een standaardroute als het bestemmingsnetwerk niet in de routetabel staat. router rip Schakelt RIP in op een router. Network Vertelt het routeprotocol welk netwerk het bekend moet maken. no ip route Verwijdert een statische of standaard route. router igrp as Schakelt IGRP in op een router. Variance Bepaalt de load balancing over alle acceptabele verbindingen van de beste tot en met de slechtste. show protocols Toont de gerouteerde protocollen en netwerkadressen die op elke interface geconfigureerd zijn. show ip protocols Toont alle routeprotocollen en de daaraan gerelateerde timers die op een router geconfigureerd zijn. debug ip rip Stuurt berichten naar de router-console met informatie over RIP-pakketten die verstuurd en ontvangen worden via een router-interface. debug ip igrp events Geeft een samenvatting van de IGRP-informatie die op het netwerk wordt uitgewisseld. debug ip igrp transactions Toont verzoeken om informatie van naburige routers en de broadcasts die uw router als show ip route Ip route Ip classless
Appendix
A
Inleiding tot het Cisco IOS: Praktijkoefeningen
D
e praktijkoefeningen in deze appendix zijn een inleiding tot het Cisco Internetworking Operating System (IOS). Het IOS stuurt de Cisco-routers en een aantal Cisco-switches aan. In deze appendix wordt behandeld hoe u Cisco-routers kunt configureren met behulp van een Command Line Interface (CLI). De beste manier om een router te configureren is met de CLI, omdat dit de meeste flexibiliteit biedt.
Het is de bedoeling dat tijdens deze praktijklessen met de Router Fundamentals Simulator wordt gewerkt. Deze staat op de cd die bij dit boek hoort. Upgrades voor dit product zijn te verkrijgen via www.routersim.com.
Deze appendix bestaat uit de volgende praktijklessen: • Oefening 1:
Inloggen op een Cisco-router
• Oefening 2:
Bewerk- en helpfuncties
• Oefening 3:
Basisinformatie voor de router verzamelen
• Oefening 4:
Wachtwoorden instellen
• Oefening 5:
Router-banners instellen
• Oefening 6:
Router-interfaces configureren
• Oefening 7:
Een interface oproepen
• Oefening 8:
Een IP-adres op een interface configureren
• Oefening 9:
Opdrachten voor de seriële interface
• Oefening 10:
Router-host-namen instellen
• Oefening 11:
Interface-beschrijvingen instellen
• Oefening 12:
Uw configuraties opslaan
• Oefening 13:
Uw configuraties controleren
• Oefening 14:
Samenvatting
Studiegids Cisco CCNA
501
Oefening 1: Inloggen op een Cisco-router Tijdens deze praktijkles maakt u verbinding met een router en leert u hoe u moet inloggen met de opdrachten enable (inschakelen) en disable (uitschakelen). 1. Maak verbinding met een router met behulp van de Network Visualizer en druk op Enter. De prompt Router> verschijnt. U werkt nu in gebruikersmodus. Deze wordt voornamelijk gebruikt om statististische gegevens te bekijken, hoewel het ook één van de stappen is van het inloggen in de beheermodus. Alleen in de beheermodus, waartoe u met de opdracht enable toegang krijgt, is het mogelijk de configuratie van een Cisco-router te bekijken en aan te passen. Router> Router>enable Router#
2. Router# geeft aan dat u in de beheermodus werkt. Vanuit de beheermodus kunt u de configuratie bekijken en veranderen. Door middel van de opdracht disable gaat u terug naar de gebruikersmodus. Router#disable Router>
3. Typ logout om de console te verlaten. Router>logout Router con0 is now available. Press Return te get started
Oefening 2: Bewerk- en helpfuncties Met de geavanceerde bewerkfuncties van Cisco kunt u uw router configureren. In deze oefening leert u hoe en waar u een vraagteken (?) van de CLI kunt gebruiken en hoe u met het toetsenbord opdrachten kunt bewerken. 1. Door een vraagteken(?) bij elke willekeurige prompt in te tikken, kunt u de reeks opdrachten die na deze prompt komt bekijken. Router#? Exec commands: access-enable access-profile access-template bfe
Create a temporary Access-List entry Apply user-profile to interface Create a temporary Access-List entry For manual emergency modes setting
Appendix A • Inleiding tot het Cisco IOS: Praktijkoefeningen
502 clear clock configure connect copy debug disable disconnect enable erase exit help lock login logout mrinfo
Reset functions Manage the system clock Enter configuration mode Open a terminal connection Copy configuration or image data Debugging functions (see also ‘undebug’) Turn off privileged commands Disconnect an existing network connection Turn on privileged commands Erase flash or configuration memory Exit from the EXEC Description of the interactive help system Lock the terminal Log in as a particular user Exit from the EXEC Request neighbor and version information from a multicast-router
—More—
Op dit punt kunt u op de spatiebalk drukken om naar de volgende informatiepagina te gaan. Om de opdrachten één voor één te bekijken drukt u op Enter. Door een willekeurige andere toets in te drukken keert u terug naar de prompt. 2. Opdrachten die met een bepaalde letter beginnen, vindt u door de letter en het vraagteken (?) in te tikken zonder spatie tussen letter en vraagteken. Router#c? clear clock Router#c
configure
connect
copy
Door c? te tikken verschijnt een overzicht van alle opdrachten die met een c beginnen. De Router# prompt blijft op het scherm staan met uw opdracht erachter. Dit is handig wanneer u lange opdrachten gebruikt en u de volgende ter beschikking staande opdracht wilt weten. 3. Om de volgende opdracht in een reeks te vinden typt u de opdracht gevolgd door een vraagteken. De klok van de router stelt u in door eerst clock ? te typen. Hierna kunt u door de achtereenvolgende help-schermen te volgen datum en tijd van de router instellen. Router#clock ? set Stel tijd en datum in Router#clock set ? hh:mm:ss De juiste tijd Router#clock set 10:30:10 ? <1-31> Dag van de maand MONTH Maand van het jaar
Studiegids Cisco CCNA
503
Router#clock set 10:30:10 28 ? MONTH Maand van het jaar Router#clock set 10:30:10 28 oct ? <1993-2035> Jaar Router#clock set 10:30:10 28 oct 2001 ? Router#
Door de opdracht clock plus een spatie en een vraagteken te tikken verschijnt er een lijst met de opdrachten die daarop kunnen volgen. Bovendien verschijnt een korte uitleg die vertelt wat ze doen. Uit het voorbeeld blijkt dat het voldoende is om steeds een opdracht, een spatie en een vraagteken te tikken tot tot slot (carriage return) de enig overgebleven optie is. Met wordt bedoeld dat u op Enter moet drukken om de opdracht af te ronden. 4. Typ show clock om de datum en tijd te bekijken die u heeft ingesteld. 5. Als het volgende bericht op uw scherm verschijnt: Router#clock set 10:30:10 % Incomplete command.
betekent dit dat de opdrachtenreeks niet compleet is. Druk op ↑ om de laatst ingevoerde opdracht op het scherm te krijgen. Nu kunt u door het typen van opdracht, spatie en vraagteken de opdracht completeren. 6. Wanneer u deze foutmelding krijgt: Router#clock set 10:30:10 28 8 ^ % Invalid input detected at ‘^’ marker.
geven de tekens -^- aan waar de fout in de opdracht zit. 7. De foutmelding: Router#sh te % Ambiguous command:
“sh te”
betekent dat u een dubbelzinnige opdracht hebt gegeven. U hebt niet alle sleutelwoorden of waarden ingetikt die bij deze opdracht noodzakelijk zijn. Met het vraagteken kunt u de desbetreffende opdracht opzoeken. Router#sh te? WORD tech-support
terminal
8. Typ in de beheermodus show access-list 10. Druk niet op Enter. 9. De cursor staat aan het eind van de regel. Druk op Ctrl+A. De cursor gaat naar het begin van de regel.
504
Appendix A • Inleiding tot het Cisco IOS: Praktijkoefeningen
10. Druk op Ctrl+E. De cursor gaat naar het eind van de regel. 11. Druk op Ctrl+A en vervolgens op Control+F. De cursor gaat eerst naar het begin van de regel en dan een teken vooruit. 12. Druk op Ctrl+B. De cursor gaat een teken achteruit. 13. Druk op Enter en vervolgens op Ctrl+P. Hiermee herhaalt u de laatste opdracht. 14. Druk op ↑. Ook hiermee herhaalt u de laatste opdracht.
Oefening 3: Basisinformatie voor de router verzamelen In deze oefening maakt u kennis met de opdrachten die gebruikt worden om basisinformatie over een Cisco-router te verzamelen. 1. Met de opdracht show version kunt u de basisconfiguratie van de hardware van het systeem, maar ook de software versie, de namen en de broncode van de configuratiebestanden en de boot-images bekijken. Router#sh version Cisco Internetwork Operating System Software IOS (tm) 2500 Software (C2500-JS-L), Version 12.0(8), RELEASE SOFTWARE (fc1) Copyright (c) 1986-1999 by cisco Systems, Inc. Compiled Mon 29-Nov-99 14:52 by kpma Image text-base: 0x03051C3C, data-base: 0x00001000 ROM: System Bootstrap, Version 11.0(10c), SOFTWARE BOOTFLASH: 3000 Bootstrap Software (IGS-BOOT-R), Version 11.0(10c), RELEASE SOFTWARE (fc1) RouterA uptime is 5 minutes System restarted by power-on System image file is “flash:c2500-js-l_120-8.bin” cisco 2522 (68030) processor (revision N) with 14336K/2048K bytes of memory. Processor board ID 15662842, with hardware revision 00000003 Bridging software. X.25 software, Version 3.0.0. SuperLAT software (copyright 1990 by Meridian Technology Corp).
Studiegids Cisco CCNA
505
TN3270 Emulation software. Basic Rate ISDN software, Version 1.1. 1 Ethernet/IEEE 802.3 interface(s) 2 Serial network interface(s) 8 Low-speed serial(sync/async) network interface(s) 1 ISDN Basic Rate interface(s) 32K bytes of non-volatile configuration memory. 16384K bytes of processor board System flash (Read ONLY) Configuration register is 0x2102
De opdracht show version laat zien hoe lang de router actief is, hoe deze opnieuw is gestart, de naam van het IOS-bestand dat actief is, het modelnummer van de hardware en de processor-versies en de hoeveelheid DRAM. Tot slot wordt de configuratieregisterwaarde getoond. 2.
U kunt de routerbestanden bekijken door in de beheermodus show runningconfig of show startup-config te tikken. De opdracht sh run, de verkorte opdracht voor show running-config, toont dat u de huidige configuratie te zien krijgt. Router#sh run Building configuration... Current configuration: ! version 12.0 service timestamps debug uptime service timestamps log uptime no service password-encryption ! hostname Router ip subnet-zero ! [uitvoer verwijderd]
De opdracht sh start, de verkorte opdracht van show startup-config, laat de configuratie zien die de volgende keer dat de router geladen wordt, zal worden gebruikt. Bovendien kunt u zien hoeveel NVRAM wordt gebruikt om het startup-config bestand op te slaan. Router#sh start Using 4850 out of 32762 bytes ! version 12.0 service timestamps debug uptime service timestamps log uptime no service password-encryption !
Appendix A • Inleiding tot het Cisco IOS: Praktijkoefeningen
506
hostname Router ! ! ip subnet-zero [uitvoer verwijderd]
4.
Het bestand startup-config kunt u verwijderen met de opdracht erase startup-config. Na het geven van deze opdracht ontvangt u een foutmelding als u het startup-config bestand opvraagt. Router#erase startup-config Erasing the nvram filesystem will remove all files! Continue? [confirm] [OK] Erase of nvram: complete Router#sh start %% Non-volatile configuration memory is not present Router#
Oefening 4: Wachtwoorden instellen De Cisco-routers worden met vijf wachtwoorden beveiligd. De eerste twee die besproken worden dienen voor het instellen van het enable-wachtwoord. Dit ‘inschakel’-wachtwoord is nodig om de beheermodus te beveiligen. Het enablewachtwoord zorgt ervoor dat de gebruiker die de opdracht enable gebruikt om een wachtwoord wordt gevraagd. De overige drie worden gebruikt om een wachtwoord te configureren wanneer de gebruikersmodus wordt benaderd via de console-poort, de auxiliary-poort of Telnet. 1. Stel de twee enable-wachtwoorden in op de router. Dit doet u in de global configuratiemodus. Router(config)#enable secret todd Router(config)#enable password cisco
2. Indien ingesteld, krijgt het enable-secret voorrang boven het enablewachtwoord. 3. Stel de wachtwoorden voor de gebruikersmodus in met de opdracht line. Router(config)#line ? <0-4> First Line number (Nummer van de eerste regel) aux Auxiliary line (Auxiliary-regel) console Primary terminal line (Regel van de eerste terminal) vty Virtual terminal (Virtuele terminal)
Studiegids Cisco CCNA
507
• Aux wordt gebruikt om het wachtwoord van de gebruikersmodus voor de
auxiliary-poort in te stellen. Meestal wordt dit gebruikt om een modem op de router te configureren, maar het kan ook voor een console worden gebruikt. • Console wordt gebruikt om een wachtwoord in te stellen voor de console-
gebruikersmodus. • Vty wordt gebruikt om een Telnet-wachtwoord op de router in te stellen. Als
het wachtwoord niet is ingesteld, kan Telnet standaard niet worden gebruikt. Om de wachtwoorden van de gebruikersmodus te configureren, configureert u de gewenste regel. U gebruikt de opdracht login om de router te vertellen dat hij om authenticatie moet vragen. 4. Stel het Auxiliary-wachtwoord op de router in. Om het auxiliary-wachtwoord in te stellen gaat u naar de global-configuratiemodus. Daar typt u line aux?. Er verschijnt maar één optie: 0–0, want er is maar één poort. Router#config t Enter configuration commands, one per line. End with CNTL/Z. Router(config)#line aux ? <0-0> First Line number Router(config)#line aux 0 Router(config-line)#login Router(config-line)#password todd
Vergeet de opdracht login niet, anders vraagt de auxiliary-poort niet om authenticatie. 5. Stel uw console-wachtwoord op de router in. Dit doet u met de opdracht line console 0. Router(config)#line console 0 Router(config-line)#login Router(config-line)#password todd1
6. Stel uw Telnet-wachtwoord op de router in. Om het wachtwoord voor de gebruikersmodus voor toegang tot Telnet op de router in te stellen gebruikt u de opdracht line vty. Router(config-line)#line vty 0 ? <1-4> Last Line Number Router(config-line)#line vty 0 4 Router(config-line)#login Router(config-line)#password todd2
Als uw routers zijn voorzien van een IP-adres, kunt u in plaats van een consolekabel het Telnetprogramma gebruiken om uw routers te configureren en controleren.
Appendix A • Inleiding tot het Cisco IOS: Praktijkoefeningen
508
Oefening 5: Router-banners instellen Het is mogelijk een banner op een Cisco-router in te stellen. Wanneer bijvoorbeeld een gebruiker in de router inlogt of een beheerder door middel van Telnet in de router inlogt, krijgt hij of zij een banner te zien. Deze banner geeft hen de informatie geeft die u wilt dat zij krijgen. 1. De opdracht die u moet geven is alleen beschikbaar in de globalconfiguratiemodus. Zie het voorbeeld dat hierna is weergegeven: Router(config)#banner ? LINE c banner-text c, where ‘c’ is a delimiting character exec Set EXEC process creation banner incoming Set incoming terminal line banner login Set login banner motd Set Message of the Day banner
2. De ‘Message of the Day’ wordt het meest gebruikt. Het zorgt ervoor dat iedereen die inbelt of die zich met de router verbindt via Telnet, de auxiliarypoort, of de console-poort een bericht te zien krijgt. Router(config)#banner motd ? LINE c banner-text c, where ‘c’ is a delimiting character Router(config)#banner motd # Enter TEXT message. End with the character ‘#’. Alleen geautoriseerde personen. (Authorized personal only) # Router(config)#^Z Router# 00:25:12: %SYS-5-CONFIG_I: Configured from console by console Router#exit Router con0 is now available Press RETURN to get started. Alleen geautoriseerde personen. (Authorized personal only) Router>
3. De hiervoor beschreven MOTD-banner laat een ieder die zich via de router verbindt weten dat hij/zij daarvoor geautoriseerd moet zijn.
Studiegids Cisco CCNA
509
Informatie over andere beschikbare banners vindt u in hoofdstuk 4: “Inleiding tot het Cisco IOS.”
Oefening 6: Router-interfaces configureren De configuratie van de interface is een van de belangrijkste configuraties van de router. Zonder interfaces is de router onbruikbaar. De interface-configuraties moeten precies kloppen om communicatie met andere apparaten mogelijk te maken. 1. Maak verbinding met een router en ga naar de global-configuratiemodus. Typ interface ? om alle interfaces die op de router beschikbaar zijn te bekijken. Router(config)#interface ?
Wat u te zien krijgt, hangt af van het apparaat waarmee u bent verbonden. 2. Typ interface serial ?. Het resultaat toont een 2501-router met twee seriële interfaces, die 0 en 1 zijn genoemd: Router(config)#interface serial ? <0-1> Serial interface number
3. Nu mag u de interface kiezen die u wilt configureren. Hebt u dat eenmaal gedaan, dan bevindt u zich in de interface-configuratie van deze interface. De opdracht om bijvoorbeeld de seriële poort 1 te kiezen is: Router(config)#interface serial 1 Router(config-if)#
4. Router 2501 heeft één Ethernet 10BaseT-poort. Door: interface ethernet 0 te typen kunt u de interface configureren. Router(config)#int ethernet ? <0-0> Ethernet interface number Router(config)#int ethernet 0 Router(config-if)#
Oefening 7: Een interface oproepen U schakelt een interface uit met de opdracht shutdown interface. U schakelt een interface in door de opdracht no shutdown te geven. Als een interface is uitgeschakeld kunt u door het typen van de opdracht show interface vaststellen dat
510
Appendix A • Inleiding tot het Cisco IOS: Praktijkoefeningen
de interface administratief is afgesloten. De opdracht show running-config laat zien dat de interface is uitgeschakeld. Standaard zijn alle interfaces uitgeschakeld. 1. Typ show interface Ethernet 0 om te zien dat de interface administratief is afgesloten. Router#sh int e0 Ethernet0 is administratively down, line protocol is down [output cut]
2. Roep de interface met serienummer 0 op met de opdracht no shutdown. Router#config t Enter configuration commands, one per line. End with CNTL/Z. Router(config)#int e0 Router(config-if)#no shutdown Router(config-if)#^Z 00:57:08: %LINK-3-UPDOWN: Interface Ethernet0, changed state to up 00:57:09: %LINEPROTO-5-UPDOWN: Line protocol on Interface Ethernet0, changed state to up Router#sh int e0 Ethernet0 is up, line protocol is up
3. Configureer de router zo dat alle interfaces worden ingeschakeld door voor alle interfaces de opdracht no shutdown te geven.
Oefening 8: Een IP-adres op een interface configureren Het is niet noodzakelijk dat u IP op al uw routers hebt, maar gewoonlijk wordt het wel voor alle routers gebruikt. Om IP-adressen op een interface te configureren gebruikt u de opdracht ip address uit de interface-configuratiemodus. 1. Configureer de interface Ethernet 0 met het IP-adres 172.16.10.2/24. Router(config)#int e0 Router(config-if)#ip address 172.16.10.2 255.255.255.0 Router(config-if)#no shut
Merk op dat u een interface inschakelt door de opdracht no shut. Denk eraan bijvoorbeeld de opdracht show interface e0 te geven om te zien of de interface administratief is afgesloten of niet. Ook de opdracht show running-config toont of de interface is uitgeschakeld of niet.
Studiegids Cisco CCNA
511
2. Als u een tweede subnet-adres aan een interface wilt koppelen gebruikt u de opdracht secondary. Als u zonder eerst de opdracht secondary te tikken nog een IP-adres typt en op Enter drukt, worden het bestaande IP-adres en -masker vervangen. Router(config-if)#ip address 172.16.20.2 255.255.255.0 secondary Router(config-if)#^Z
U kunt controleren of beide adressen op de interface geconfigureerd zijn door de opdracht show running-config te tikken (of verkort: sh run). Router#sh run Building configuration... Current configuration: [output cut] ! interface Ethernet0 ip address 172.16.20.2 255.255.255.0 secondary ip address 172.16.10.2 255.255.255.0 !
Oefening 9: Opdrachten voor de seriële interface Om een seriële interface te configureren, is er een aantal dingen waar u op moet letten. Meestal is de interface verbonden met een apparaat van het type CSU/DSU. Dit apparaat zorgt voor het tijdsignaal (clocking) voor de lijn. Is er echter sprake van een back-to-backconfiguratie in bijvoorbeeld een testomgeving, dan zal een van de beide uiteinden voor het tijdsignaal moeten zorgen. Dit zal het DCE-uiteinde van de kabel zijn. Cisco-routers zijn standaard allemaal DTE-apparaten, dus moet u een interface de opdracht geven voor het tijdsignaal te zorgen als het als DCE-apparaat moet fungeren. 1. U configureert een DCE seriële interface met de opdracht clock rate. Router#config t Enter configuration commands, one per line. End with CNTL/Z. Router(config)#int s0 Router(config-if)#clock rate ? Speed (bits per second) 1200 2400 4800 9600
Appendix A • Inleiding tot het Cisco IOS: Praktijkoefeningen
512 19200 38400 56000 64000 72000 125000 148000 250000 500000 800000 1000000 1300000 2000000 4000000
<300-4000000> Choose clockrate from list above Router(config-if)#clock rate 64000 %Error: This command applies only to DCE interfaces Router(config-if)#int s1 Router(config-if)#clock rate 64000
Er kan niets misgaan wanneer u probeert een tijdsignaal op een interface te zetten. De opdracht clock rate is in bits per seconde. 2. De volgende belangrijke opdracht is de opdracht bandwidth (bandbreedte). Elke Cisco-router is voorzien van een standaard seriële verbindingsbandbreedte (serial link bandwidth) van een T-1, of 1.544Mbps. Dit heeft echter niets te maken met hoe de data via een verbinding worden verzonden. De bandbreedte van een seriële verbinding wordt door route-protocollen zoals IGRP, EIGRP en OSPF gebruikt om de laagste kosten voor een remote netwerk te berekenen. Als u bijvoorbeeld RIP-routeren gebruikt is de instelling van de bandbreedte van een seriële verbinding niet relevant. Router(config-if)#bandwidth ? <1-10000000> Bandwidth in kilobits Router(config-if)#bandwidth 64
In tegenstelling tot de opdracht clock rate, wordt de opdracht bandbreedte in kilobits geconfigureerd.
Oefening 10: Router host-namen instellen U kunt de host-naam van de router instellen met de opdracht hostname. Deze opdracht heeft slechts lokaal invloed en dus geen invloed op hoe de router-namen op het internetwerk zoekt.
Studiegids Cisco CCNA
513
1. Stel de host-naam van uw router in. Router#config t Enter configuration commands, one per line. Router(config)#hostname Todd Todd(config)#
End with CNTL/Z.
U ziet dat de opdracht direct wordt uitgevoerd zodra u op Enter drukt.
Oefening 11: Interface-beschrijvingen instellen Voor de systeembeheerder is het gemakkelijk dat er beschrijvingen op de interface ingesteld kunnen worden. Het heeft, net als de host-naam, geen invloed op andere processen. Dit is dus een handige opdracht omdat hij bijvoorbeeld gebruikt kan worden om circuitnummers te beheren. 1. Verander de beschrijving van de interface Ethernet 0 in Verkoop LAN. Verander ook de beschrijving van de seriële 0-interface in WAN naar Miami met als circuitnummer 6fdda4321. Todd(config)#int e0 Todd(config-if)#description Verkoop Lan Todd(config-if)#int s0 Todd(config-if)#description Wan naar Miami circuit:6fdda4321
2. Door middel van de opdrachten show running-config of show interface kunt u de beschrijving van de interface bekijken. Todd#sh run [uitvoer verwijderd] interface Ethernet0 description Verkoop Lan ip address 172.16.10.30 255.255.255.0 no ip directed-broadcast ! interface Serial0 description Wan naar Miami circuit:6fdda4321 no ip address no ip directed-broadcast no ip mroute-cache Todd#sh int e0 Ethernet0 is up, line protocol is up Hardware is Lance, address is 0010.7be8.25db (bia 0010.7be8.25db)
514
Appendix A • Inleiding tot het Cisco IOS: Praktijkoefeningen Description: Verkoop Lan [uitvoer verwijderd] Todd#sh int s0 Serial0 is up, line protocol is up Hardware is HD64570 Description: Wan naar Miami circuit:6fdda4321 [uitvoer verwijderd] Atlanta#
Oefening 12: Uw configuraties opslaan U kunt het bestand met configuratie-gegevens met de hand vanuit het DRAM in het NVRAM opslaan door de opdracht copy running-config startup-config te gebruiken. Het is ook mogelijk om via de verkorte opdracht copy run start het bestand op te slaan. 1. Sla de configuratie op uw router op. Router#copy run start Destination filename [startup-config]?return Building configuration...
Deze procedure slaat het door u gemaakte bestand op in NVRAM. De volgende keer dat de router start, wordt dit bestand gebruikt. 2. U kunt het bestand bekijken met de opdracht show startup-config. Router#show start
Oefening 13: Uw configuratie controleren Als de configuratie goed lijkt te werken, kunt u uw configuratie controleren met hulpprogramma’s als Ping en Telnet. 1. Ping kunt u met verschillende protocollen gebruiken. Neem de proef op de som door ping ? achter de prompt te typen in de gebruikersmodus of de beheermodus. Router#ping ? WORD Ping destination address or hostname appletalk Appletalk echo decnet DECnet echo ip IP echo ipx Novell/IPX echo srb srb echo
Studiegids Cisco CCNA
515
2. U kunt Telnet gebruiken om de IP-verbindingen te controleren en om toegang te krijgen tot remote routers. Als u achter de router-prompt begint, hoeft u de opdracht telnet niet te gebruiken. Als u gewoon een host-naam of een IPadres intoetst, zal de router aannemen dat u naar telnet wilt gaan. Het volgende voorbeeld laat zien hoe u telnet vanaf een router-prompt gebruikt. Hiervoor hebt u echter wel een geconfigureerd en werkend netwerk voor telnet nodig. Router#telnet ? WORD IP address or hostname of a remote system
3. Een andere manier om uw configuratie te controleren is met behulp van de opdrachten show interface. De eerste opdracht luidt show interface ?. Deze laat alle interfaces zien die geconfigureerd kunnen worden. De enige interfaces die niet logisch zijn, zijn de Ethernet- en de seriële interfaces. Router#sh int Ethernet Null Serial accounting crb irb
? IEEE 802.3 Null interface Serial Show interface accounting Show interface routing/bridging info Show interface routing/bridging info
4. U kunt de opdracht specifieker maken door show interface ethernet 0, of serial 0 te gebruiken. Router#sh int e0 Ethernet0 is up, line protocol is up Hardware is Lance, address is 0010.7b7f.c26c (bia 0010.7b7f.c26c) Internet address is 172.16.10.1/24 MTU 1500 bytes, BW 10000 Kbit, DLY 1000 usec, reliability 255/255, txload 1/255, rxload 1/255 Encapsulation ARPA, loopback not set, keepalive set (10 sec) ARP type: ARPA, ARP Timeout 04:00:00 Last input 00:08:23, output 00:08:20, output hang never Last clearing of “show interface” counters never Queueing strategy: fifo Output queue 0/40, 0 drops; input queue 0/75, 0 drops 5 minute input rate 0 bits/sec, 0 packets/sec 5 minute output rate 0 bits/sec, 0 packets/sec 25 packets input, 2459 bytes, 0 no buffer Received 25 broadcasts, 0 runts, 0 giants, 0 throttles 0 input errors, 0 CRC, 0 frame, 0 overrun, 0 ignored, 0 abort 0 input packets with dribble condition detected 33 packets output, 7056 bytes, 0 underruns
Appendix A • Inleiding tot het Cisco IOS: Praktijkoefeningen
516 0 0 0 0
output errors, 0 collisions, 1 interface resets babbles, 0 late collision, 0 deferred lost carrier, 0 no carrier output buffer failures, 0 output buffers swapped out
Oefening 14: Samenvatting In deze laatste oefening logt u in op beide routers en configureert u de routers door alle opdrachten te gebruiken die in de voorgaande lessen zijn besproken. 1. Maak verbinding met de 2501A-router en log in. Stel de host-naam en de wachtwoorden in. Router#config t Router(config)#hostname 2501A 2501A(config)#enable secret todd 2501A(config)#enable password bill 2501A(config)#line console 0 2501A(config-line)#login 2501A(config-line)#password todd 2501A(config-line)#line aux 0 2501A(config-line)#login 2501A(config-line)#password todd 2501A(config-line)#line vty 0 4 2501A(config-line)#login 2501A(config-line)#password todd 2501A(config-line)#
2. Stel op de 2501A-router het IP-adres 172.16.10.1/24 in op de interface Ethernet 0 interface en 172.16.20.1/24 op de seriële 0 interface. Stel het tijdsignaal in op 64000 op serieel 0. 2501A(config-line)#interface serial 0 2501A(config-if)#ip address 172.16.20.1 255.255.255.0 2501A(config-if)#clock rate 64000 2501A(config-if)#no shut 2501A(config-if)#interface ethernet 0 2501A(config-if)#ip address 172.16.10.1 255.255.255.0 2501A(config-if)#no shut 2501A(config-if)#
3. Stel de interface-beschrijvingen en de router-banner in. 2501A(config-if)#description Ethernet LAN on 2501A 2501A(config-if)#interface serial 0 2501A(config-if)#description WAN to 2501B 2501A(config-if)#banner motd #
Studiegids Cisco CCNA This is the 2501A router # 2501A(config-if)#
4. Sla de configuratie op. 2501A(config-if)#^z 2501A#copy running-config startup-config 2501A#
5. Maak verbinding met de 2501B-router en log in. Stel de host-naam en de wachtwoorden in. Router#config t Router(config)#hostname 2501B 2501B(config)#enable secret todd 2501B(config)#enable password bill 2501B(config)#line console 0 2501B(config-line)#login 2501B(config-line)#password todd 2501B(config-line)#line aux 0 2501B(config-line)#login 2501B(config-line)#password todd 2501B(config-line)#line vty 0 4 2501B(config-line)#login 2501B(config-line)#password todd 2501B(config-line)#
6. Stel op de 2501B-router het IP-adres 172.16.30.1/24 in op de interface Ethernet 0 en 172.16.20.2/24 op de seriële 0 interface. 2501B(config-line)#interface serial 0 2501B(config-if)#ip address 172.16.20.2 255.255.255.0 2501B(config-if)#no shut 2501B(config-if)#interface ethernet 0 2501B(config-if)#ip address 172.16.30.1 255.255.255.0 2501B(config-if)#no shut 2501B(config-if)#
7. Stel de interface-beschrijvingen en de router-banner in. 2501B(config-if)#description Ethernet LAN on 2501B 2501B(config-if)#interface serial 0 2501B(config-if)#description WAN to 2501A 2501B(config-if)#banner motd # This is the 2501B router # 2501B(config-if)#
517
518
Appendix A • Inleiding tot het Cisco IOS: Praktijkoefeningen
8. Sla de configuratie op. 2501B(config-if)#^z 2501B#copy running-config startup-config 2501B#
9. Zet RIP-routeren op elke router aan met behulp van de volgende opdrachten: 2501A#config t 2501A(config)#router rip 2501A(config-router)#network 172.16.0.0 2501A(config-router)#^z 2501A# 2501B#config t 2501B(config)#router rip 2501B(config-router)#network 172.16.0.0 2501B(config-router)#^z 2501B#
10. Geef vanaf de 2501A-router de opdracht show ip route om de route-tabel op te vragen. Alle drie netwerken moeten in deze tabel te zien zijn. 11. Ping via de console van de 2501A-router naar 172.16.30.1 om te controleren of de routers met elkaar communiceren.