Netwerkprotocollen familie tcp ip. Netwerkprotocollen UDP, TCP, ICMP. Wat is een IP-adres

College 3. TCP / IP-stack. Basisprotocollen TCP / IP

TCP/IP is het onderliggende transportnetwerkprotocol. De term "TCP / IP" verwijst meestal naar alles wat te maken heeft met de TCP- en IP-protocollen. Het omvat de hele protocolfamilie, toepassingsprogramma's en zelfs het netwerk zelf. De familie omvat: UDP-protocollen, ARP, ICMP, TELNET, FTP en vele anderen.

De architectuur van de TCP / IP-protocollen is ontworpen voor een onderling verbonden netwerk dat bestaat uit afzonderlijke heterogene pakketsubnetten die met elkaar zijn verbonden door gateways, waarop verschillende machines zijn aangesloten. Elk van de subnetten werkt volgens zijn eigen specifieke vereisten en heeft zijn eigen karakter van communicatiemiddelen. Er wordt echter aangenomen dat elk subnet een informatiepakket (data met een bijbehorende netwerkheader) kan ontvangen en afleveren op een gespecificeerd adres op dat specifieke subnet. Het subnet is niet vereist om verplichte pakketbezorging te garanderen en om een ​​betrouwbaar end-to-end-protocol te hebben. Twee machines die op hetzelfde subnet zijn aangesloten, kunnen dus pakketten uitwisselen.

De TCP/IP-protocolstack heeft vier lagen (Figuur 3.1).

Afbeelding 3.1 - TCP / IP-stack

Laag IV komt overeen met de netwerktoegangslaag, die werkt op basis van standaard fysieke en link laag zoals Ethernet, Token Ring, SLIP, PPP en andere. De protocollen van deze laag zijn verantwoordelijk voor: pakketoverdracht gegevens op het netwerk op hardwareniveau.

Niveau III biedt: interworking bij het verzenden van datapakketten van het ene subnet naar het andere. In dit geval werkt het IP-protocol.

Laag II is eenvoudig en werkt via het TCP-transmissiecontroleprotocol. Dit protocol is vereist voor de betrouwbare overdracht van berichten tussen gehoste on verschillende auto's toepassingsprogramma's door de vorming van virtuele verbindingen tussen hen.

Niveau I - toegepast. De TCP/IP-stack bestaat al heel lang en bevat een groot aantal applicatielaagprotocollen en -services (transmissieprotocol FTP-bestanden, het Telnet-protocol, het Gopher-protocol voor toegang tot de bronnen van de wereldwijde GopherSpace, de meest bekende HTTP-protocol om toegang te krijgen tot externe hypertext-databases in World Wide Web en etc.).

Alle stapelprotocollen kunnen in twee groepen worden verdeeld: protocollen voor gegevensoverdracht die lading tussen twee partijen overdragen; serviceprotocollen vereist voor: correct werk netwerken.

Serviceprotocollen gebruiken noodzakelijkerwijs een soort protocol voor gegevensoverdracht. Het serviceprotocol ICMP maakt bijvoorbeeld gebruik van het IP-protocol. Het internet is een verzameling van alle aangesloten computernetwerken die gebruikmaken van de protocollen van de TCP/IP-stack.

Functies van transportlagen. TCP, UDP-protocollen.

Het vierde niveau van het model is ontworpen om gegevens te leveren zonder fouten, verliezen en duplicatie in de volgorde waarin ze werden verzonden. In dit geval maakt het niet uit welke gegevens worden verzonden, van waar en waar, dat wil zeggen, het zorgt voor het transmissiemechanisme zelf. De transportlaag biedt de volgende soorten services:

- tot stand brengen van een vervoersverbinding;

- data overdracht;

- loskoppelen van de vervoersverbinding.

Functies uitgevoerd door de transportlaag:

- transformatie van het transportadres naar een netwerkadres;

- multiplexen van vervoersverbindingen naar netwerkverbindingen;

- tot stand brengen en verbreken van vervoersverbindingen;

- ordenen van datablokken door individuele verbindingen;

- opsporing van fouten en de nodige controle op de kwaliteit van de dienstverlening;

- herstel van een fout;

- segmentatie, samenvoeging en aaneenschakeling;

- datastroombesturing voor individuele verbindingen;

- toezichthoudende functies;

- verzending van dringende transportgegevensblokken.

TCP biedt een betrouwbare verbindingsgerichte pakketbezorgservice.

TCP-protocol:

- garandeert levering van IP-datagrammen;

- Voert segmentatie en hermontage uit van grote blokken gegevens die door programma's worden verzonden;

- zorgt voor aanlevering van datasegmenten in de gewenste volgorde;

- controleert de integriteit van de verzonden gegevens met behulp van een controlesom;

- stuurt positieve bevestigingen als de gegevens met succes zijn ontvangen. Met selectieve bevestigingen kunt u ook negatieve bevestigingen sturen voor gegevens die niet zijn ontvangen;

- biedt het voorkeurstransport voor programma's die betrouwbare op sessies gebaseerde gegevensoverdracht vereisen, zoals client-serverdatabases en e-mailprogramma's.

TCP is gebaseerd op point-to-point-communicatie tussen twee knooppunten op een netwerk. TCP ontvangt gegevens van programma's en behandelt deze als een stroom van bytes. Bytes zijn gegroepeerd in segmenten, die door TCP volgnummers krijgen toegewezen om de segmenten op de bestemmingsknoop correct weer samen te stellen.

Om twee TCP-knooppunten te laten communiceren, moeten ze eerst een sessie met elkaar tot stand brengen. Een TCP-sessie wordt gestart via een proces dat een three-way handshake wordt genoemd, dat volgnummers synchroniseert en de besturingsinformatie doorgeeft die nodig is om tot stand te komen. virtuele verbinding tussen knooppunten. Na voltooiing van dit handshake-proces worden pakketten in sequentiële volgorde tussen deze knooppunten verzonden en bevestigd. Een soortgelijk proces wordt door TCP gebruikt voordat een verbinding wordt beëindigd om ervoor te zorgen dat beide knooppunten klaar zijn met het verzenden en ontvangen van gegevens (Figuur 3.2).


Afbeelding 3.2 - Koptekstindeling TCP-segment

De velden van de bronpoort en de bestemmingspoort zijn elk 2 bytes en identificeren het verzendproces naar het ontvangende proces. De velden met volgnummer en bevestigingsnummer (4 bytes lang) nummeren elke verzonden of ontvangen databyte. Geïmplementeerd als niet-ondertekende gehele getallen die doorspoelen wanneer ze bereiken maximale waarde... Elke zijde behoudt zijn eigen opeenvolgende nummering. Het veld voor de koplengte is 4 bits lang en is de lengte van de koptekst van het TCP-segment, gemeten in 32-bits woorden. De lengte van de kop is niet vast en kan variëren afhankelijk van de waarden die zijn ingesteld in het parameterveld. Het reserveveld duurt 6 bits. Het vlaggenveld is 6 bits lang en bevat zes 1-bits vlaggen:

- de vlag URG (Urgent Pointer - Precision Pointer) wordt op 1 gezet als het veld voor urgente gegevensaanwijzer wordt gebruikt;

- de ACK-vlag (Acknowledgement) wordt op 1 gezet als het veld met het bevestigingsnummer gegevens bevat. V anders dit veld wordt genegeerd;



- De PSH (Push)-vlag betekent dat de ontvangende TCP-stack de applicatie onmiddellijk moet informeren over de ontvangen gegevens en niet moet wachten tot de buffer vol is;

- de RST (Reset)-vlag wordt gebruikt om de verbinding te annuleren: door een applicatiefout, afwijzing van het verkeerde segment, pogingen om een ​​verbinding tot stand te brengen zonder de gevraagde dienst;

- de SYN (Synchronize)-vlag wordt ingesteld bij het starten van een verbinding en synchronisatie serienummer;

- de FIN (Finished) vlag wordt gebruikt om de verbinding te beëindigen. Het geeft aan dat de afzender klaar is met het verzenden van gegevens.

Het veld venstergrootte (lengte 2 bytes) bevat het aantal bytes dat kan worden verzonden na een byte die al is bevestigd. Het checksum-veld (2 bytes lang) dient om de betrouwbaarheid te verbeteren. Het bevat controlesom header, data en pseudo-header. Bij het uitvoeren van berekeningen wordt het controlesomveld op nul gezet en wordt het gegevensveld opgevuld met een nulbyte als de lengte een oneven getal is. Het checksum-algoritme voegt eenvoudig alle 16-bits woorden toe aan extra code en berekent vervolgens het complement voor het volledige bedrag.

UDP, dat een datagramprotocol is, implementeert waar mogelijk service, dat wil zeggen dat het de levering van zijn berichten niet garandeert en daarom op geen enkele manier de onbetrouwbaarheid van het IP-datagramprotocol compenseert. Een UDP-gegevenseenheid wordt een UDP-pakket of gebruikersdatagram genoemd. Elk datagram bevat een afzonderlijk door de gebruiker gedefinieerd bericht. Dit leidt tot een beperking: de lengte van een UDP-datagram mag niet groter zijn dan de lengte van het IP-gegevensveld, dat op zijn beurt wordt beperkt door de grootte van het technologieframe lager niveau... Daarom, als de UDP-buffer overloopt, worden de toepassingsgegevens weggegooid. De UDP-pakketheader, bestaande uit vier 2-byte-velden, bevat de bronpoort, bestemmingspoort, UDP-lengte en checksum-velden (Figuur 3.3).

