Grunderna i nätverk – del 1
I del 1 av denna artikelserie tittar vi på hur ett vanligt hemmanätverk fungerar. Detta är grunden för alla typer av nätverk. Vi utgår från nedanstående skiss och går igenom del för del, alltifrån hur datorerna får en IP-adress till hur de hittar ut på internet och kan slå upp rätt adress.
IP-adresser och nätmasken
I vårt exempel använder nätverket IP-adresser i 192.168.0.0-nätet. Detta är ett nät som är reserverat för privat bruk, exempelvis hemmanätverk. I detta exemplet utgår vi från att nätverket använder en 24-bitars nätmask, vilket är det vanligaste för detta nät. Nätet brukar då skrivas som 192.168.0.0/24.
En nätmask talar om hur stort nätverket är; vilka adresser som kan nås inom det egna nätverket utan att behöva hoppa via en router.
Den totala längden på en IPv4-adress är 32 bitar. Varje oktett är 8 bitar. Det innebär att varje grupp (NNN.NNN.NNN.NNN) kan vara mellan 0 och 255. Här är vi nere på det binära talsystemet. Låt oss anta att vi har en grupp där alla bitarna är satta, det vill säga 8 styck ettor (11111111).
1 1 1 1 1 1 1 1
128 + 64 + 32 + 16 + 8 + 4 + 2 + 1 = 255
När vi då har en nätmask på 24-bitar innebär detta att 24-bitar är “maskat” till själva nätet, resterande 8 bitar kan användas för adresser (bortsett från adressen 0 och 255).
11111111.11111111.11111111.0
Här har vi 24 ettor, alltså en nätmask på 24 bitar. Detta ger oss en nätmask i decimalform som är:
255.255.255.0
Vi kan således använda hela den sista gruppen för adresser i nätverket.
Alla adresser inom det egna nätverket – i vårt fall 192.168.0.NNN – går att nå direkt, utan att ta omvägen via en router. Om vi hade haft ett andra lokalt nätverk med adressen och nätmasken 192.168.1.0/24 hade vi behövt en router för att komma åt det nätverket.
Det finns två speciella adresser inom nätverket som inte kan användas som adresser för enheter. Dessa är 192.168.0.0 och 192.168.0.255. Den första, 192.168.0.0, avser själva nätverket. Den andra, 192.168.0.255, är en så kallad broadcast-adress. Broadcast-adressen används av vissa protokoll för att nå ett helt nätverk istället för en enskild adress.
Den speciella adressen 127.0.0.1
Alla datorer, routrar och andra nätverksenheter har en loopback-adress som är 127.0.0.1. Denna har värdnamnet localhost. Detta värdnamn och denna adress pekar alltid på den egna datorn. Denna adress förekommer aldrig utanför den egna datorn och finns aldrig på ett nätverk. Det är alltid bara den egna datorn. Vi kan testa att pinga localhost och kommer då få svar från adressen 127.0.0.1 – den egna datorn.
$> ping localhost
PING localhost (127.0.0.1) 56(84) bytes of data.
64 bytes from localhost (127.0.0.1): icmp_seq=1 ttl=64 time=0.027 ms
64 bytes from localhost (127.0.0.1): icmp_seq=2 ttl=64 time=0.070 ms
^C
Den mycket låga svarstiden indikerar också att det är en lokal adress. Om vi istället pingar routern – som i vårt exempel är 192.168.0.1 – får vi en högre svarstid även om routern befinner sig på det lokala nätverket.
$> ping 192.168.0.1
PING 192.168.0.1 (192.168.0.1) 56(84) bytes of data.
64 bytes from 192.168.0.1: icmp_seq=1 ttl=64 time=0.274 ms
64 bytes from 192.168.0.1: icmp_seq=2 ttl=64 time=0.239 ms
^C
Routern och internet
För att datorerna ska kunna komma åt internet via routern måste de veta vilken gateway de ska använda. Detta styrs via något som heter en routingtabell. Varje dator på nätverket har en routingtabell som som talar om vilken gateway (router) som ska användas för att nå utanför det egna nätverket. I vårt exempel kan en sådan routingtabell se ut som nedan:
$> route
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
default 192.168.0.1 0.0.0.0 UG 100 0 0 ens3
192.168.0.0 * 255.255.255.0 U 100 0 0 ens3
I tabellen ser vi att all trafik ska gå vi via routern 192.168.0.1 som standard. Adresser inom det egna nätet 192.168.0.0 behöver ingen router för att nås.
NAT – adressöversättning
Vi har redan nämnt att nätet 192.168.0.0 är avsett för privat bruk. Vad detta innebär är att dessa adresser inte får förekomma på internet. Och det gör de inte heller. När vi surfar in på en webbsida via en av våra datorer på nätverket är det vår publika IP-adress från routern som används. I vårt exempel är detta 203.0.113.5. Detta kallas för NAT, förkortning av Network Address Translation.
Exempelvis om vi surfar in på en webbsida från pc1.mynet som har IP-adress 192.168.0.2 går trafiken först genom routern. Där översätts den lokala adressen till 203.0.113.5 när trafiken går ut på internet. När den begärda sidan skickas tillbaks som svar skickas den till 203.0.113.5. Routern ser då till att trafiken hamnar hos den dator som begärde sidan, i vårt fall 192.168.0.2.
Den lokala adressen för datorn, 192.168.0.2, syns aldrig på internet. Alla datorerna på nätverket är således gömda bakom en enda IP-adress.
Namnuppslagning, DNS
Nu vet vi hur adresserna i det lokala nätverket fungerar och hur datorerna vet att trafiken ska gå via routern 192.168.0.1. Men datorerna behöver även kunna slå upp domännamn till IP-adresser, annars kan vi inte ange adresser som jackbenny.se.
Det är detta en DNS används för. DNS står för Domain Name System och omvandlar en adress, till exempel jackbenny.se, till ett IP-nummer.
De flesta hemmaroutrar har en inbyggd DNS som datorerna på nätverket använder. Den DNS:en måste i sin tur fråga en annan DNS efter informationen – om adressen inte redan finns cachad i routern – oftast hos din internetleverantör. Men det är inte säkert att internetleverantörens DNS har den informationen som behövs. Den ställer i sin tur frågan vidare till en root-DNS. Den hänvisar då till toppdomänens DNS – exempelvis SE – som i sin tur hänvisar till de DNS:er som är ansvariga för det aktuella domännamnet.
Nästa gång som samma fråga ställs finns adressen redan cachad i routerns DNS, inga andra DNS:er behöver då frågas.
DHCP – där alla inställningar kommer från
På något sätt måste datorerna och skrivarna på nätverket få sin adress. De måste också veta vilken gateway och vilken DNS de ska användas. Detta går självklart att ställa in manuellt för varje enhet, men det blir snabbt svårt att administrera alla enheter manuellt. Istället användas oftast DHCP-protokollet för att dela ut IP-adresser, gateway och DNS till datorerna.
DHCP står för Dynamic Host Configuration Protocol. Det är ett protokoll för att dynamiskt konfigurera enheterna på ett nätverk. DHCP-servern finns oftast inbyggt i routern.
När en dator startar som inte har någon IP-konfiguration skickar den ut ett så kallat DHCP discover-meddelande på broadbast-adressen 255.255.255.255. Alla enheter på nätverket får detta meddelandet men det är bara DHCP-servern som tar emot det. DHCP-servern svarar då med ett DHCP offer som innehåller en IP-adress, nätmask och information om DNS och gateway. Alla datorerna på nätverket får DHCP offer-meddelandet, men det är bara den aktuella datorn som accepterar uppgifterna. Uppgifterna accepteras genom att skicka tillbaka ett DHCP request till servern. Övriga datorer på nätverket ignorerar meddelandet. DHCP-servern godkänner och bekräftar att datorn får den aktuella IP-adressen med ett DHCP acknowledgment. Nu är allting färdigkonfigurerat.
Nyhetsbrev
Nyhetsuppdateringar från tidningen direkt till din inkorg, helt kostnadsfritt. Avsluta när du vill.
Kommentarer
Kommentarsfältet är modererat. Det innebär att alla kommentarer granskas av ansvarig utgivare före publicering.
Du väljer själv om du vill ange ditt riktiga namn, en pseudonym eller vara helt anonym. Ingen registrering behövs.
Relaterade artiklar
-
Avlyssna trafik på servern med Wireshark och TShark
Wireshark är ett ovärderligt verktyg för att felsöka nätverkskonfigurationer, applikationer, API:er, demoner och mycket annat. I kombination med
tshark
kan vi dessutom avlyssna trafiken på en server i realtid. -
Fortsatt låga IPv6-siffror i Sverige
Det är fortfarande knappt fem procent av internetanvändarna som har tillgång till IPv6. Det visar Post- och telestyrelsens senaste kartläggning. Samtidigt ökar andelen internetoperatörer som använder adressöversättning.
-
Grunderna i nätverk – del 2
I den här andra delen av serien om grunderna i nätverk ska vi utforska DNS-systemet. Vi kan lära oss mycket om internet och nätverk genom att slå upp information i DNS-servrarna. En DNS innehåller mer information än bara IP-adressen till en domän.
-
Tidssynkronisering med NTP
Senaste nyheterna och inläggen
-
Avlyssna trafik på servern med Wireshark och TShark
Wireshark är ett ovärderligt verktyg för att felsöka nätverkskonfigurationer, applikationer, API:er, demoner och mycket annat. I kombination med
tshark
kan vi dessutom avlyssna trafiken på en server i realtid. -
Mysig stämning på sommarens första demoparty
I helgen var det Reunion 2024 i Kvidinge Folkets hus, sommarens första skånska demoparty. Partyt organiserades av Jesper “Skuggan” Klingvall. På plats fanns ett 30-tal besökare.
-
Sommarens skånska demopartyn
Årets sommar bjuder på två skånska demopartyn. Först ut är Reunion i Kvidinge den 28–30 juni. Därefter är det Pågadata i Örtofta den 9–11 augusti.
-
Riskerna med BankID som ingen pratar om
BankID är ett säkert och smidigt sätt att identifiera sig online. Men i takt med dess ökade popularitet och användning har det blivit en svag länk – en single point of failure – på mer än ett sätt.
-
Polisernas fängelsedomar står fast
Efter tre år är målet mot de två poliser som olovligen tog sig in i en berusad mans bostad i Landskrona och misshandlade honom klart. Högsta domstolen beslutade den sjätte mars att avvisa överklagan. Fängelsedomarna för poliserna står därmed fast.
Utvalda artiklar
-
Mysig stämning på sommarens första demoparty
I helgen var det Reunion 2024 i Kvidinge Folkets hus, sommarens första skånska demoparty. Partyt organiserades av Jesper “Skuggan” Klingvall. På plats fanns ett 30-tal besökare.
-
Datorparty i Landskrona
I helgen höll Syntax Society sitt årliga sommarparty. Platsen var en källarlokal i Landskrona där ett femtontal personer medverkade.
-
Det första Pågadata har ägt rum
I helgen ägde det första Pågadata rum – uppföljaren till Gubbdata. Platsen var Folkets Hus i Kvidinge. Organisatör av partyt var Johan “z-nexx” Osvaldsson med hjälp från Jesper “Skuggan” Klingvall. Partyt hade över 100 anmälda deltagare.
-
Även hovrätten fäller poliserna för att ha satt dit oskyldig
Hovrätten fastställer straffet för de två poliser som förra året dömdes till vardera ett års fängelse av Lunds tingsrätt för att ha misshandlat och satt dit en oskyldig man. De båda poliserna ska även betala skadestånd till mannen.
-
Retroloppis i Påarp
Idag var det retroloppis hos Andreas Nilsson i Påarp. På baksidan av huset fanns hundratals spel uppradade på långa bord. Trots friska vindar och sval temperatur var loppisen välbesökt.
CyberInfo Sverige är ett it- och medieföretag i nordvästra Skåne som tillhandahåller böcker, utbildningar, nyheter och konsulttjänster inom Linux, säkerhet och programmering.
CyberInfo Sverige är godkänd för F-skatt, är momsregistrerat och innehar
utgivningsbevis för webbplatsen www.cyberinfo.se.