Утилита для кастомизации имени сетевого интерфейса
Find a file
2026-05-19 02:32:56 +03:00
.vscode init 2026-05-19 02:32:56 +03:00
data init 2026-05-19 02:32:56 +03:00
etc/udev/rules.d init 2026-05-19 02:32:56 +03:00
source init 2026-05-19 02:32:56 +03:00
.editorconfig init 2026-05-19 02:32:56 +03:00
.gitignore init 2026-05-19 02:32:56 +03:00
dub.json init 2026-05-19 02:32:56 +03:00
dub.selections.json init 2026-05-19 02:32:56 +03:00
dub.settings.json init 2026-05-19 02:32:56 +03:00
README.md init 2026-05-19 02:32:56 +03:00

modiface

Утилита для кастомизации имени сетевого интерфейса.

Работает при вызове из под udev, считывая переменную окружения DEVPATH. Создаёт карту сетевых интерфейсов и присваивает каждому сетевому интерфейсу уникальный индекс, который в сочетании с префиксом из конфигурационного файла образует уникальное имя сетевого интерфейса.

Пример с отладочными сообщениями:

2026-05-19T02:26:11.574 [info] pci.d:181:this Новое устройство: /devices/pci0000:00/0000:00:1c.6/0000:06:00.0/net/enp6s0
2026-05-19T02:26:11.576 [info] pci.d:194:this Стандартное наименование интерфейса [90:2b:34:dd:df:9d]: enp6s0
2026-05-19T02:26:11.576 [trace] pci.d:195:this Полученные части PCI-цепочки: ["0000:00:1c.6", "0000:06:00.0"]
2026-05-19T02:26:11.576 [trace] pci.d:68:parse Сырое представление PCI-адреса в памяти: value=0xe6000000
2026-05-19T02:26:11.576 [trace] pci.d:72:parse Конвертация адреса: 0000:00:1c.6 => 00000:000:28.6 (packed=230/0x000000e6 bits=00000000_11100_110)
2026-05-19T02:26:11.576 [trace] pci.d:91:concat Конкатенация адреса 00000:000:28.6 (packed=230/0x000000e6 bits=00000000_11100_110) => 286
2026-05-19T02:26:11.576 [trace] pci.d:68:parse Сырое представление PCI-адреса в памяти: value=0x00060000
2026-05-19T02:26:11.576 [trace] pci.d:72:parse Конвертация адреса: 0000:06:00.0 => 00000:006:00.0 (packed=1536/0x00000600 bits=00000110_00000_000)
2026-05-19T02:26:11.576 [trace] pci.d:91:concat Конкатенация адреса 00000:006:00.0 (packed=1536/0x00000600 bits=00000110_00000_000) => 6000
2026-05-19T02:26:11.576 [trace] pci.d:105:join Соединенное значение адреса PCI: 2866000
2026-05-19T02:26:11.576 [trace] pci.d:68:parse Сырое представление PCI-адреса в памяти: value=0xe6000000
2026-05-19T02:26:11.576 [trace] pci.d:72:parse Конвертация адреса: 0000:00:1c.6 => 00000:000:28.6 (packed=230/0x000000e6 bits=00000000_11100_110)
2026-05-19T02:26:11.576 [trace] pci.d:68:parse Сырое представление PCI-адреса в памяти: value=0x00060000
2026-05-19T02:26:11.576 [trace] pci.d:72:parse Конвертация адреса: 0000:06:00.0 => 00000:006:00.0 (packed=1536/0x00000600 bits=00000110_00000_000)
2026-05-19T02:26:11.576 [trace] pci.d:118:join Соединенное значение uint адреса PCI: 2301536
2026-05-19T02:26:11.576 [trace] filelock.d:64:waitLockExclusive Файл заблокирован для записи
2026-05-19T02:26:11.576 [trace] ifacemap.d:122:findIndex Карта интерфейсов: поиск записи key=2301536
2026-05-19T02:26:11.576 [trace] ifacemap.d:131:findIndex Карта интерфейсов: прочитана запись key=469762048393216 index=0
2026-05-19T02:26:11.576 [trace] ifacemap.d:131:findIndex Карта интерфейсов: прочитана запись key=3690987520393216 index=1
2026-05-19T02:26:11.576 [trace] ifacemap.d:131:findIndex Карта интерфейсов: прочитана запись key=3858759680393216 index=2
2026-05-19T02:26:11.576 [trace] ifacemap.d:131:findIndex Карта интерфейсов: прочитана запись key=2301536 index=3
2026-05-19T02:26:11.576 [trace] ifacemap.d:135:findIndex Карта интерфейсов: запись найдена key=2301536 index=3
2026-05-19T02:26:11.576 [info] ifacemap.d:218:getOrAddIndexLocked Карта интерфейсов: используется существующий индекс key=2301536 index=3
2026-05-19T02:26:11.576 [trace] ifacemap.d:212:getOrAddIndexLocked Файл разблокирован
2026-05-19T02:26:11.576 [info] app.d:55:main Полный номер устройства enp6s0: 2301536 => 2866000
2026-05-19T02:26:11.576 [info] app.d:63:main Стабильный индекс интерфейса enp6s0: 3
2026-05-19T02:26:11.576 [info] app.d:67:main Новое имя сетевой карты enp6s0 [90:2b:34:dd:df:9d]: eth3