De velden bronpoort en bestemmingspoort identificeren de verzend- en ontvangstprocessen. Het veld UDP-lengte bevat de lengte UDP-pakket in bytes. Het checksum-veld bevat de checksum van het UDP-pakket, berekend over het gehele UDP-pakket met de toegevoegde pseudo-header.

Afbeelding 3.3 - UDP-pakketkopindeling

Belangrijkste literatuur: 2

aanvullende literatuur: 7

Controlevragen:

1. Welk protocol is TCP/IP in OSI?

2. Waarvoor dient de architectuur van het TCP/IP-protocol?

3. Welke lagen heeft de TCP/IP-stack?

4. Wat zijn de functies van het TCP Transmission Control Protocol?

5. Wat zijn de verschillen tussen TCP en UDP?


TCP / IP-protocollen Basis van werking globaal netwerk internetten. Om preciezer te zijn, TCP / IP is een lijst of stapel protocollen, en in feite een set regels waarmee informatie wordt uitgewisseld (het pakketgeschakelde model is geïmplementeerd).

In dit artikel zullen we de principes van de TCP / IP-protocolstack analyseren en proberen te begrijpen hoe ze werken.

Opmerking: vaak wordt TCP / IP gebruikt om naar een volledig netwerk te verwijzen op basis van deze twee protocollen, TCP en IP.

In het model van een dergelijk netwerk, naast de hoofdprotocollen TCP (transportlaag) en IP (netwerklaagprotocol) bevat protocollen van applicatie- en netwerkniveaus (zie foto). Maar laten we direct teruggaan naar de TCP- en IP-protocollen.

Wat zijn TCP/IP-protocollen?

TCP - overdrachtcontroleprotocol... Transmissiecontroleprotocol. Het dient om een ​​betrouwbare verbinding tussen twee apparaten en betrouwbare gegevensoverdracht te garanderen en tot stand te brengen. In dit geval regelt het TCP-protocol: optimale maat het verzonden datapakket, het uitvoeren van nieuw pakket als de verzending mislukt.

IP - internetprotocol. Het Internet Protocol of Address Protocol is de ruggengraat van de gehele datatransmissiearchitectuur. IP wordt gebruikt om te leveren netwerk pakket gegevens over het juiste adres... In dit geval wordt de informatie opgedeeld in pakketten, die onafhankelijk door het netwerk naar de gewenste bestemming gaan.

Indelingen voor TCP/IP-protocol

IP-protocolformaat

Er zijn twee formaten voor IP-adressen van het IP-protocol.

IPv4-formaat. Het is een 32-bits binair getal. Een handige vorm van notatie van het IP-adres (IPv4) is een invoer in de vorm van vier groepen decimale getallen(van 0 tot 255), gescheiden door punten. Bijvoorbeeld: 193.178.0.1.

IPv6-formaat. Het is een 128-bits binair getal. Meestal zijn IPv6-adressen al geschreven in de vorm van acht groepen. Elke groep heeft vier hexadecimale cijfers gescheiden door dubbele punten. Voorbeeld IPv6-adres 2001: 0db8: 85a3: 08d3: 1319: 8a2e: 0370: 7889.

Hoe TCP/IP-protocollen werken

Als het u uitkomt, kunt u zich voorstellen dat het verzenden van datapakketten op het netwerk hetzelfde is als het verzenden van een brief per post.

Als het onhandig is, stel je dan twee computers voor die via een netwerk zijn verbonden. Bovendien kan het verbindingsnetwerk lokaal of globaal zijn. Er is geen verschil in het principe van gegevensoverdracht. Een computer op een netwerk kan ook worden beschouwd als een host of knooppunt.

IP-protocol

Elke computer op het netwerk heeft zijn eigen unieke adres. Op het wereldwijde internet heeft een computer dit adres, dat een IP-adres (Internet Protocol Address) wordt genoemd.

gelijk aan mail, IP adres dit is het huisnummer. Maar het huisnummer is niet genoeg om de brief te ontvangen.

De informatie die via het netwerk wordt verzonden, wordt niet door de computer als zodanig verzonden, maar door de applicaties die erop zijn geïnstalleerd. Dergelijke toepassingen zijn mailserver, webserver, FTP, enz. Om het pakket met verzonden informatie te identificeren, is elke applicatie gekoppeld aan: specifieke poort... Bijvoorbeeld: een webserver luistert op poort 80, FTP luistert op poort 21, een SMTP-mailserver luistert op poort 25, een POP3-server leest mailboxen op poort 110.

Zo verschijnt in het adrespakket in het TCP / IP-protocol een andere regel in de geadresseerden: poort. Analoog met post - de poort is het appartementnummer van de afzender en de geadresseerde.

Voorbeeld:

Bron adres:

IP-adres: 82.146.47.66

Bestemmingsadres:

IP-adres: 195.34.31.236

Het is de moeite waard om te onthouden: IP-adres + poortnummer - genaamd "socket". In bovenstaand voorbeeld: vanaf socket 82.146.47.66:2049 wordt een pakket naar socket 195.34.31.236:53 gestuurd.

TCP-protocol

TCP is de volgende laag na IP. Dit protocol is bedoeld om de overdracht van informatie en de integriteit ervan te beheersen.

De verzonden informatie wordt bijvoorbeeld opgesplitst in afzonderlijke pakketten. De pakketten worden zelfstandig bij de ontvanger afgeleverd. Tijdens de verzending is een van de pakketten niet verzonden. TCP zorgt voor hertransmissies totdat de ontvanger dit pakket ontvangt.

TCP-transport verbergt zich voor protocollen top niveau(fysiek, kanaal, netwerk IP alle problemen en details van datatransmissie).

Het internet is gebaseerd op een set (stack) van TCP/IP-protocollen. Maar deze termen lijken alleen op het eerste gezicht ingewikkeld. Eigenlijk TCP / IP-protocolstack is een eenvoudige set regels voor de uitwisseling van informatie, en de regels zijn u eigenlijk wel bekend, hoewel u er waarschijnlijk niets vanaf weet. Ja, dit is precies hoe het is, in wezen zijn de principes die ten grondslag liggen aan de TCP / IP-protocollen niets nieuws: alles wat nieuw is, is een goed vergeten oud.

Een persoon kan op twee manieren leren:

  1. Door botte formele proppen van stereotiepe oplossingen typische taken(die nu meestal op school wordt onderwezen). Een dergelijke training is niet effectief. Je moest toch de paniek en volledige hulpeloosheid van de accountant observeren bij het veranderen van de versie van kantoorsoftware - bij de minste verandering in de volgorde van muisklikken die nodig zijn om de gebruikelijke acties uit te voeren. Of moest je iemand in een roes zien vallen bij het veranderen van de desktop-interface?
  2. Door de essentie van problemen, verschijnselen, patronen te begrijpen. door begrip principes het bouwen van een bepaald systeem. In dit geval speelt het bezit van encyclopedische kennis geen grote rol - de ontbrekende informatie is gemakkelijk te vinden. Het belangrijkste is om te weten waar je op moet letten. En dit vereist geen formele kennis van het onderwerp, maar een begrip van de essentie.

In dit artikel stel ik voor om de tweede weg te gaan, aangezien het begrijpen van de principes die ten grondslag liggen aan internet u de mogelijkheid geeft om u zelfverzekerd en vrij op internet te voelen - snel opkomende problemen oplossen, problemen correct formuleren en zelfverzekerd communiceren met technische ondersteuning.

Laten we beginnen.

De werkingsprincipes van de internetprotocollen TCP / IP zijn inherent heel eenvoudig en lijken sterk op het werk van onze Sovjet-mail.

Onthoud hoe onze gewone post werkt. Eerst schrijf je een brief op een stuk papier, stop het dan in een envelop, plak het op de achterkant van de envelop, schrijf de adressen van de afzender en de ontvanger en breng het dan naar het dichtstbijzijnde postkantoor. Vervolgens gaat de brief door een keten van postkantoren naar het dichtstbijzijnde postkantoor van de ontvanger, vanwaar het door de tante-postbode wordt afgeleverd op het opgegeven adres van de ontvanger en in zijn brievenbus valt (met het nummer van zijn appartement) of afgeleverd in persoon. Alles, de brief bereikte de ontvanger. Wanneer de ontvanger van de brief u wil antwoorden, zal hij in zijn antwoordbrief de adressen van de ontvanger en de afzender verwisselen, en de brief zal langs dezelfde keten naar u worden verzonden, maar in de tegenovergestelde richting.

Op de envelop van de brief staat zoiets als dit:

Zender adres: Van wie: Ivanov Ivan Ivanovitsj Waar: Ivantejevka, st. Bolsjaja, 8, apt. 25 Adres van de ontvanger: Aan wie: Petrov Petr Petrovich Waar: Moskou, Usachevsky Lane, 105, apt. 110

Nu zijn we klaar om de interactie van computers en applicaties op internet (en ook in een lokaal netwerk) te overwegen. Merk op dat de analogie met per gewone post zal bijna compleet zijn.

