Mis on MAC-aadressi kasutamine?
Igal kohaliku võrgu riistvaral on MAC-aadress lisaks kohalikule ruuterile või serverile määratud IP-aadressile. Mis täpselt see MAC-aadress on?
Tänane küsimuste ja vastuste seanss saabub meiega kohtades, kus on SuperUser-Stack Exchange'i alajaotis, kogukondlikult juhitav Q&A veebisaitide rühmitus.
Küsimus
SuperUser lugeja Vishnu Vivek on uudishimulik MAC-aadresside ja nende funktsiooni kohta:
Ma saan aru, et IP-aadressid on hierarhilised, nii et ruuterid kogu internetis teavad, millist suunda pakett edasi saata. MAC-aadresside puhul puudub hierarhia ja seega ei oleks pakettide edastamine võimalik. Seega ei kasutata pakettide edastamiseks MAC-aadresse.
Ma ei usu, et see seal mingil põhjusel ei istu. Nii et minu küsimus on, kus täpselt MAC paki edastamise ajal mängitakse?
Kus tegelikult? Mis on MAC-aadressi konkreetne funktsioon?
Vastus
SuperUser'i toetaja Werner Henze pakub mõningast ülevaadet MAC-aadressi funktsioonist:
Mis on MAC-aadressid?
MAC-aadressid on madala taseme alused, mis muudavad teie võrgutöötluse Ethernet-põhiseks.
Igal võrgukaardil on unikaalne MAC-aadress. Etherneti kaudu saadetud paketid tulevad alati MAC-aadressilt ja saadetakse MAC-aadressile. Kui võrgukaart võtab vastu paketi, võrdleb see paketi sihtkoha MAC-aadressi adapteri enda MAC-aadressiga. Kui aadressid sobivad, siis pakett töödeldakse, vastasel juhul jäetakse see ära.
On olemas spetsiaalsed MAC-aadressid, millest üks on näiteks ff: ff: ff: ff: ff: ff, mis on ülekande aadress ja aadress iga võrgukaardi jaoks.
Kuidas IP-aadressid ja MAC-aadressid koos töötavad?
IP on protokoll, mida kasutatakse Etherneti kohal asuval kihil. Teine protokoll oleks näiteks IPX.
Kui teie arvuti soovib saata paketi mõnele IP-aadressile x.x.x.x, siis esimene kontroll on, kas sihtkoha aadress on samas IP-võrgus kui arvuti ise. Kui x.x.x.x on samas võrgus, saab sihtpunkti IP otse jõuda, vastasel juhul tuleb pakett saata konfigureeritud ruuterile.
Siiani näib, et asjad on hullemaks muutunud, sest nüüd on meil kaks IP-aadressi: üks on algne IP-paketi siht-aadress, teine on selle seadme IP, kellele pakett peaks saatma (järgmine hüpp, kas lõplik sihtkoht või ruuter).
Kuna Ethernet kasutab MAC-aadresse, peab saatja järgmise MAC-aadressi saama. Selleks kasutatakse spetsiaalset protokolli ARP (aadressresolutsiooniprotokoll). Kui saatja on järgmise hüppa MAC-aadressi kätte saanud, kirjutab ta selle MAC-aadressi paketti ja saadab paketi.
Kuidas ARP toimib?
ARP ise on protokoll, mis on ülalpool Etherneti, nagu IP või IPX, kohal. Kui seade soovib teada saada antud IP-aadressi MAC-aadressi, saadab ta paketi edastatava MAC-aadressi, küsides “Kellel on IP-aadress yyyy?” Kõik seadmed saavad selle paketi, kuid ainult see, millel on IP-aadress yyyy, vastab Pakettaknaga “See on mina”. Küsimisseade võtab vastu vastuse ja teab nüüd, et allikas MAC-aadress on õige MAC-aadress, mida kasutada. Loomulikult jääb tulemus vahemällu, nii et seade ei pea MAC-aadressi iga kord lahendama.
Marsruutimine
Ma peaaegu unustasin mainida: MAC-aadressidel põhinevat marsruutimist ei toimu. Madalatele Etherneti ja MAC-aadressidele saab iga seade jõuda ainult sama võrk (traadita või traadita). Kui teil on kaks võrku koos ruuteriga, ei saa te võrgus A saata seadet võrgus B oleva seadme MAC-aadressile. Võrgus A olevas seadmes ei ole võrgu B-aadressi MAC-aadressi, nii et A-aadressil olevad seadmed (ka ruuter) loobuvad selle MAC-aadressi paketist.
Marsruutimine toimub IP-tasemel. Lihtsalt nägi, et ruuter teeb seda, mida ma eespool kirjeldasin peatükis “Kuidas IP-aadressid ja MAC-aadressid koos töötavad?”. Ruuter võtab vastu paketid oma MAC-aadressi, kuid teise IP-aadressi jaoks. Seejärel kontrollib ta, kas ta saab otseselt IP-aadressi. Kui jah, saadab ta paketi sihtmärgile. Vastasel juhul on marsruuteril ka ülesvoolu marsruuter konfigureeritud ja saadab paketi sellele ruuterile.
Loomulikult saab seadistada mitu ruuterit. Teie kodus ruuteril on ainult üks ülesvoolu marsruuter konfigureeritud, kuid interneti selgroogil on suurtel marsruuteritel suured marsruutimislauad, et nad teaksid kõigi pakettide parimaid viise.
Muud MAC-aadresside kasutusjuhud
- Võrgu lülitid salvestavad kõigi sadamate juures olevate MAC-aadresside loendi ja edastavad pakette ainult nendele sadamatele, mis peavad paketti vaatama.
- Juurdepääsu kontrollimiseks kasutavad traadita pöörduspunktid sageli MAC-aadresse. Nad lubavad juurdepääsu ainult tuntud seadmetele (MAC-aadress on unikaalne ja identifitseerib seadmed) õige parooliga.
- DHCP-serverid kasutavad seadmete tuvastamiseks MAC-aadressi ja annavad mõnedele seadmetele fikseeritud IP-aadresse.
Kas teil on midagi lisada selgitusele? Hääletage kommentaarides. Kas soovite lugeda rohkem vastuseid teistelt tech-savvy Stack Exchange'i kasutajatelt? Vaadake siin täielikku arutelu lõiku.