It’s easy enough to change your network adapter’s MAC address once you have a Debian/Ubuntu system installed, but I needed to do this from within the Debian installer (Lenny beta 2), and it took me a while to figure out how. So I’m making a note of it for my own future reference, and maybe someone googling for the phrases I initially did will find this helpful.
So here’s the problem: my NIC’s default MAC address is (say)
01:02:03:04:05:06, and for one reason or another, I need it to be
06:05:04:03:02:01 instead. Furthermore, I need this change to be in effect while I’m inside Lenny’s installer, so
ifconfig is not available. Here’s how I did it:
- From the installer’s boot menu, select
Advanced options, and
- Work your way down the steps as needed, starting from the top, until you’ve gone through
Detect network hardware. Instead of the next one (
Configure the network), pick
Execute a shellfrom further down the menu.
- In the shell you can check your network interface status with
# ip link show eth0
You might use
eth1or some other port instead of
eth0, but I haven’t done this with anything other than the one NIC I had in the setup, and so haven’t used anything besides
In my case, entering the command gives the following output:
2: eth0: mtu 1500 qdisc noop qlen 1000 link/ether 01:02:03:04:05:06 brd ff:ff:ff:ff:ff:ff
- Next, the spell you’ve been waiting for. Let’s change that MAC address!
# ip link set eth0 addr 06:05:04:03:02:01
If all goes well,
ipwon’t say anything. Re-run the ‘
show‘ command listed in the previous point to see that it actually worked.
exitto return to the installer.
- Now you pick up from
Configure the network, and proceed installing from there.
One last point: the changed MAC address won’t survive the reboot finalizing the installation, so if you want to make it permanent, you’ll want to set it after the first boot into your new system, by using the method I linked to in the beginning (editing
/etc/network/interfaces). Or you could to do it from the installer, using