Elke computer (ook bekend als: node, host) binnen het internet heeft ook een uniek adres, het IP-adres (Internet Protocol Address), bijvoorbeeld: 195.34.32.116. Een IP-adres bestaat uit vier decimale getallen (0 tot 255), gescheiden door punten. Maar alleen het IP-adres van een computer kennen is nog steeds niet genoeg, aangezien uiteindelijk zijn het niet de computers zelf die informatie uitwisselen, maar de applicaties die erop draaien. En op een computer kunnen meerdere applicaties tegelijk draaien (bijvoorbeeld een mailserver, een webserver, etc.). Voor de bezorging van een gewone papieren brief is het niet voldoende om alleen het adres van het huis te weten - u moet ook het appartementnummer weten. Ook heeft elke softwaretoepassing een soortgelijk nummer dat een poortnummer wordt genoemd. Meerderheid server applicaties hebben standaard kamers, Bijvoorbeeld: Postdienst is gebonden aan poort 25 (ze zeggen ook: "luistert" naar de poort, ontvangt er berichten op), de webservice is gebonden aan poort 80, FTP - aan poort 21, enzovoort.

We hebben dus de volgende bijna volledige analogie met onze gebruikelijke: postadres:

"huisadres" = "computer IP" "appartementnummer" = "poortnummer"

In computernetwerken die gebruikmaken van TCP / IP-protocollen, is het analoog van een papieren brief in een envelop: pakket, die de daadwerkelijk verzonden gegevens en adresinformatie bevat - het adres van de afzender en het adres van de ontvanger, bijvoorbeeld:

Bron adres: IP: 82.146.49.55 Poort: 2049 Bestemmingsadres: IP: 195.34.32.116 Poort: 53 Pakketgegevens: ...

Natuurlijk bevatten de pakketten ook service-informatie, maar dit is niet belangrijk voor het begrijpen van de essentie.

Let op de combinatie: "IP-adres en poortnummer" - genaamd "stopcontact".

In ons voorbeeld sturen we een pakket van socket 82.146.49.55:2049 naar socket 195.34.32.116:53, d.w.z. het pakket gaat naar de computer met het IP-adres 195.34.32.116, op poort 53. En poort 53 komt overeen met de naamresolutieserver (DNS-server), die dit pakket zal ontvangen. Als deze server het adres van de afzender kent, kan hij, na verwerking van ons verzoek, een antwoordpakket vormen dat in de tegenovergestelde richting gaat van de socket 82.146.49.55:2049 van de afzender, die voor de DNS-server de socket van de ontvanger zal zijn.

In de regel wordt de interactie uitgevoerd volgens het "client-server" -schema: de "client" vraagt ​​​​wat informatie op (bijvoorbeeld een webpagina), de server ontvangt het verzoek, verwerkt het en verzendt het resultaat. De poortnummers van serverapplicaties zijn bekend, bijvoorbeeld: een SMTP-mailserver "luistert" op poort 25, een POP3-server die mail uit je mailboxen leest "luistert" op poort 110, een webserver op poort 80, enz.

De meeste programma's aan thuis computer zijn klanten - bijvoorbeeld e-mailclient Outlook, IE-webbrowsers, FireFox, enz.

Poortnummers op de client zijn niet vast zoals op de server, maar worden dynamisch toegewezen door het besturingssysteem. Vaste serverpoorten zijn meestal genummerd tot 1024 (maar er zijn uitzonderingen) en clientpoorten zijn meestal genummerd na 1024.

Herhaling is de moeder van leren: IP is het adres van een computer (knooppunt, host) op het netwerk en poort is het nummer van een specifieke applicatie die op deze computer draait.

Het is echter moeilijk voor een persoon om digitale IP-adressen te onthouden - het is veel handiger om met alfabetische namen te werken. Het is immers veel gemakkelijker om een ​​woord te onthouden dan een reeks cijfers. En zo werd het gedaan - elk numeriek IP-adres kan worden gekoppeld aan een alfanumerieke naam. Hierdoor kun je bijvoorbeeld in plaats van 82.146.49.55 naam A gebruiken; de domeinnaamservice - DNS (Domain Name System) - is verantwoordelijk voor het omzetten van de domeinnaam naar een digitaal IP-adres.

Laten we eens nader bekijken hoe het werkt. Uw provider is duidelijk (op een stuk papier, voor) handmatige instelling verbindingen) of impliciet (via automatisch afstemmen verbindingen) geeft u het IP-adres van de nameserver (DNS). Op de computer met dit IP-adres draait een applicatie (nameserver) die alle domeinnamen op internet en de bijbehorende numerieke IP-adressen kent. De DNS-server "luistert" naar poort 53, accepteert verzoeken hiervoor en geeft antwoorden, bijvoorbeeld:

Verzoek van onze computer: "Welk IP-adres komt overeen met de naam www.site?" Serverreactie: "82.146.49.55."

Laten we nu eens kijken wat er gebeurt als je in je browser typt Domeinnaam(URL) van deze site () en door te klikken op , ontvangt u als reactie een pagina van deze site van de webserver.

Bijvoorbeeld:

IP-adres van onze computer: 91.76.65.216 Browser: Internet Explorer(IE), DNS-server (stream): 195.34.32.116 (misschien heb je er nog een), De pagina die we willen openen: www.site.

We zijn aan het typen adresbalk browser domeinnaam en klik op ... Verder besturingssysteem voert ongeveer de volgende acties uit:

Er wordt een verzoek verzonden (meer precies, een pakket met een verzoek) DNS server naar socket 195.34.32.116:53. Zoals hierboven besproken, komt poort 53 overeen met de DNS-server, de toepassing voor naamomzetting. En de DNS-server retourneert, na verwerking van ons verzoek, het IP-adres dat overeenkomt met de ingevoerde naam.

De dialoog is ongeveer als volgt:

Welk IP-adres komt overeen met de naam www.site? - 82.146.49.55 .

Vervolgens maakt onze computer verbinding met de poort 80 computer 82.146.49.55 en stuurt een verzoek (verzoekpakket) om de pagina te ontvangen. De 80ste poort komt overeen met de webserver. Poort 80 wordt in de regel niet in de adresbalk van de browser geschreven. wordt standaard gebruikt, maar kan ook expliciet worden opgegeven na de dubbele punt -.

Nadat het verzoek van ons is geaccepteerd, verwerkt de webserver het en stuurt ons een pagina in verschillende pakketten op HTML-taal- een opmaaktaal voor tekst die de browser begrijpt.

Onze browser, die de pagina heeft ontvangen, geeft deze weer. Als resultaat zien we op het scherm Startpagina van deze website.

Waarom moeten deze principes worden begrepen?

Je hebt bijvoorbeeld gemerkt dat vreemd gedrag mijn computer is onbegrijpelijk netwerkactiviteit, remmen, enz. Wat te doen? Open de console (druk op "Start" - "Run" - typ cmd - "Ok"). Typ in de console de opdracht netstat -an en klik ... Dit hulpprogramma geeft een lijst weer tot stand gebrachte verbindingen tussen de sockets van onze computer en de sockets van externe knooppunten. Als we in de kolom “ Extern adres»De IP-adressen van andere mensen en door een dubbele punt de 25e poort, wat kan dit betekenen? (Vergeet niet dat poort 25 overeenkomt met de mailserver?) Dit betekent dat uw computer een verbinding heeft gemaakt met sommige mail server(servers) en stuurt er enkele brieven door. En als uw e-mailclient (bijvoorbeeld Outlook) op dit moment niet actief is, en als er nog veel van dergelijke verbindingen zijn op poort 25, dan is er waarschijnlijk een virus op uw computer gestart dat namens u spam verzendt of uw creditcardnummers samen met wachtwoorden voor cybercriminelen doorstuurt.

Ook is een begrip van de principes van internet noodzakelijk voor: juiste instelling firewall (met andere woorden, firewall :)). Dit programma (dat vaak wordt geleverd met antivirussoftware) is ontworpen om pakketten te filteren - "vriendelijk" en "vijand". Om je eigen mensen door te laten, niet om anderen binnen te laten. Bijvoorbeeld als uw firewall u vertelt dat iemand verbinding wil maken met een poort op uw computer. Toestaan ​​of weigeren?

En het belangrijkste is dat deze kennis uiterst nuttig is bij het communiceren met technische ondersteuning.

Ten slotte is hier een lijst van de poorten die u waarschijnlijk zult tegenkomen:

135-139 - deze poorten worden door Windows gebruikt om toegang te krijgen tot gedeelde computerbronnen - mappen, printers. Open deze poorten niet naar buiten, d.w.z. op het regionale lokale netwerk en internet. Ze moeten worden afgesloten met een firewall. Ook als u op het lokale netwerk niets ziet in de netwerkomgeving of zij u niet zien, dan is dit waarschijnlijk te wijten aan het feit dat de firewall deze poorten heeft geblokkeerd. Voor het lokale netwerk moeten deze poorten dus open zijn en gesloten voor internet. 21 - poort FTP server. 25 - postpoort SMTP server. Via het, uw e-mailclient verstuurt brieven. IP adres SMTP-server en zijn poort (25e) moet worden gespecificeerd in de instellingen van uw e-mailclient. 110 - poort POP3 server. Hierdoor haalt uw e-mailclient brieven op van uw postbus... Het IP-adres van de POP3-server en zijn poort (110e) moeten ook worden opgegeven in de instellingen van uw e-mailclient. 80 - poort WEB-server. 3128, 8080 - proxyservers (geconfigureerd in de browserinstellingen).

Verschillende speciale IP-adressen:

127.0.0.1 is localhost, het adres van het lokale systeem, d.w.z. lokaal adres jouw computer. 0.0.0.0 - zo worden alle IP-adressen toegewezen. 192.168.xxx.xxx - adressen die willekeurig kunnen worden gebruikt in lokale netwerken, ze worden niet gebruikt op het wereldwijde internet. Ze zijn alleen uniek binnen het lokale netwerk. U kunt adressen uit dit bereik naar eigen inzicht gebruiken voor bijvoorbeeld het bouwen van een thuis- of kantoornetwerk.

