Hvis du administrerer et Linux-system, vil der sandsynligvis være tidspunkter, hvor du har brug for at kende dit systems MAC-adresse. Du kan få brug for disse oplysninger af flere årsager. Måske vil du have DHCP til at tildele dig en fast IP-adresse. Til dette skal du bruge MAC-adressen, så du kan tilføje IP- og MAC-adressetilknytningen til dine DHCP-serverkonfigurationer.
Du har muligvis også brug for disse oplysninger til MAC-adressefiltrering for at tillade eller blokere visse enheder på dit netværk. Eller måske vil du konfigurere Wake-on-LAN. Uanset årsagen er her et par forskellige måder at finde MAC-adressen på dit Linux-system.
Hvad er en MAC-adresse?
En MAC-adresse, også kendt som en fysisk adresse eller hardwareadresse, er en unik identifikator forbundet med en netværkskort af stort set alle enheder, der er tilsluttet et netværk.
MAC-adresse funktioner på det andet lag (Data Link lag) af
OSI-modellen og er 48 bit i længden, hvor de første 24 bit repræsenterer producentens ID, og de sidste 24 bit repræsenterer det unikke ID for det pågældende NIC. Ligesom IP-adresser kan du også ændre MAC-adressen på dit NIC.Find MAC-adressen på Linux via kommandolinjen
Her er et par hurtigste og nemmeste metoder til at finde din MAC-adresse på Linux:
Brug af ip-kommandoen
Du kan bruge ip-kommandoen i Linux til at se og konfigurere fysiske såvel som virtuelle netværksgrænseflader, routing, policy-routing og tunneler. Den kan tilføje eller slette en netværksgrænseflade, tildele/fjerne IP-adresser, vise status for netværksgrænseflader og udføre meget mere nyttige opgaver.
Du kan finde MAC-adressen på dit system ved at bruge følgende ip-kommando:
ip link at vise
Denne kommando viser detaljerne for alle netværksgrænseflader inklusive deres MAC-adresser udover etiketten link/ether som fremhævet nedenfor:
For at finde MAC-adressen for en bestemt netværksgrænseflade skal du bruge følgende syntaks:
ip link at vise dev
Brug ifconfig-kommandoen
Ifconfig-kommandoen i Linux giver dig mulighed for at konfigurere og vise status for netværksgrænseflader. Desuden kan den også aktivere og deaktivere en netværksgrænseflade.
For at finde MAC-adressen på alle tilgængelige netværksgrænseflader (selvom de er deaktiveret), skal du bruge ifconfig-kommandoen med -en flag som følger:
ifconfig -a
For at finde MAC-adressen på en bestemt netværksgrænseflade skal du angive dens navn som et argument:
ifconfig interface_name
For at finde MAC-adressen for alle de aktuelt aktive netværksgrænseflader skal du bruge ifconfig-kommandoen uden flag:
ifconfig
I outputtet kan du finde din grænseflades MAC-adresse ved siden af etiketten æter som fremhævet nedenfor:
ethtool er et Linux-værktøj, der giver dig mulighed for at forespørge og konfigurere netværksdrivere og netværkskortindstillinger. Ved at bruge ethtool-værktøjet kan du også forespørge på en netværksgrænseflade for dens MAC-adresse.
Her er kommandoen til at gøre det:
ethtool -P interface_name
Hent MAC-adresse fra /sys/class/net-kataloget
Det /sys/class/net biblioteket indeholder oplysninger om de netværksenheder, der er tilsluttet systemet. Denne mappe vedligeholder en separat undermappe for hver af netværksgrænseflader som f.eks /sys/class/net/ens33 og /sys/class/net /ens37.
Hver undermappe indeholder forskellige filer for hver netværksattribut som MAC-adresse, netværksenhedens driftstilstand, dens duplex, MTU osv. MAC-adresseoplysningerne gemmes i adresse fil.
Brug følgende kommando for at få en liste over de netværksgrænseflader, der er knyttet til dit system:
ls /sys/klasse/net
For at finde MAC-adressen på en bestemt netværksgrænseflade skal du bruge følgende kommandosyntaks:
kat /sys/klasse/net/interface_name/adresse
For eksempel, for at finde MAC-adressen på en netværksgrænseflade, lad os sige ens33, vil kommandoen være:
kat /sys/klasse/net/ens33/adresse
Sådan finder du MAC-adressen på Linux via GUI
De, der foretrækker GUI til deres rutineopgaver, kan finde deres MAC-adresse grafisk ved hjælp af netværksadministratoren, som deres distribution leverer. Ligesom i Ubuntu kan du bruge indstillingerne for netværksforbindelser.
Åben Indstillinger i din Linux-distribution enten ved at højreklikke på dit skrivebord eller fra applikationsmenuen. Fra venstre panel skal du gå til Netværk fanen. Dette vil vise alle de netværksgrænseflader, der er knyttet til dit system.
For at finde MAC-adressen for en netværksgrænseflade skal du klikke på Cog (indstillinger)-ikonet foran.
Dette åbner et nyt vindue, der viser detaljerne for din netværksgrænseflade. Her finder du MAC-adressen ved siden af etiketten Hardware adresse.
Til denne vejledning har vi brugt GNOME til billederne, men andre skrivebordsmiljøer ville også have lignende indstillinger, kun med andre etiketter.
Find MAC-adressen på et andet system på et lokalt netværk
I lighed med din egen MAC-adresse kan du også finde MAC-adressen på andre systemer på et lokalt netværk. Sådan gør du:
Brug af kommandoen arp
Du kan bruge ARP eller Address Resolution Protocol til at lære MAC-adressen for en given IP-adresse. For at finde MAC-adressen på et andet system på et lokalt netværk skal du pinge dets IP-adresse med:
ping -c1 <IPadresse>
Ping-kommandoen vil bruge ARP til at lære MAC-adressen på fjernsystemet. Når den får disse oplysninger, gemmes de i ARP-tabellen, som du kan se ved hjælp af:
arp -n | grep <IPadresse>
Denne kommando udskriver MAC-adressen for den givne IP-adresse.
Arping-værktøjet hjælper dig med at opdage og undersøge lokale systemer på et netværk. Det fungerer på det andet lag i OSI-modellen og sender ARP-anmodningen til systemet for at afgøre, om det er i live og reagerer. Det er forskelligt fra ping-værktøjet, der fungerer på det tredje lag.
Du kan installere arping ved at bruge følgende kommandoer:
På Debian-baserede distributioner:
sudo apt installere arping
På RHEL-baserede distributioner:
sudo yum installere arping
Når det er installeret, skal du finde MAC-adressen på et andet system på et netværk ved at angive dets IP-adresse som et argument ved hjælp af følgende kommando:
sudo arping -c 1 <IPadresse>
Hvis dit system har flere NIC'er, kan du angive, fra hvilken grænseflade en anmodning skal sendes ved hjælp af -JEG flag ("i") efterfulgt af grænsefladenavnet:
sudo arping -c 1 -I interface_name <IPadresse>
For eksempel vil følgende kommando sende en ARP-anmodning fra dens ens33 interface til fjernsystemets IP-adresse 192.168.42.133.
sudoarping-c 1 -JEGens33 192.168.42.133
I outputtet vil du modtage ARP-svaret fra destinationssystemet med dets MAC-adresse.
Det er nemt at finde din MAC-adresse på Linux
I betragtning af de forskellige metoder til at finde MAC-adressen på Linux, kan du vælge en hvilken som helst, du finder praktisk.
I lighed med Linux kan du også finde MAC-adressen i Windows og macOS; dog har de forskellige sæt kommandoer og GUI.