I'm trying to set up a Raspberry Pi with FreeBSD as a NAT firewall. It has a built-in USB ethernet adapter and an external USB ethernet adapter. I'm not sure whether they will get the same interface numbers on every boot. Don't some computer buses search for devices in a random order at boot?

Looks like PF, IPF and IPFW only support using interface names in their configuration scripts. Is there a way to identify network adapters using some serial numbers, such as built-in MAC addresses of the devices?