My machine named
debian has two different MAC Addresses. One for Wireless and one for LAN. I thought a device only had a single MAC address. How is this possible?
Each network interface, whether wired or wireless, is a unique device and as such will have a unique MAC address.
A MAC address is an absolute necessity for communication on the data link layer of a network segment (basically every network wired/wireless). It is a possibility to have the same MAC address on two devices but no operating system or device is created like this, and under normal conditions will cause nothing but errors, as it will compromise the overall logic of Ethernet and network traffic will have no idea where to go.
I believe the overall effect of a duplicate MAC is to put the two devices in contention with one another, and to black hole any traffic to one of the devices. However it maybe dependent on the switch/router/topology used and you "may" not experience these issues, but its is definitely not a good idea and has few tangible benefits if any.
Its bit like putting same two numbers on a street and expecting the postman to deliver correctly.
Several answers here say that MAC addresses logically have to be different for every physical NIC (network interface) that a host has. But that is not the case, and I have seen devices which made the design choice to give all interfaces the same MAC address. For example the Playstation 3 uses the same MAC address for its wired LAN and wifi interface. Several brands of router use the same MAC address for both LAN, WAN, and wifi interfaces.
This hopefully doesn't give rise to the problems alluded to in the other answers that you would have if MAC addresses were duplicated across different devices, because these interfaces are used by a single host, or they are never used on the same LAN.
So the real question is then, why does it make sense for a single general purpose computer to have a unique MAC address for each interface?
Well it would be no big deal for two hosts on two different LANs to have duplicate MAC addresses, just like hosts on non-addressable NAT'ed home networks often share the 192.168.0.1 IP address. But how can you guarantee those hosts won't ever find themselves on the same LAN? Two different hosts on the same LAN will interfere with each other's traffic and impact the efficiency and security of the network. With early network cards, the MAC address is burned in at the hardware level, so they couldn't be changed in software. Imagine being the admin for a computer lab, and you have to constantly swap ethernet cards from one computer to another, as upgrades and replacements happen. They need to be globally unique. So each NIC manufacturer gets a prefix, and then makes sure they never repeat a suffix.
I could also imagine uses for distinct MAC addresses even in cases where you can ensure that the interfaces stay in the same host, for example if you have to limit the amount of wifi but can accept more wired traffic.
So each network card has a unique MAC address because there's no way to guarantee they won't end up in different hosts on the same LAN. But if the redundant address bothers you, you could override one of them to match the other, and be like the PS3.