Я хочу добавить псевдонимы к своим сетевым ссылкам, чтобы использовать их в качестве кратких описаний. Я настраиваю свои интерфейсы с помощью systemd-networkd, имея systemd версии 241 на сервере debian buster.
Я создал файл -rw-r--r-- 1 root root 68 Feb 9 12:53 /etc/systemd/network/ens19.link
с содержанием:
[MATCH]
MACAddress=7a:08:e8:12:fc:c7
[LINK]
Alias=myalias
Пытался перезагрузить систему, но алиас не появляется:
3: ens19: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000
link/ether 7a:08:e8:12:fc:c7 brd ff:ff:ff:ff:ff:ff
Делать ip l set ens19 alias myalias
дает желаемый результат:
3: ens19: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000
link/ether 7a:08:e8:12:fc:c7 brd ff:ff:ff:ff:ff:ff
alias myalias
Как я могу добиться этого с помощью systemd-networkd?
Я должен был прочитать руководство внимательнее.
Применяется первый (в лексическом порядке) из файлов ссылок, соответствующих данному устройству. Обратите внимание, что файл по умолчанию 99-default.link поставляется системой. Следовательно, любая предоставленная пользователем .link должна иметь лексически более раннее имя, чтобы вообще рассматриваться.
Переименование /etc/systemd/network/ens19.link
к /etc/systemd/network/00-ens19.link
помогло.
[MATCH]
должно быть [Match]
и [LINK]
должно быть [Link]
.
Чтобы применить измененный файл .link к ссылке, я могу перезагрузить или запустить
udevadm test-builtin net_setup_link /sys/class/net/ens19
(Поскольку файлы .link обрабатываются udev, а не systemd-networkd, перезапуска systemd-networkd недостаточно.)
Согласно systemd.network псевдонимы ссылок не поддерживаются (пока?).