Hva er en MAC-adresse som brukes til?
Hvert stykke maskinvare på ditt lokale nettverk har en MAC-adresse i tillegg til IP-adressen tildelt av den lokale ruteren eller serveren. Hva er egentlig MAC-adressen til?
Dagens Spørsmål & Svar-sesjon kommer til oss med høflighet av SuperUser-en underavdeling av Stack Exchange, en fellesskapsdrevet gruppering av Q & A-nettsteder.
Spørsmålet
SuperUser leser Vishnu Vivek er nysgjerrig på MAC adresser og deres funksjon:
Jeg forstår at IP-adresser er hierarkiske, slik at rutere over hele Internett vet hvilken retning å sende en pakke til. Med MAC-adresser er det ikke noe hierarki, og dermed vil det ikke være mulig å sende videre. Så, MAC-adresser blir ikke brukt til pakkeoverføring.
Jeg tror ikke det sitter der uten grunn. Så spørsmålet mitt er hvor nøyaktig en MAC-adresse kommer inn i spill under en pakkeoverføring?
Hvor virkelig? Hva er den spesifikke funksjonen til MAC-adressen?
Svaret
SuperUser-bidragsyter Werner Henze gir litt innsikt i funksjonen til MAC-adressen:
Hva er MAC-adresser brukt til?
MAC-adresser er det grunnleggende lavnivået som gjør ethernetbasert nettverksarbeid.
Nettverkskort har hver en unik MAC-adresse. Pakker som sendes på ethernet kommer alltid fra en MAC-adresse og sendes til en MAC-adresse. Hvis et nettverkskort mottar en pakke, sammenligner den pakkens mål-MAC-adresse til adapterens egen MAC-adresse. Hvis adressene samsvarer, behandles pakken, ellers blir den kassert.
Det er spesielle MAC-adresser, for eksempel er ff: ff: ff: ff: ff: ff, som er utsendingsadressen og adresserer hvert nettverkskort i nettverket.
Hvordan fungerer IP-adresser og MAC-adresser sammen?
IP er en protokoll som brukes på et lag over ethernet. En annen protokoll for eksempel ville være IPX.
Når datamaskinen ønsker å sende en pakke til en IP-adresse x.x.x.x, er den første sjekken om destinasjonsadressen er i samme IP-nettverk som selve datamaskinen. Hvis x.x.x.x er i samme nettverk, kan destinasjons-IP nås direkte, ellers må pakken sendes til den konfigurerte ruteren.
Til nå ser det ut til at det har blitt verre, for nå har vi to IP-adresser: den ene er den opprinnelige IP-pakkenes måladresse, den andre er IP av enheten som vi skal sende pakken til (neste hop, enten den endelige destinasjon eller ruteren).
Siden ethernet bruker MAC-adresser, må avsenderen få MAC-adressen til neste hop. Det er en spesiell protokoll ARP (adresseoppløsningsprotokoll) som brukes til det. Når avsenderen har hentet MAC-adressen til neste hop, skriver han den målrettede MAC-adressen i pakken og sender pakken.
Hvordan fungerer ARP?
ARP selv er en protokoll over ethernet, som IP eller IPX. Når en enhet ønsker å kjenne MAC-adressen for en gitt IP-adresse, sender den en pakke til kringkasting MAC-adressen og spør "Hvem har IP-adressen din?" Alle enheter mottar den pakken, men bare den med IP-adressen du vil svare med en pakke "Det er meg." Den spørre enheten mottar svaret og vet nå at kilden MAC-adressen er den riktige MAC-adressen som skal brukes. Selvfølgelig blir resultatet cached, slik at enheten ikke trenger å løse MAC-adressen hver gang.
routing
Jeg glemte nesten å nevne: det er ingen ruting basert på MAC-adresser. Ethernet- og MAC-adresser med lavt nivå kan bare nå alle enheter på samme nettverk (kablet eller trådløst). Hvis du har to nettverk med en ruter i mellom, kan du ikke ha en enhet i nettverk A sende en pakke til MAC-adressen til en enhet i nettverk B. Ingen enhet i nettverk A har MAC-adressen til enheten i nettverk B, så en pakke til denne MAC-adressen vil bli kassert av alle enheter i nettverket A (også av ruteren).
Ruting er gjort på IP-nivå. Bare sett ruteren gjør bare det jeg beskrev over i avsnittet "Hvordan fungerer IP-adresser og MAC-adresser sammen?". Ruteren vil motta pakker for sin egen MAC-adresse, men for en annen IP-adresse. Han vil da sjekke om han direkte kan nå mål-IP-adressen. I så fall sender han pakken til målet. Ellers har ruteren selv også en oppstrøms ruteren konfigurert og vil sende pakken til den ruteren.
Selvfølgelig kan du ha flere rutere konfigurert. Hjemmestyreren din vil bare ha én oppstrøms ruteren konfigurert, men i ryggraden på nettet har de store rutene store rutetabeller slik at de vet de beste måtene for alle pakker.
Andre brukstilfeller for MAC-adresser
- Nettverksbrytere lagrer en liste over MAC-adresser som er sett på hver port og bare videresender pakker til portene som trenger å se pakken.
- Trådløse tilgangspunkter bruker ofte MAC-adresser for tilgangskontroll. De tillater bare tilgang for kjente enheter (MAC-adressen er unik og identifiserer enheter) med riktig passordfrase.
- DHCP-servere bruker MAC-adressen til å identifisere enheter og gi noen enheter faste IP-adresser.
Har du noe å legge til forklaringen? Lyde av i kommentarene. Vil du lese flere svar fra andre tech-savvy Stack Exchange-brukere? Sjekk ut hele diskusjonstråden her.