Wat zijn subnetmasker en standaardgateway (router, router)?

(Deze parameters worden ingesteld in de netwerkverbindingsinstellingen).

Het is makkelijk. Computers worden gecombineerd tot lokale netwerken... In een lokaal netwerk "zien" computers rechtstreeks alleen elkaar. Lokale netwerken zijn met elkaar verbonden via gateways (routers, routers). Het subnetmasker wordt gebruikt om te bepalen of de ontvangende computer tot hetzelfde lokale netwerk behoort of niet. Als de ontvangende computer tot hetzelfde netwerk behoort als de verzendende computer, dan wordt het pakket er rechtstreeks naar verzonden, anders wordt het pakket naar de standaardgateway gestuurd, die vervolgens, langs de bekende routes, het pakket naar een ander netwerk verzendt, d.w.z naar een ander postkantoor (naar analogie met de Sovjet-post).

Overweeg ten slotte wat de onbegrijpelijke termen betekenen:

TCP / IP is de naam van een set netwerkprotocollen. In feite gaat het verzonden pakket door verschillende lagen. (Zoals op het postkantoor: je schrijft eerst een brief, dan stop je die in een envelop met een adres, dan wordt er een postzegel op geplakt in het postkantoor, enz.).

IK P protocol is een zogenaamd netwerklaagprotocol. De taak van dit niveau is om ip-pakketten af ​​te leveren van de computer van de afzender naar de computer van de ontvanger. Naast de data zelf hebben pakketten van dit niveau het ip-adres van de afzender en het ip-adres van de ontvanger. Poortnummers aan netwerklaag worden niet gebruikt. Welke poort, d.w.z. de toepassing heeft dit pakket geadresseerd, of dit pakket is afgeleverd of verloren is gegaan, op dit niveau is het niet bekend - dit is niet zijn taak, het is de taak van de transportlaag.

TCP en UDP zijn protocollen van de zogenaamde transportlaag. De transportlaag bevindt zich boven de netwerklaag. Op dit niveau worden de zenderpoort en de ontvangerpoort aan het pakket toegevoegd.

TCP is een verbindingsgericht protocol met gegarandeerde pakketbezorging. Eerst worden speciale pakketten uitgewisseld om een ​​verbinding tot stand te brengen, er gebeurt zoiets als een handdruk (-Hi. -Hi. -Laten we praten? -Kom op.). Verder worden er pakketjes heen en weer gestuurd over deze verbinding (er is een gesprek), en met een controle of het pakket de ontvanger heeft bereikt. Als het pakket niet is aangekomen, wordt het opnieuw verzonden ("herhalen, niet gehoord").

UDP is een verbindingsloos protocol met niet-gegarandeerde pakketbezorging. (Zoals: hij riep iets, maar het maakt niet uit of ze je horen of niet).

Boven het transportniveau is toepassingslaag... Op dit niveau kunnen protocollen zoals: http, ftp enz. HTTP en FTP gebruiken bijvoorbeeld het betrouwbare TCP-protocol, terwijl de DNS-server werkt via het onbetrouwbare UDP-protocol.

Hoe kan ik de huidige aansluitingen zien?

Huidige verbindingen kunnen worden bekeken met behulp van de opdracht

Netstat -an

(de parameter n geeft de opdracht om IP-adressen weer te geven in plaats van domeinnamen).

Deze opdracht wordt als volgt uitgevoerd:

"Start" - "Uitvoeren" - we typen cmd - "Ok". In de console die verschijnt ( zwart raam) typ het commando netstat -an en klik op ... Het resultaat is een lijst met tot stand gebrachte verbindingen tussen de sockets van onze computer en externe knooppunten.

We krijgen bijvoorbeeld:

Actieve verbindingen

Naam Lokaal adres Extern adres Staat
TCP 0.0.0.0:135 0.0.0.0:0 LUISTEREN
TCP 91.76.65.216:139 0.0.0.0:0 LUISTEREN
TCP 91.76.65.216:1719 212.58.226.20:80 VASTGESTELD
TCP 91.76.65.216:1720 212.58.226.20:80 VASTGESTELD
TCP 91.76.65.216:1723 212.58.227.138:80 CLOSE_WAIT
TCP 91.76.65.216:1724 212.58.226.8:80 VASTGESTELD
...

In dit voorbeeld betekent 0.0.0.0:135 - dat onze computer luistert (LUISTEREN) naar de 135e poort op al zijn IP-adressen en klaar is om verbindingen van iedereen (0.0.0.0-0) erop te accepteren via het TCP-protocol.

91.76.65.216:139 - onze computer luistert op poort 139 op zijn IP-adres 91.76.65.216.

