There are a few things that should be taken into consideration when dealing with your problem.
First, the OUI used by the netaddr 1.3.0 package is outdated.
I have an iPhone 16 with' OUI 0C-85-E1. You can check directly in IEEE or here that it is a valid OUI, but it's not updated in the netaddr source.
You can solve this problem using another approach to get OUI info from the web.
maco = src_mac[:8].upper().replace(":", "-")
try:
response = requests.get(f"https://api.macvendors.com/{oui}")
if response.status_code == 200:
macf = response.text
else:
macf = "Not available"
except Exception as e:
macf = "Not available"
But here there's the second problem. Apple uses a private Wi-Fi addresses security functionality that prevents from showing the real OUI on all requests, including probe requests.
Check here when this option is off:
And when it's on:
You can check that OUI 6E-BA-4F it's invalid.
Android has a similar function too. So you will have the same problem.
If your clients use this function there is no way to determine the vendor based on OUI from probe requests.