Предисловие и выпуск
У меня есть сервер Ubuntu 21.10 (Impish), сеть которого управляется netplan и systemd-networkd.
Мой /etc/netplan/01-netcfg.yaml
выглядит так:
сеть:
версия: 2
визуализатор: сетевой
Ethernet:
эт0:
адреса:
- 1.2.3.4/32
- мертв:говядина:f00:ba1::2/64
маршруты:
- по ссылке: правда
до: 0.0.0.0/0
через: 1.2.1.2
- по ссылке: правда
по умолчанию
через: fe80::1
вланы:
эт0.1234:
идентификатор: 1234
ссылка: eth0
МТУ: 1400
адреса:
- 10.0.0.2/25
маршруты:
- по ссылке: правда
до: 10.0.0.128/24
через: 10.0.0.1
IP а
сообщает правильные IP-адреса для трех интерфейсов (lo, eth0, eth0.1234@eth0). Пинг и другой сетевой трафик работает (входящий/исходящий, внешний/влан).
Однако, когда я перезагружаю сервер, sshd.service
не запускается во время загрузки со следующей ошибкой:
14 декабря, 19:18:02 srvnme sshd[1380]: ошибка: привязка к порту 22 на dead:beef:f00:ba1::2 не удалась: невозможно назначить запрошенный адрес.
14 декабря, 19:18:02 srvnme sshd[1380]: ошибка: сбой привязки к порту 22 на 1.2.3.4: невозможно назначить запрошенный адрес.
14 декабря, 19:18:02 srvnme sshd[1380]: фатальный: невозможно привязать ни один адрес.
Во время загрузки сервер не показывает никаких проблем, связанных с интерфейсом.
14 декабря 19:18:02 ядро srvnme: [ 1.240607] r8169 0000:22:00.0 eth0: RTL8168h/8111h, de:ad:be:ef:f0:00, XID 541, IRQ 154
14 декабря 19:18:02 ядро srvnme: [ 1.240738] r8169 0000:22:00.0 eth0: jumbo features [кадры: 9194 байт, контрольная сумма tx: ko]
14 декабря 19:18:02 ядро srvnme: [ 5.046402] r8169 0000:22:00.0 eth0: ссылка не работает
14 декабря, 19:18:03 ядро srvnme: [8.054249] r8169 0000:22:00.0 eth0: канал активен — 1 Гбит/с/полный — управление потоком rx/tx
14 декабря 19:18:03 ядро srvnme: [8.054273] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: ссылка готова
Как уже говорилось, после перезагрузки сервера мне нужно подключить KVM к серверу, чтобы перезапустить сервер OpenSSH, чтобы снова иметь возможность подключиться к серверу по ssh.
Нерабочие решения (пока)
Я отредактировал конфигурацию сервера OpenSSH (systemctl редактировать sshd
) и попробовал два подхода:
[Ед. изм]
Требуется = systemd-networkd.service
После = systemd-networkd.service
BindsTo=systemd-networkd.service
[Ед. изм]
Хочет=network-online.target
After=network-online.target
Оба подхода не имели никакого эффекта.
Как исправить OpenSSH не запускается при загрузке сервера проблема?