32

I'm setting up a computer lab in which many Raspberry Pis are going to acquire IP addresses via DHCP. I'd like to have the DHCP server to differentiate between Raspberry Pis and other clients.

What are the organizationally unique identifiers (OUIs) for the Ethernet cards on Raspberry Pis with which I might discriminate Raspberry Pis from other DHCP clients?

(I am aware that MAC addresses can be spoofed and am assuming that the DHCP clients are not hostile.)

0

11 Answers 11

6

"Current" data for Raspberry Pi devices:

MA-L/OUI MAC address prefixes: 6

28:CD:C1
2C:CF:67
B8:27:EB
D8:3A:DD
DC:A6:32
E4:5F:01

MA-L: Mac Address Block Large (previously named OUI). Number of address 2^24 (~16 Million)

CID prefix: 1

3A:35:41

CID: Company Identifier. This prefix will not be used for globally unique applications. Number of address 2^24 (~16 Million)

Sources:
https://maclookup.app/vendors/raspberry-pi-trading-ltd
https://maclookup.app/vendors/raspberry-pi-foundation https://regauth.standards.ieee.org/standards-ra-web/pub/view.html#registries

FYI, my Pico W has a 28:CD:C1 address.

You can fetch the most up to date MA-L data from the IEEE with this one-liner:

curl -sSL https://standards-oui.ieee.org/oui/oui.txt \
  | grep -i '[(]hex[)].*raspberry' \
  | sort

28-CD-C1   (hex)                Raspberry Pi Trading Ltd
2C-CF-67   (hex)                Raspberry Pi (Trading) Ltd
B8-27-EB   (hex)                Raspberry Pi Foundation
D8-3A-DD   (hex)                Raspberry Pi Trading Ltd
DC-A6-32   (hex)                Raspberry Pi Trading Ltd
E4-5F-01   (hex)                Raspberry Pi Trading Ltd

You can fetch the most up to date CID data from the IEEE with this one-liner:

curl -sSL https://standards-oui.ieee.org/cid/cid.txt \
  | grep -i '[(]hex[)].*raspberry' \
  | sort

3A-35-41   (hex)                Raspberry Pi (Trading) Ltd

2
  • 1
    As of 4 January 2024 both the 28:CD:C1 and D8:3A:DD are now registered to Raspberry Pi Trading Ltd, per the IEEE OUI database.
    – devstuff
    Commented Jan 4 at 17:55
  • 1
    3A:35:41 is a CID (Company ID) maclookup.app/macaddress/3a3541
    – devstuff
    Commented Jan 4 at 18:25
22

The best resource to find the most current OUI assignments is from the MAC Address Block Large (MA-L) Public Listing at the IEEE -- http://standards.ieee.org/develop/regauth/oui/public.html.

A complete list of OUI assignments is compiled daily and is available at http://standards-oui.ieee.org/oui.txt.

According to this list there is a single OUI/MA-L assignment for the Raspberry Pi Foundation:

>      B8-27-EB   (hex)         Raspberry Pi Foundation
>      B827EB     (base 16)     Raspberry Pi Foundation
>                               Mitchell Wood House
>                               Caldecote Cambridgeshire CB23 7NU
>                               UNITED KINGDOM
1
  • 1
    I can confirm it's still B8-27-EB on a Raspberry Pi 3 Model B
    – Eugen
    Commented Aug 11, 2017 at 19:40
14

To elaborate the answer from @cachius: the OUI has changed from

B8-27-EB   (hex)         Raspberry Pi Foundation
B827EB     (base 16)     Raspberry Pi Foundation
                         Mitchell Wood House
                         Caldecote Cambridgeshire CB23 7NU
                         UNITED KINGDOM

to

DC-A6-32   (hex)         Raspberry Pi Trading Ltd
DCA632     (base 16)     Raspberry Pi Trading Ltd
                         Maurice Wilkes Building, Cowley Road
                         Cambridge    CB4 0DS
                         GB

according to http://standards-oui.ieee.org/oui.txt.

The Raspberry Pi 4 Model B already has the new OUI.

Add also

E4-5F-01   (hex)        Raspberry Pi Trading Ltd
E45F01     (base 16)    Raspberry Pi Trading Ltd
                        Maurice Wilkes Building, Cowley Road
                        Cambridge    CB4 0DS
                        GB
