Из того, что я понимаю, Linux использует нумерацию шин для определения порядка интерфейсов и их нумерации на данном компьютере. Это может быть шина PCI, mini-PCI или что-то еще. В последнее время, из-за сценариев параллельного запуска всех видов и типов, вещи стали совершенно случайными, иногда от одной загрузки к другой (фактически, сетевые адаптеры были более или менее названы одинаково на той же машине, но другие устройства не так уж и много).
Очевидно, что порядок устройств в шине меняется от машины к машине. Что не меняется, так это MAC-адрес.
Мое решение:
Если вы используете udev, вы можете использовать правила конфигурации udev, похожие на те, что описаны здесь (для Debin, ubuntu похож), чтобы принудительно связать конкретный интерфейс с MAC-адресом сетевой карты.
Предостережение Emptor: некоторые сетевые карты позволяют редактировать свои MAC. В этом случае это не сработает.
Внеклассная информация: более сложной для реализации альтернативой было бы использование нового механизма, предложенного Мэттом Домшом /Dell для Fedora, рассмотренного здесь
Что касается Ubuntu, то есть предложение интегрировать и эту схему. Согласно пункту 1 выше: хотя Fedora сначала поставляет biosdevname, ожидается, что другие дистрибутивы Linux также примут его.Сообщается, что уже есть план для интеграции этого в Ubuntu 11.04 и запрос функции для включения в OpenSUSE.
Надеюсь, это поможет.