De derde regel betekent dat er nu een verbinding tot stand is gebracht (GEVESTIGD) tussen onze machine (91.76.65.216:1719) en de externe (212.58.226.20:80). Poort 80 betekent dat onze machine een verzoek heeft gedaan aan de webserver (ik heb echt pagina's geopend in mijn browser).

In de volgende artikelen zullen we bijvoorbeeld bekijken hoe u deze kennis kunt toepassen

  • Systeem administratie ,
  • Communicatiestandaarden
  • Stel dat je slecht vaardig bent netwerktechnologieën en weet het niet eens elementaire fundamenten... Maar je kreeg een taak: zo snel mogelijk een informatienetwerk opbouwen in een kleine onderneming. Je hebt noch de tijd noch de wens om dikke Talmoeds te bestuderen over netwerkontwerp, gebruiksaanwijzingen netwerk uitrusting en duik in netwerk veiligheid... En, belangrijker nog, je hebt in de toekomst geen wens om een ​​professional op dit gebied te worden. Dan is dit artikel iets voor jou.


    Het tweede deel van dit artikel, waar het wordt beschouwd praktisch gebruik de basisprincipes die hier worden beschreven:

    De protocolstack begrijpen

    De taak is om informatie van punt A naar punt B over te brengen. Het kan continu worden verzonden. Maar de taak wordt ingewikkelder als het nodig is om informatie tussen punten A . over te dragen<-->B en A<-->C over hetzelfde fysieke kanaal. Als informatie continu wordt verzonden, zal C, wanneer hij informatie naar A wil verzenden, moeten wachten tot B de verzending beëindigt en het communicatiekanaal vrijgeeft. Dit mechanisme voor informatieoverdracht is erg onhandig en onpraktisch. En om dit probleem op te lossen, werd besloten om de informatie in porties te verdelen.

    Voor de ontvanger moeten deze delen tot één geheel worden samengevoegd om de informatie te ontvangen die van de afzender is gekomen. Maar op de ontvanger A zien we nu delen van informatie van zowel B als C door elkaar gehaald. Dit betekent dat aan elk deel een identificatienummer moet worden toegevoegd zodat de ontvanger A de informatiedelen van B kan onderscheiden van de informatiedelen van C en deze delen in het oorspronkelijke bericht kan verzamelen. Vanzelfsprekend moet de ontvanger weten waar en in welke vorm de afzender identificatiegegevens aan de oorspronkelijke informatie heeft toegekend. En daarvoor moeten ze bepaalde regels ontwikkelen voor het vormen en schrijven van identificatiegegevens. Verder zal het woord "regel" worden vervangen door het woord "protocol".

    Om aan de behoeften van moderne consumenten te voldoen, is het noodzakelijk om verschillende soorten identificatie-informatie tegelijk te specificeren. En het is ook vereist om de verzonden delen van informatie te beschermen tegen zowel willekeurige interferentie (tijdens verzending via communicatielijnen) als tegen opzettelijke sabotage (hacking). Hiervoor wordt een deel van de verzonden informatie aangevuld met een aanzienlijke hoeveelheid speciale, service-informatie.

    Het Ethernet-protocol bevat het nummer netwerkadapter afzender (MAC-adres), bestemmings-NIC-nummer, type gegevens dat moet worden verzonden en rechtstreeks verzonden gegevens. Het stukje informatie dat is samengesteld volgens het Ethernet-protocol wordt een frame genoemd. Er wordt aangenomen dat er geen netwerkadapters zijn met hetzelfde nummer. De netwerkapparatuur haalt de verzonden gegevens uit het frame (hardware of software) en voert verdere verwerking uit.

    In de regel worden de geëxtraheerde gegevens op hun beurt gevormd in overeenstemming met het IP-protocol en hebben ze een ander type identificatie-informatie - het ip-adres van de ontvanger (een 4-byte-nummer), het ip-adres van de afzender en gegevens. En ook een heleboel andere noodzakelijke service-informatie. Gegevens die worden gegenereerd in overeenstemming met het IP-protocol worden pakketten genoemd.

    Vervolgens worden de gegevens uit het pakket gehaald. Maar zelfs deze gegevens zijn in de regel nog geen oorspronkelijk verzonden gegevens. Ook dit stukje informatie wordt volgens een bepaald protocol samengesteld. Meest gebruikt TCP-protocol... Het bevat identificatie-informatie zoals de poort van de afzender (een nummer van twee bytes) en de bronpoort, evenals gegevens en service-informatie. De geëxtraheerde gegevens van TCP zijn in de regel de gegevens die het programma op computer B naar het "ontvangende programma" op computer A heeft gestuurd.

    De complexiteit van de protocollen (in in dit geval TCP over IP over Ethernet) wordt de protocolstack genoemd.

    ARP: Protocol voor adresresolutie

    Er zijn netwerken van klasse A, B, C, D en E. Ze verschillen in het aantal computers en het aantal mogelijke netwerken/subnetten daarin. Voor de eenvoud, en als het meest voorkomende geval, zullen we alleen een klasse C-netwerk beschouwen, waarvan het IP-adres begint met 192.168.1. Het volgende nummer is het subnetnummer, gevolgd door het nummer van de netwerkapparatuur. Een computer met een IP-adres van 192.168.30.110 wil bijvoorbeeld informatie verzenden naar een andere computer met nummer 3, die zich in hetzelfde logische subnet bevindt. Dit betekent dat het ip-adres van de ontvanger zal zijn: 192.168.30.3

    Het is belangrijk om te begrijpen dat het knooppunt informatie netwerk is een computer verbonden door een? fysiek kanaal met schakelapparatuur. Die. als we "naar believen" gegevens van de netwerkadapter verzenden, dan hebben ze één manier - ze komen uit het andere uiteinde van het getwiste paar. We kunnen absoluut alle gegevens verzenden die zijn gevormd volgens een regel die we hebben uitgevonden, zonder een ip-adres op te geven, noch Mac adres en geen andere attributen. En als dit andere uiteinde is aangesloten op een andere computer, kunnen we ze daarheen brengen en interpreteren zoals we willen. Maar als dit andere uiteinde is aangesloten op de switch, dan moet in dit geval het informatiepakket worden gevormd volgens strikt gedefinieerde regels, alsof het de switch instructies geeft over wat hij vervolgens met dit pakket moet doen. Als het pakket correct is gevormd, stuurt de switch het verder, naar een andere computer, zoals aangegeven in het pakket. Dan zal de switch dit pakket uit zijn werkgeheugen... Maar als het pakket niet correct is gevormd, d.w.z. de instructies erin waren onjuist, dan "sterft" het pakket, d.w.z. de switch zal het nergens heen sturen, maar zal het onmiddellijk uit zijn RAM verwijderen.

    Om informatie naar een andere computer over te dragen, moeten drie identificatiewaarden worden opgegeven in het verzonden informatiepakket - mac-adres, ip-adres en poort. Relatief gezien is een poort een nummer dat het besturingssysteem geeft aan elk programma dat gegevens naar het netwerk wil sturen. Het ip-adres van de ontvanger wordt ingevoerd door de gebruiker, of het programma ontvangt het zelf, afhankelijk van de specifieke kenmerken van het programma. Het mac-adres blijft onbekend, d.w.z. het netwerkadapternummer van de computer van de ontvanger. Om de benodigde gegevens te verkrijgen, wordt een "broadcast"-verzoek verzonden, samengesteld volgens het zogenaamde "resolutieprotocol" ARP-adressen". Hieronder ziet u de structuur van een ARP-pakket.

    Nu hoeven we niet de waarden van alle velden in de bovenstaande afbeelding te weten. Laten we alleen bij de belangrijkste stilstaan.

    De velden bevatten het ip-adres van de bron en het ip-adres van de bestemming, evenals het mac-adres van de bron.

    Het veld Ethernet Destination Address is gevuld met enen (ff: ff: ff: ff: ff: ff). Zo'n adres wordt een broadcastadres genoemd en zo'n buderframe wordt naar alle "interfaces op de kabel" gestuurd, d.w.z. alle computers die op de switch zijn aangesloten.

    De switch, die zo'n broadcastframe heeft ontvangen, stuurt het naar alle computers op het netwerk, alsof hij iedereen aanspreekt met de vraag: "Als je de eigenaar bent van dit ip-adres (bestemmings-ip-adres), vertel me dan alsjeblieft je mac-adres. " Wanneer een andere computer zo'n ARP-verzoek ontvangt, vergelijkt deze het IP-adres van de bestemming met dat van hemzelf. En als het overeenkomt, dan voegt de computer, in plaats van de eenheden, zijn mac-adres in, verwisselt het ip- en mac-adres van de bron en bestemming, verandert wat service-informatie en stuurt het pakket terug naar de switch, en dat terug naar de originele computer, de initiator van het ARP-verzoek.

    Zo leert uw computer het mac-adres van een andere computer waarnaar u gegevens wilt verzenden. Als er meerdere computers op het netwerk zijn die reageren op dit ARP-verzoek, dan krijgen we een "ip-adresconflict". In dit geval is het noodzakelijk om het ip-adres op de computers te wijzigen, zodat het netwerk niet dezelfde ip-adressen heeft.

    Netwerken bouwen

    De taak van het bouwen van netwerken

    In de praktijk is het in de regel vereist om een ​​netwerk te bouwen waarvan het aantal computers minstens honderd zal zijn. En afgezien van functies voor het delen van bestanden, moet ons netwerk veilig en gemakkelijk te beheren zijn. Bij het bouwen van een netwerk kunnen dus drie eisen worden onderscheiden:
    1. Beheersgemak. Als accountant Lida wordt overgeplaatst naar een ander kantoor, heeft ze toch toegang nodig tot de computers van accountants Anna en Yulia. En met de verkeerde opbouw van zijn informatienetwerk kan de beheerder het moeilijk krijgen om Lida toegang te geven tot de computers van andere accountants in haar nieuwe huis.
    2. Veiligheid. Om de veiligheid van ons netwerk te garanderen, zijn toegangsrechten tot: informatiebronnen moet worden afgebakend. Ook moet het netwerk worden beschermd tegen bedreigingen van openbaarmaking, integriteit en denial of service. Lees meer in het boek "Attack on the Internet" van auteur Ilya Davidovich Medvedovsky, hoofdstuk "Basic concepts of computer security".
    3. Netwerk snelheid. Bij het bouwen van netwerken is er een technisch probleem: de afhankelijkheid van de transmissiesnelheid van het aantal computers in het netwerk. Hoe meer computers, hoe lager de snelheid. Met een groot aantal computers kunnen de netwerkprestaties zo traag worden dat het onaanvaardbaar wordt voor de klant.
    Wat zorgt ervoor dat de netwerksnelheid vertraagt ​​bij een groot aantal computers? - de reden is simpel: vanwege een groot aantal uitgezonden berichten (AL). AL is een bericht dat, wanneer het bij de switch aankomt, naar alle hosts op het netwerk wordt verzonden. Of, grofweg, alle computers op je subnet. Als er 5 computers in het netwerk zijn, ontvangt elke computer 4 AL. Als er 200 van zijn, dan is elke computer in zo'n groot netwerk ontvangt 199 AL.

    Er zijn veel toepassingen beschikbaar, softwaremodules en diensten die voor hun werk broadcastberichten naar het netwerk sturen. Beschreven in de ARP-clausule: het adresbepalingsprotocol is slechts een van de vele AL's die door uw computer naar het netwerk worden verzonden. Als u bijvoorbeeld naar " netwerk"(Windows OS), uw computer verzendt nog een aantal AL's van speciale informatie, gevormd met behulp van het NetBios-protocol, om het netwerk te scannen op computers in hetzelfde werkgroep... Vervolgens tekent het besturingssysteem de gevonden computers in het venster Netwerkomgeving en kunt u ze zien.

    Het is ook vermeldenswaard dat uw computer tijdens het scanproces met een of ander programma niet één enkel uitgezonden bericht verzendt, maar meerdere, bijvoorbeeld om te installeren met externe computers virtuele sessies of voor andere systeembehoeften veroorzaakt door problemen met de software-implementatie van deze applicatie. Dus elke computer in het netwerk om te communiceren met andere computers wordt gedwongen om veel verschillende AL te verzenden, waardoor het communicatiekanaal onnodig wordt belast eindgebruiker informatie. Zoals de praktijk laat zien, is in grote netwerken Broadcast-berichten kunnen een aanzienlijk deel van het verkeer uitmaken, waardoor de zichtbare netwerkprestaties van de gebruiker afnemen.

    Virtuele lokale netwerken

    Om het eerste en derde probleem op te lossen, evenals om het tweede probleem op te lossen, wordt het mechanisme van het opdelen van het lokale netwerk in kleinere netwerken als het ware veel gebruikt, gescheiden lokale netwerken (Virtual Local Network). Gebiedsnetwerk). Een VLAN is grofweg een lijst met poorten op een switch die tot hetzelfde netwerk behoren. "One" in de zin dat het andere VLAN een lijst met poorten zal bevatten die bij een ander netwerk horen.

    In feite is het creëren van twee VLAN's op één switch gelijk aan het kopen van twee switches, d.w.z. het maken van twee VLAN's is als het splitsen van een switch in twee. Zo is een netwerk van honderd computers verdeeld in kleinere netwerken, van 5-20 computers - in de regel komt dit aantal overeen met de fysieke locatie van computers voor de noodzaak van het delen van bestanden.

    • Door het netwerk op te splitsen in VLAN's wordt beheergemak bereikt. Dus wanneer de accountant Lida naar een ander kantoor verhuist, hoeft de beheerder alleen de poort van het ene VLAN te verwijderen en aan het andere toe te voegen. Dit wordt in meer detail besproken in de paragraaf VLAN's, theorie.
    • VLAN's helpen bij het oplossen van een van de vereisten voor netwerkbeveiliging, namelijk afbakening netwerkbronnen... Zo kan een leerling uit het ene klaslokaal niet binnendringen in de computers van een ander klaslokaal of de computer van de rector, omdat ze zitten eigenlijk op verschillende netwerken.
    • Omdat ons netwerk is opgesplitst in VLAN's, d.w.z. op kleine "achtige netwerken" verdwijnt het probleem met broadcastberichten.

    VLAN's, theorie

    Misschien is de zin "voor een beheerder is het voldoende om een ​​poort van het ene VLAN te verwijderen en aan het andere toe te voegen" onbegrijpelijk, dus ik zal het in meer detail uitleggen. De poort is in dit geval geen nummer dat door het besturingssysteem aan de toepassing wordt gegeven, zoals beschreven in de sectie Protocolstack, maar een socket (plaats) waar u een RJ-45-connector kunt aansluiten (invoegen). Zo'n connector (dwz een kabelschoentje) wordt bevestigd aan beide uiteinden van een 8-aderige draad die een getwist paar wordt genoemd. De afbeelding toont een schakelaar Cisco-katalysator 2950C-24 voor 24 poorten:
    Zoals vermeld in de ARP-clausule: protocol voor adresbepaling, is elke computer via één fysiek kanaal op het netwerk aangesloten. Die. een 24-poorts switch kan 24 computers aansluiten. Een twisted pair doordringt fysiek alle gebouwen van de onderneming - alle 24 draden van deze switch lopen naar verschillende kantoren. Stel dat er bijvoorbeeld 17 draden gaan en verbonden zijn met 17 computers in de klas, 4 draden gaan naar het kantoor van de speciale afdeling en de overige 3 draden gaan naar de nieuw gerepareerde, nieuw kabinet boekhoudafdeling. En de accountant Lida werd vanwege bijzondere verdiensten naar dit kantoor overgeplaatst.

    Zoals hierboven vermeld, kunnen VLAN's worden weergegeven als een lijst netwerkeigendom poorten. Onze switch had bijvoorbeeld drie VLAN's, d.w.z. drie lijsten opgeslagen in het flashgeheugen van de schakelaar. In de ene lijst stonden de nummers 1, 2, 3 ... 17, in de andere 18, 19, 20, 21 en in de derde 22, 23 en 24. De computer van Lidin was voorheen aangesloten op de 20e poort. En dus verhuisde ze naar een ander kantoor. Haar gesleept oude computer naar een nieuw kantoor, of ze zat op nieuwe computer- geen verschil. Het belangrijkste is dat haar computer was aangesloten met een twisted pair-kabel, waarvan het andere uiteinde in poort 23 van onze switch wordt gestoken. En zodat ze vanaf haar nieuwe plek nog steeds bestanden naar haar collega's kan sturen, moet de beheerder nummer 20 van de tweede lijst verwijderen en nummer 23 toevoegen. Houd er rekening mee dat één poort tot slechts één VLAN kan behoren, maar we zullen deze regel overtreden aan het einde van deze paragraaf.

    Ik zal ook opmerken dat bij het wijzigen van het VLAN-lidmaatschap van een poort de beheerder de draden in de switch niet hoeft te "porren". Bovendien hoeft hij niet eens op te staan. Omdat de computer van de beheerder is aangesloten op de 22e poort, met behulp waarvan hij de switch op afstand kan bedienen. Natuurlijk dankzij speciale instellingen wat later zal worden besproken, kan alleen een beheerder de switch beheren. Voor informatie over het configureren van VLAN's, zie de VLAN's, Praktijkparagraaf [in het volgende artikel].

    Zoals je waarschijnlijk hebt gemerkt, heb ik in eerste instantie (in de sectie Netwerken bouwen) gezegd dat er minimaal 100 computers in ons netwerk zullen zijn, maar er kunnen slechts 24 computers op de switch worden aangesloten. Natuurlijk zijn er schakelaars met grote hoeveelheid poorten. Maar er zijn nog meer computers in het bedrijfs-/ondernemingsnetwerk. En voor de verbinding is eindeloos een groot aantal computers in een netwerk, schakel switches onderling via de zogenaamde trunk-poort (trunk) met elkaar. Bij het configureren van de switch kan elk van de 24 poorten worden gedefinieerd als een trunkpoort. En er kan een willekeurig aantal trunkpoorten op de switch zijn (maar het is redelijk om er niet meer dan twee te maken). Als een van de poorten is gedefinieerd als trunk, dan vormt de switch alle informatie die erop wordt ontvangen in speciale pakketten, met behulp van het ISL- of 802.1Q-protocol, en stuurt deze pakketten naar de trunkpoort.

    Alle informatie die binnenkwam, ik bedoel, alle informatie die vanuit de andere havens naar hem toe kwam. En het 802.1Q-protocol wordt ingevoegd in de protocolstack tussen Ethernet en het protocol waarmee de gegevens zijn gegenereerd, dat dit frame draagt.

    V dit voorbeeld, zoals je waarschijnlijk hebt gemerkt, zit de beheerder in hetzelfde kantoor met Lida, omdat verdraaide tijd van poorten 22, 23 en 24 leidt naar dezelfde kast. De 24e poort is geconfigureerd als een trunkpoort. En de schakelaar zelf zit in de achterkamer, naast het oude accountantskantoor en met een auditorium met 17 computers.

    Het twisted pair dat van de 24e poort naar het kantoor naar de beheerder gaat, is verbonden met een andere switch, die op zijn beurt is verbonden met de router, wat in de volgende hoofdstukken zal worden besproken. Andere switches die andere 75 computers aansluiten en zich in andere achterkamers van de onderneming bevinden - ze hebben in de regel allemaal één trunkpoort die via twisted pair of glasvezel is verbonden met de hoofdswitch, die zich op kantoor bij de beheerder bevindt.

    Hierboven werd al gezegd dat het soms verstandig is om twee trunkpoorten te maken. De tweede trunkpoort wordt vervolgens gebruikt om het netwerkverkeer te analyseren.

    Dit is ongeveer hoe grote bedrijfsnetwerken eruit zagen in de dagen van de Cisco Catalyst 1900-switch. Je hebt waarschijnlijk twee grote nadelen van dergelijke netwerken opgemerkt. Ten eerste veroorzaakt het gebruik van een trunk-poort enkele problemen en creëert extra werk bij het configureren van apparatuur. En ten tweede, en vooral, stel dat ons 'soort netwerken' van accountants, economen en dispatchers één database voor drie willen hebben. Ze willen dat dezelfde accountant de wijzigingen in de database kan zien die de econoom of dispatcher een paar minuten geleden heeft aangebracht. Om dit te doen, moeten we een server maken die beschikbaar is voor alle drie de netwerken.

    Zoals vermeld in het midden van deze paragraaf, kan een poort zich maar in één VLAN bevinden. En dit geldt echter alleen voor switches van de Cisco Catalyst 1900-serie en ouder en voor sommige jongere modellen, zoals de Cisco Catalyst 2950. Voor andere switches, met name de Cisco Catalyst 2900XL, kan deze regel worden overtreden. Bij het configureren van poorten in dergelijke switches, kan elke poort vijf werkingsmodi hebben: Static Access, Multi-VLAN, Dynamic Access, ISL Trunk en 802.1Q Trunk. De tweede manier van werken is precies wat we nodig hebben voor de bovenstaande taak - om toegang te geven tot de server vanuit drie netwerken tegelijk, d.w.z. laat de server tegelijkertijd tot drie netwerken behoren. Dit wordt ook wel het oversteken of taggen van VLAN's genoemd. In dit geval kan het aansluitschema als volgt zijn.

    Laten we aannemen dat u niet vloeiend bent in netwerktechnologieën en niet eens de basiskennis kent. Maar je kreeg een taak: zo snel mogelijk een informatienetwerk opbouwen in een kleine onderneming. Je hebt geen tijd of zin om dikke Talmoeds te bestuderen over netwerkontwerp, instructies voor het gebruik van netwerkapparatuur en je te verdiepen in netwerkbeveiliging. En, belangrijker nog, je hebt in de toekomst geen wens om een ​​professional op dit gebied te worden. Dan is dit artikel iets voor jou.


    Het tweede deel van dit artikel behandelt de praktische toepassing van de basisprincipes die hier worden beschreven: Notes on Cisco Catalyst: VLAN Configuration, Password Reset, IOS Flashing

    De protocolstack begrijpen

    De taak is om informatie van punt A naar punt B over te brengen. Het kan continu worden verzonden. Maar de taak wordt ingewikkelder als het nodig is om informatie tussen punten A . over te dragen<-->B en A<-->C over hetzelfde fysieke kanaal. Als informatie continu wordt verzonden, zal C, wanneer hij informatie naar A wil verzenden, moeten wachten tot B de verzending beëindigt en het communicatiekanaal vrijgeeft. Dit mechanisme voor informatieoverdracht is erg onhandig en onpraktisch. En om dit probleem op te lossen, werd besloten om de informatie in porties te verdelen.

    Voor de ontvanger moeten deze delen tot één geheel worden samengevoegd om de informatie te ontvangen die van de afzender is gekomen. Maar op de ontvanger A zien we nu delen van informatie van zowel B als C door elkaar gehaald. Dit betekent dat aan elk deel een identificatienummer moet worden toegevoegd zodat de ontvanger A de informatiedelen van B kan onderscheiden van de informatiedelen van C en deze delen in het oorspronkelijke bericht kan verzamelen. Vanzelfsprekend moet de ontvanger weten waar en in welke vorm de afzender identificatiegegevens aan de oorspronkelijke informatie heeft toegekend. En daarvoor moeten ze bepaalde regels ontwikkelen voor het vormen en schrijven van identificatiegegevens. Verder zal het woord "regel" worden vervangen door het woord "protocol".

    Om aan de behoeften van moderne consumenten te voldoen, is het noodzakelijk om verschillende soorten identificatie-informatie tegelijk te specificeren. En het is ook vereist om de verzonden delen van informatie te beschermen tegen zowel willekeurige interferentie (tijdens verzending via communicatielijnen) als tegen opzettelijke sabotage (hacking). Hiervoor wordt een deel van de verzonden informatie aangevuld met een aanzienlijke hoeveelheid speciale, service-informatie.

    Het Ethernet-protocol bevat het NIC-nummer van de afzender (MAC-adres), het NIC-nummer van de ontvanger, het type gegevens dat wordt verzonden en de rechtstreeks verzonden gegevens. Het stukje informatie dat is samengesteld volgens het Ethernet-protocol wordt een frame genoemd. Er wordt aangenomen dat er geen netwerkadapters zijn met hetzelfde nummer. De netwerkapparatuur haalt de verzonden gegevens uit het frame (hardware of software) en voert verdere verwerking uit.

    In de regel worden de geëxtraheerde gegevens op hun beurt gevormd in overeenstemming met het IP-protocol en hebben ze een ander type identificatie-informatie - het ip-adres van de ontvanger (een 4-byte-nummer), het ip-adres van de afzender en gegevens. En ook een heleboel andere noodzakelijke service-informatie. Gegevens die worden gegenereerd in overeenstemming met het IP-protocol worden pakketten genoemd.

    Vervolgens worden de gegevens uit het pakket gehaald. Maar zelfs deze gegevens zijn in de regel nog geen oorspronkelijk verzonden gegevens. Ook dit stukje informatie wordt volgens een bepaald protocol samengesteld. Het meest gebruikte protocol is TCP. Het bevat identificatie-informatie zoals de poort van de afzender (een nummer van twee bytes) en de bronpoort, evenals gegevens en service-informatie. De geëxtraheerde gegevens van TCP zijn in de regel de gegevens die het programma op computer B naar het "ontvangende programma" op computer A heeft gestuurd.

    De complexiteit van de protocollen (in dit geval TCP over IP over Ethernet) wordt de protocolstack genoemd.

    ARP: Protocol voor adresresolutie

    Er zijn netwerken van klasse A, B, C, D en E. Ze verschillen in het aantal computers en het aantal mogelijke netwerken/subnetten daarin. Voor de eenvoud, en als het meest voorkomende geval, zullen we alleen een klasse C-netwerk beschouwen, waarvan het IP-adres begint met 192.168.1. Het volgende nummer is het subnetnummer, gevolgd door het nummer van de netwerkapparatuur. Een computer met een IP-adres van 192.168.30.110 wil bijvoorbeeld informatie verzenden naar een andere computer met nummer 3, die zich in hetzelfde logische subnet bevindt. Dit betekent dat het ip-adres van de ontvanger zal zijn: 192.168.30.3

    Het is belangrijk om te begrijpen dat een informatienetwerkknooppunt een computer is die is verbonden via één fysiek kanaal met schakelapparatuur. Die. als we "naar believen" gegevens van de netwerkadapter verzenden, dan hebben ze één manier - ze komen uit het andere uiteinde van het getwiste paar. We kunnen absoluut alle gegevens verzenden die zijn gevormd volgens elke regel die we hebben uitgevonden, zonder het ip-adres of het mac-adres of andere attributen op te geven. En als dit andere uiteinde is aangesloten op een andere computer, kunnen we ze daarheen brengen en interpreteren zoals we willen. Maar als dit andere uiteinde is aangesloten op de switch, dan moet in dit geval het informatiepakket worden gevormd volgens strikt gedefinieerde regels, alsof het de switch instructies geeft over wat hij vervolgens met dit pakket moet doen. Als het pakket correct is gevormd, stuurt de switch het verder, naar een andere computer, zoals aangegeven in het pakket. Dan zal de switch dit pakket uit zijn RAM verwijderen. Maar als het pakket niet correct is gevormd, d.w.z. de instructies erin waren onjuist, dan "sterft" het pakket, d.w.z. de switch zal het nergens heen sturen, maar zal het onmiddellijk uit zijn RAM verwijderen.

    Om informatie naar een andere computer over te dragen, moeten drie identificatiewaarden worden opgegeven in het verzonden informatiepakket - mac-adres, ip-adres en poort. Relatief gezien is een poort een nummer dat het besturingssysteem geeft aan elk programma dat gegevens naar het netwerk wil sturen. Het ip-adres van de ontvanger wordt ingevoerd door de gebruiker, of het programma ontvangt het zelf, afhankelijk van de specifieke kenmerken van het programma. Het mac-adres blijft onbekend, d.w.z. het netwerkadapternummer van de computer van de ontvanger. Om de benodigde gegevens te verkrijgen, wordt een "broadcast"-verzoek verzonden, samengesteld volgens het zogenaamde "ARP Address Resolution Protocol". Hieronder ziet u de structuur van een ARP-pakket.

    Nu hoeven we niet de waarden van alle velden in de bovenstaande afbeelding te weten. Laten we alleen bij de belangrijkste stilstaan.

    De velden bevatten het ip-adres van de bron en het ip-adres van de bestemming, evenals het mac-adres van de bron.

    Het veld Ethernet Destination Address is gevuld met enen (ff: ff: ff: ff: ff: ff). Zo'n adres wordt een broadcastadres genoemd en zo'n buderframe wordt naar alle "interfaces op de kabel" gestuurd, d.w.z. alle computers die op de switch zijn aangesloten.

    De switch, die zo'n broadcastframe heeft ontvangen, stuurt het naar alle computers op het netwerk, alsof hij iedereen aanspreekt met de vraag: "Als je de eigenaar bent van dit ip-adres (bestemmings-ip-adres), vertel me dan alsjeblieft je mac-adres. " Wanneer een andere computer zo'n ARP-verzoek ontvangt, vergelijkt deze het IP-adres van de bestemming met dat van hemzelf. En als het overeenkomt, dan voegt de computer, in plaats van de eenheden, zijn mac-adres in, verwisselt het ip- en mac-adres van de bron en bestemming, verandert wat service-informatie en stuurt het pakket terug naar de switch, en dat terug naar de originele computer, de initiator van het ARP-verzoek.

    Zo leert uw computer het mac-adres van een andere computer waarnaar u gegevens wilt verzenden. Als er meerdere computers op het netwerk zijn die reageren op dit ARP-verzoek, dan krijgen we een "ip-adresconflict". In dit geval is het noodzakelijk om het ip-adres op de computers te wijzigen, zodat het netwerk niet dezelfde ip-adressen heeft.

    Netwerken bouwen

    De taak van het bouwen van netwerken

    In de praktijk is het in de regel vereist om een ​​netwerk te bouwen waarvan het aantal computers minstens honderd zal zijn. En afgezien van functies voor het delen van bestanden, moet ons netwerk veilig en gemakkelijk te beheren zijn. Bij het bouwen van een netwerk kunnen dus drie eisen worden onderscheiden:
    1. Beheersgemak. Als accountant Lida wordt overgeplaatst naar een ander kantoor, heeft ze toch toegang nodig tot de computers van accountants Anna en Yulia. En met de verkeerde opbouw van zijn informatienetwerk kan de beheerder het moeilijk krijgen om Lida toegang te geven tot de computers van andere accountants in haar nieuwe huis.
    2. Veiligheid. Om de veiligheid van ons netwerk te waarborgen, moeten de toegangsrechten tot informatiebronnen worden afgebakend. Ook moet het netwerk worden beschermd tegen bedreigingen van openbaarmaking, integriteit en denial of service. Lees meer in het boek "Attack on the Internet" van auteur Ilya Davidovich Medvedovsky, hoofdstuk "Basic concepts of computer security".
    3. Netwerk snelheid. Bij het bouwen van netwerken is er een technisch probleem: de afhankelijkheid van de transmissiesnelheid van het aantal computers in het netwerk. Hoe meer computers, hoe lager de snelheid. Met een groot aantal computers kunnen de netwerkprestaties zo traag worden dat het onaanvaardbaar wordt voor de klant.
    Wat zorgt ervoor dat de netwerksnelheid vertraagt ​​bij een groot aantal computers? - de reden is simpel: vanwege het grote aantal broadcast messages (AL). AL is een bericht dat, wanneer het bij de switch aankomt, naar alle hosts op het netwerk wordt verzonden. Of, grofweg, alle computers op je subnet. Als er 5 computers in het netwerk zijn, ontvangt elke computer 4 AL. Als het er 200 zijn, ontvangt elke computer in zo'n groot netwerk 199 AL.

    Er zijn veel toepassingen, softwaremodules en diensten die voor hun werk broadcastberichten naar het netwerk sturen. Beschreven in de ARP-clausule: het adresbepalingsprotocol is slechts een van de vele AL's die door uw computer naar het netwerk worden verzonden. Als u bijvoorbeeld Network Neighborhood (Windows OS) binnengaat, verzendt uw computer meerdere AL's met speciale informatie die is gegenereerd met behulp van het NetBios-protocol om het netwerk te scannen op computers die zich in dezelfde werkgroep bevinden. Vervolgens tekent het besturingssysteem de gevonden computers in het venster Netwerkomgeving en kunt u ze zien.

    Het is ook vermeldenswaard dat uw computer tijdens het scanproces met een bepaald programma niet één enkel broadcastbericht verzendt, maar meerdere, bijvoorbeeld om virtuele sessies met externe computers tot stand te brengen of voor andere systeembehoeften veroorzaakt door softwareproblemen. implementaties van deze applicatie. Zo wordt elke computer in het netwerk om te communiceren met andere computers gedwongen om veel verschillende AL te verzenden, waardoor het communicatiekanaal wordt geladen met informatie die de eindgebruiker niet nodig heeft. Zoals de praktijk laat zien, kunnen omroepberichten in grote netwerken een aanzienlijk deel van het verkeer uitmaken, waardoor het werk van het netwerk, dat zichtbaar is voor de gebruiker, wordt vertraagd.

    Virtuele lokale netwerken

    Om het eerste en het derde probleem op te lossen, evenals om het tweede probleem op te lossen, wordt het mechanisme van het opdelen van het lokale netwerk in kleinere netwerken als het ware veel gebruikt, afzonderlijke lokale netwerken (Virtual Local Area Network). Een VLAN is grofweg een lijst met poorten op een switch die tot hetzelfde netwerk behoren. "One" in de zin dat het andere VLAN een lijst met poorten zal bevatten die bij een ander netwerk horen.

    In feite is het creëren van twee VLAN's op één switch gelijk aan het kopen van twee switches, d.w.z. het maken van twee VLAN's is als het splitsen van een switch in twee. Zo is een netwerk van honderd computers verdeeld in kleinere netwerken, van 5-20 computers - in de regel komt dit aantal overeen met de fysieke locatie van computers voor de noodzaak van het delen van bestanden.

    • Door het netwerk op te splitsen in VLAN's wordt beheergemak bereikt. Dus wanneer de accountant Lida naar een ander kantoor verhuist, hoeft de beheerder alleen de poort van het ene VLAN te verwijderen en aan het andere toe te voegen. Dit wordt in meer detail besproken in de paragraaf VLAN's, theorie.
    • VLAN's helpen bij het oplossen van een van de vereisten voor netwerkbeveiliging, namelijk de afbakening van netwerkbronnen. Zo kan een leerling uit het ene klaslokaal niet binnendringen in de computers van een ander klaslokaal of de computer van de rector, omdat ze zitten eigenlijk op verschillende netwerken.
    • Omdat ons netwerk is opgesplitst in VLAN's, d.w.z. op kleine "achtige netwerken" verdwijnt het probleem met broadcastberichten.

    VLAN's, theorie

    Misschien is de zin "voor een beheerder is het voldoende om een ​​poort van het ene VLAN te verwijderen en aan het andere toe te voegen" onbegrijpelijk, dus ik zal het in meer detail uitleggen. De poort is in dit geval geen nummer dat door het besturingssysteem aan de toepassing wordt gegeven, zoals beschreven in de sectie Protocolstack, maar een socket (plaats) waar u een RJ-45-connector kunt aansluiten (invoegen). Zo'n connector (dwz een kabelschoentje) wordt bevestigd aan beide uiteinden van een 8-aderige draad die een getwist paar wordt genoemd. De afbeelding toont een Cisco Catalyst 2950C-24 24-poorts switch:
    Zoals vermeld in de ARP-clausule: protocol voor adresbepaling, is elke computer via één fysiek kanaal op het netwerk aangesloten. Die. een 24-poorts switch kan 24 computers aansluiten. Een twisted pair doordringt fysiek alle gebouwen van de onderneming - alle 24 draden van deze switch lopen naar verschillende kantoren. Stel bijvoorbeeld dat 17 draden gaan en verbinding maken met 17 computers in de klas, 4 draden gaan naar het speciale afdelingskantoor en de overige 3 draden gaan naar het onlangs gerenoveerde, nieuwe boekhoudkantoor. En de accountant Lida werd vanwege bijzondere verdiensten naar dit kantoor overgeplaatst.

    Zoals hierboven vermeld, kunnen VLAN's worden weergegeven als een lijst met poorten die tot het netwerk behoren. Onze switch had bijvoorbeeld drie VLAN's, d.w.z. drie lijsten opgeslagen in het flashgeheugen van de schakelaar. In de ene lijst stonden de nummers 1, 2, 3 ... 17, in de andere 18, 19, 20, 21 en in de derde 22, 23 en 24. De computer van Lidin was voorheen aangesloten op de 20e poort. En dus verhuisde ze naar een ander kantoor. Ze sleepten haar oude computer naar een nieuw kantoor, of ze ging aan een nieuwe computer zitten - het maakt niet uit. Het belangrijkste is dat haar computer was aangesloten met een twisted pair-kabel, waarvan het andere uiteinde in poort 23 van onze switch wordt gestoken. En zodat ze vanaf haar nieuwe plek nog steeds bestanden naar haar collega's kan sturen, moet de beheerder nummer 20 van de tweede lijst verwijderen en nummer 23 toevoegen. Houd er rekening mee dat één poort tot slechts één VLAN kan behoren, maar we zullen deze regel overtreden aan het einde van deze paragraaf.

    Ik zal ook opmerken dat bij het wijzigen van het VLAN-lidmaatschap van een poort de beheerder de draden in de switch niet hoeft te "porren". Bovendien hoeft hij niet eens op te staan. Omdat de computer van de beheerder is aangesloten op de 22e poort, met behulp waarvan hij de switch op afstand kan bedienen. Natuurlijk kan vanwege de speciale instellingen, die later worden besproken, alleen de beheerder de switch beheren. Voor informatie over het configureren van VLAN's, zie de VLAN's, Praktijkparagraaf [in het volgende artikel].

    Zoals je waarschijnlijk hebt gemerkt, heb ik in eerste instantie (in de sectie Netwerken bouwen) gezegd dat er minimaal 100 computers in ons netwerk zullen zijn, maar er kunnen slechts 24 computers op de switch worden aangesloten. Natuurlijk zijn er switches met veel poorten. Maar er zijn nog meer computers in het bedrijfs-/ondernemingsnetwerk. En om oneindig veel computers op een netwerk aan te sluiten, worden switches met elkaar verbonden via de zogenaamde trunkpoort. Bij het configureren van de switch kan elk van de 24 poorten worden gedefinieerd als een trunkpoort. En er kan een willekeurig aantal trunkpoorten op de switch zijn (maar het is redelijk om er niet meer dan twee te maken). Als een van de poorten is gedefinieerd als trunk, dan vormt de switch alle informatie die erop wordt ontvangen in speciale pakketten, met behulp van het ISL- of 802.1Q-protocol, en stuurt deze pakketten naar de trunkpoort.

    Alle informatie die binnenkwam, ik bedoel, alle informatie die vanuit de andere havens naar hem toe kwam. En het 802.1Q-protocol wordt ingevoegd in de protocolstack tussen Ethernet en het protocol waarmee de gegevens zijn gegenereerd, dat dit frame draagt.

    In dit voorbeeld, zoals je waarschijnlijk hebt gemerkt, zit de beheerder in hetzelfde kantoor met Lida, omdat: verdraaide tijd van poorten 22, 23 en 24 leidt naar dezelfde kast. De 24e poort is geconfigureerd als een trunkpoort. En de schakelaar zelf zit in de achterkamer, naast het oude accountantskantoor en met een auditorium met 17 computers.

    Het twisted pair dat van de 24e poort naar het kantoor naar de beheerder gaat, is verbonden met een andere switch, die op zijn beurt is verbonden met de router, wat in de volgende hoofdstukken zal worden besproken. Andere switches die andere 75 computers aansluiten en zich in andere achterkamers van de onderneming bevinden - ze hebben in de regel allemaal één trunkpoort die via twisted pair of glasvezel is verbonden met de hoofdswitch, die zich op kantoor bij de beheerder bevindt.

    Hierboven werd al gezegd dat het soms verstandig is om twee trunkpoorten te maken. De tweede trunkpoort wordt vervolgens gebruikt om het netwerkverkeer te analyseren.

    Dit is ongeveer hoe grote bedrijfsnetwerken eruit zagen in de dagen van de Cisco Catalyst 1900-switch. Je hebt waarschijnlijk twee grote nadelen van dergelijke netwerken opgemerkt. Ten eerste veroorzaakt het gebruik van een trunk-poort enkele problemen en zorgt het voor onnodig werk bij het configureren van apparatuur. En ten tweede, en vooral, stel dat ons 'soort netwerken' van accountants, economen en dispatchers één database voor drie willen hebben. Ze willen dat dezelfde accountant de wijzigingen in de database kan zien die de econoom of dispatcher een paar minuten geleden heeft aangebracht. Om dit te doen, moeten we een server maken die beschikbaar is voor alle drie de netwerken.

    Zoals vermeld in het midden van deze paragraaf, kan een poort zich maar in één VLAN bevinden. En dit geldt echter alleen voor switches van de Cisco Catalyst 1900-serie en ouder en voor sommige jongere modellen, zoals de Cisco Catalyst 2950. Voor andere switches, met name de Cisco Catalyst 2900XL, kan deze regel worden overtreden. Bij het configureren van poorten in dergelijke switches, kan elke poort vijf werkingsmodi hebben: Static Access, Multi-VLAN, Dynamic Access, ISL Trunk en 802.1Q Trunk. De tweede manier van werken is precies wat we nodig hebben voor de bovenstaande taak - om toegang te geven tot de server vanuit drie netwerken tegelijk, d.w.z. laat de server tegelijkertijd tot drie netwerken behoren. Dit wordt ook wel het oversteken of taggen van VLAN's genoemd. In dit geval kan het aansluitschema als volgt zijn.