6
  • Why did it change?
    – james-see
    Commented Nov 19, 2019 at 17:28
  • @jamescampbell I don't know. I guess because the company has changed. The first bytes of a mac address are the companiy id.
    – Ingo
    Commented Nov 19, 2019 at 18:13
  • 1
    @jamescampbell: I don't know precisely why the company changed, but FYI, the original OUI was registered to the Raspberry Pi Foundation - a "registered charity" in the UK. UK laws govern finances of charities, and of course charities are not permitted to make a "profit". Here's a thumbnail sketch of their finances. It seems a reasonable guess that money is behind the decision, more specically how it is accounted for and distributed.
    – Seamus
    Commented Dec 7, 2019 at 19:20
  • 2
    @james-see: Each prefix allows for 16 million MAC addresses, so if they didn't want to re-use them (since that would make it harder for them to coexist on the same network) they would need a new prefix. As of 2022, 40 million units had been sold, so after 16 million they'd need the first change, after 32 million the next, and so on. With WiFi needing more addresses and Pico-W using more too, they need a lot more prefixes if they want to avoid re-issuing the same addresses.
    – Malvineous
    Commented Jan 13 at 16:55
  • 1
    Wow. 🤯 @Malvineous thank you! That makes sense!
    – james-see
    Commented Jan 14 at 18:40
8

According to the wikipedia article you linked,

In MAC addresses, the OUI is combined with a 24-bit number (assigned by the owner or 'assignee' of the OUI) to form the address. The first three octets of the address are the OUI.

So this is pretty straightforward; the first half of a MAC address is the OUI and the second half is arbitrary.

Lo and behold, on the four pis I have here (two B's, one made in China, one B+, and one pi 2), the first three octets are:

b8 27 eb

Doing a bit of random searching online ("raspberry pi MAC address") also turns up this OUI.

4

The below script can be used to find any vendor by Mac: Raspberry Pi or otherwise.

Just supply the vendor's name as it's specified in the IEEE's MAC DB:

"http://standards-oui.ieee.org/oui.txt"

in the variable "VENDOR" and of course replace the echo's in the conditional expression with something useful.

In its' present form it's meant to execute locally on a host, but the script could be adapted quite easily I imagine.

#!/bin/bash

#set -x

VENDOR='Raspberry Pi'
OUI=`ip addr list | grep -w link | awk '{print $2}' | grep -P "^(?!00:00:00)"| grep -P "^(?!fe80)" | tr -d ":" | head -c 6`

if [[ $( curl -sS "http://standards-oui.ieee.org/oui.txt" | grep -i "$OUI" | grep -o "$VENDOR" ) = 'Raspberry Pi' ]]; then
        echo "This is a Pi"
else
        echo "This is NOT a Pi"
fi

It is worth noticing, that the companyname (in the oui.txt) changed with the new Pi4:

  • B8-27-EB (hex) Raspberry Pi Foundation
  • DC-A6-32 (hex) Raspberry Pi Trading Ltd.
4
  • Thanks for the script! I edited it to still work with the different Raspberry company names that came with the Pi 4. Commented Oct 7, 2019 at 12:15
  • @StefanWegener Sooper-dooper! Thanks for helping keep answers current!
    – F1Linux
    Commented Oct 7, 2019 at 12:18
  • For an online search, regauth.standards.ieee.org has the most up-to-date data. Choose the "All MAC" product.
    – devstuff
    Commented Jan 4 at 18:01
  • standards.ieee.org/products-programs/regauth offers links to download MAC assignment lists for the large, medium and small ranges. RPi is only in the MA-L list but a general search script would need to download all 3 files. NOTE: the links on the page are currently rendered as http:// but the equivalent https:// links work fine.
    – devstuff
    Commented Jan 4 at 18:15
3

It is worth noting that the MAC-48 number applies to the Network Interface and not the Host device and thus the B8:27:EB applies only to the wired EtherNet interface on older Raspberry Pi devices that do not have a built-in Broadcomm device providing Wireless networking!

A WiFi USB dongle added to give an RPi wireless-networking where it does not have it natively will have a OUI that is specific (one hopes) to the manufacturer - though there are now utilities to fake the whole MAC number for good (or evil) purposes. This is important should you be trying to find older RPis wirelessly and wondering why you cannot see MACs beginning with that value...

3

To add to what @Ingo said, they actually have a third OUI now: E4-5F-01

Not sure why that happened either, but I have hardware with a MAC with that OUI.

I'd have commented that, but don't have enough reputation.

2
2

In my very personal case.

recovery    b8:27:eb:c2:37:9d

OUI search

b8:27:eb

Find Results B8:27:EB Raspberry Pi Foundation

2

Both the Ethernet and the Wifi on the RPi3 (Raspberry Pi 3) have are prefixed b8:27:eb.

pi@raspberrypi:~ $ ifconfig | egrep "(ether|flags)"
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        ether b8:27:eb:ad:78:e4  txqueuelen 1000  (Ethernet)
lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
wlan0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        ether b8:27:eb:f8:2d:b1  txqueuelen 1000  (Ethernet)
2

The Raspberry Pi 4 has

DC:A6:32:xx:xx:xx (Raspberry Pi Trading)

according to the Raspberry Pi Forums.

0
0

confirming a reception of an rpi in the mac range D8:3A:DD, with 4GB RAM.

cannot upvote yet, otherwise I would have done that instead.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.