Verkkokorttien (NIC) MAC-osoitteen (Media Access Control) muuttaminen
Last modified on 24. heinäkuuta 2026 • 2 min read • 400 words
Joissakin verkoissa tietokoneet on rekisteröitävä, jotta ne voivat yhdistää verkkoon. Rekisteröinnin yhteydessä tietokone saa nimen ja IP-osoitteen. Aina kun se yhdistää verkkoon, DHCP-palvelin määrittää sille saman nimen ja IP-osoitteen. DHCP-palvelin tunnistaa tietokoneet MAC-osoitteen perusteella, joka on jokaiselle verkkokortille (NIC) yksilöllinen. Jos kuitenkin tiedät rekisteröidyn tietokoneen MAC-osoitteen, voit käyttää sitä verkkoon yhdistämiseen väärentämällä MAC-osoitteen:
ifconfig eth0 down
macchanger --mac=00:B0:D0:20:A5:D9 eth0
ifconfig eth0 upJos sinun on suoritettava MAC osoitteen muutos aina koneen käynnistyessä, voit laittaa sen skriptiin . Ubuntu Trusty Tahrissa (14.04) ifconfig eivät enää toimineet minulla. MAC:in muuttaminen kuitenkin toimii vielä lisäämällä seuraavat kolme riviä tiedoston /etc/rc.local loppuun (mutta ennen “exit 0” -riviä):
dhclient -r eth0
macchanger -m 00:21:5a:76:44:b0 eth0
dhclient eth0Valitettavasti MacOSX:ssä tämä tuntuu melkein mahdottomalta. Tai pikemminkin tapa tehdä se tuntuu muuttuvan jokaisen käyttöjärjestelmäpäivityksen myötä. Helppo tapa on käyttää reititintä, sillä useimmat niistä tukevat MAC-osoitteen kloonausta. Ja Ubuntu 16.04:ssä ja uudemmissa helpoin tapa näyttää olevan systemd:n käyttö:
sudo touch /etc/systemd/system/macchange@.service
sudo emacs /etc/systemd/system/macchange@.serviceLiitä tiedostoon seuraava sisältö:
[Unit]
Description=changes mac for %I
Wants=network.target
Before=network.target
BindsTo=sys-subsystem-net-devices-%i.device
After=sys-subsystem-net-devices-%i.device
[Service]
Type=oneshot
ExecStart=/usr/bin/macchanger --mac=00:B0:D0:20:A5:D9 %I
RemainAfterExit=yes
[Install]
WantedBy=multi-user.targetOta sitten service käyttöön. Muista korvata enp2s0 verkkoliitäntäsi nimellä!
sudo systemctl enable macchange@enp2s0.servicePÄIVITYS: Eri tavat tehdä MAC osoitteen muutoksesta pysyvää järjestelmissä ovat muuttuneet melkein jokaisen Ubuntu-version myötä, eivätkä yllä olevat menetelmät ole viime aikoina enää toimineet. Yksi Ubuntu 22.04:ssä ja uudemmissa toiminut tapa on kuvattu täällä: https://askubuntu.com/questions/1394904/how-can-i-set-the-hardware-mac-address-permanently . However, joidenkin kokeilujen jälkeen olen sitä mieltä, että macchanger ei ole oikea työkalu Ubuntu desktopin asennukseen, joka käyttää NetworkManageria. NetworkManager on poistettava käytöstä, jotta se ei häiritse. Useimmat ihmiset haluavat muuttaa asetuksia kätevästi yhdellä napsautuksella sen sijaan, että antaisivat komentoja päätteessä. Joten, miten MAC change tehdään NetworkManagerilla? Ensin sinun on selvitettävä langallisen yhteytesi nimi (tässä tapauksessa “Wired”):
nmcli con showSitten muutat yksinkertaisesti MAC-osoitetta:
nmcli con modify Wired ethernet.cloned-mac-address XX:XX:XX:XX:XX:XX(Muuten: Asetustiedostot sijaitsevat hakemistossa /etc/NetworkManager/system-connections.) Jos haluat muokata Ubuntu-palvelin 24.04:n MAC-osoitetta, sinun tarvitsee vain muokata tiedostoa /etc/netplan/50-cloud-init.yaml (lisää vain viimeinen rivi, joka alkaa sanalla macaddress):
network:
version: 2
ethernets:
enp3s0:
dhcp4: true
macaddress: xx:xx:xx:xx:xx:xxToteuttaaksesi muutoksen (joka on pysyvä):
sudo netplan applyHuomaa, että monet reitittimet katkaisevat yhteytesi, kun ne huomaavat MAC-osoitteen muuttuneen, ja yhdistävät sinut uudella IP-osoitteella. Joissakin ympäristöissä (joissa IP-osoitteet on rekisteröitävä) saatat kuitenkin joutua lukituksi ulos!
Jotkut ihmiset luulevat, että macchangerin käyttö on lähes laitonta, mutta itse asiassa Andropid-laitteesi tai iPhone-puhelimesi (jos kyseessä on uudempi malli) toimii täsmälleen samalla tavalla – se vaihtaa MAC-osoitettaan säännöllisin väliajoin. Koska MAC-osoite on laitteellesi maailmanlaajusesti ainutlaatuinen, sinut voidaan tunnistaa ja paikantaa/seurata puhelimesi MAC-osoitteen avulla.