Thr stark difference between Linux and macos is that ONLY macos can filter inbound Ether packets by its destination process ID.
Becasue BSD raw socket rules.
That's how you get Sniffer to be performing waaaaay more intuitively on macos than at all on Linux.