В Debian 12 можно изменить сетевые настройки и имя хоста следующим образом:
1. Изменение настроек сети
В Debian 12 сеть управляется systemd-networkd
или NetworkManager
, в зависимости от конфигурации.
Если используется systemd-networkd:
Файлы сетевых настроек находятся в /etc/systemd/network/
. Например, создадим или отредактируем файл:
sudo nano /etc/systemd/network/eth0.network
Пример статической настройки:
[Match]
Name=eth0
[Network]
Address=192.168.1.100/24
Gateway=192.168.1.1
DNS=8.8.8.8
После изменений перезапустите службу:
sudo systemctl restart systemd-networkd
Если используется NetworkManager:
Редактируем файл /etc/network/interfaces
:
sudo nano /etc/network/interfaces
Пример статической настройки:
auto eth0 iface eth0 inet static address 192.168.1.100 netmask 255.255.255.0 gateway 192.168.1.1 dns-nameservers 8.8.8.8
После изменений перезапустите сеть:
sudo systemctl restart networking
2. Изменение имени хоста
Измените имя в файле /etc/hostname
:
sudo nano /etc/hostname
Замените текущее имя на новое.
Затем отредактируйте /etc/hosts
:
sudo nano /etc/hosts
Измените строку с 127.0.1.1
на новое имя, например:
127.0.1.1 new-hostname
Примените изменения без перезагрузки:
sudo hostnamectl set-hostname new-hostname
После этого можете проверить изменения командой:
hostnamectl
Как определить что используеться systemd-networkd или NetworkManager?
Чтобы определить, какой сервис управляет сетью в Debian 12, можно выполнить несколько проверок:
1. Проверка, активен ли systemd-networkd
systemctl is-active systemd-networkd
Если ответ "active", значит используется systemd-networkd
.
Также можно проверить, включен ли он:
systemctl is-enabled systemd-networkd
Если ответ "enabled", то systemd-networkd
запускается при старте системы.
2. Проверка, активен ли NetworkManager
systemctl is-active NetworkManager
Если ответ "active", значит используется NetworkManager
.
Также можно проверить, включен ли он:
systemctl is-enabled NetworkManager
Если "enabled", значит NetworkManager
управляет сетью.
3. Проверка, какие службы работают с сетью
networkctl list
Если команда выводит список интерфейсов, то systemd-networkd
управляет сетью.
Либо:
nmcli device status
Если команда работает и выводит информацию об интерфейсах, значит сеть управляется NetworkManager
.
4. Проверка конфигурационных файлов
Если в системе есть файлы /etc/systemd/network/*.network
, значит, скорее всего, используется systemd-networkd
.
Если сеть настроена в /etc/network/interfaces
или управляется через GUI (nmcli
, nmtui
), вероятно, используется NetworkManager
.
Вывод:
-
Если
systemd-networkd
активен и включен — сеть управляет он. -
Если
NetworkManager
активен и включен — сеть управляет он. -
Если активны оба, обычно
NetworkManager
имеет приоритет.
Сетью управляет systemd-networkd но в каталоге /etc/systemd/network/ пусто, при этом на интерфейсе настроен ip адрес
Если сетью управляет systemd-networkd
, но каталог /etc/systemd/network/
пуст, а интерфейс уже настроен, возможны следующие варианты:
1. Адрес настроен вручную или через DHCP-клиент
Попробуйте проверить текущие настройки сети:
networkctl status
Вывод покажет активные интерфейсы и способ их настройки.
Если интерфейс получил IP-адрес автоматически, возможно, работает DHCP-клиент, например systemd-networkd
использует systemd-networkd-wait-online
или dhclient
.
Проверить службы DHCP можно так:
systemctl list-units --type=service | grep dhcp
Если запущен systemd-networkd
, но нет конфигурационных файлов, интерфейсы могут получать настройки через DHCP.
2. Настройки могут быть в /run/systemd/network/
или /lib/systemd/network/
Вместо /etc/systemd/network/
файлы конфигурации могут быть в других каталогах. Проверьте их:
ls /run/systemd/network/
ls /lib/systemd/network/
Системные файлы в /lib/systemd/network/
устанавливаются по умолчанию, и их можно переопределить в /etc/systemd/network/
.
3. Настройки могли быть применены вручную через ip
или ifconfig
Временные настройки интерфейсов можно проверить так:
ip addr show
Если IP-адрес назначен, но конфигурационных файлов нет, он мог быть установлен вручную командой ip addr add ...
или ifconfig
.
4. Используется NetworkManager или другое средство управления
Хотя systemd-networkd
запущен, проверьте, не вмешивается ли NetworkManager
:
systemctl is-active NetworkManager
Если активен, он может управлять некоторыми интерфейсами.
Можно проверить список устройств, которыми управляет NetworkManager
:
nmcli device status
Если интерфейс указан как "unmanaged", значит он управляется systemd-networkd
.
Что делать, если нет конфигурационных файлов?
Если хотите зафиксировать текущие настройки:
-
Создайте файл, например,
/etc/systemd/network/eth0.network
:sudo nano /etc/systemd/network/eth0.network
-
Добавьте настройки (замените
eth0
на ваш интерфейс):[Match] Name=eth0 [Network] Address=192.168.1.100/24 Gateway=192.168.1.1 DNS=8.8.8.8
-
Перезапустите
systemd-networkd
:sudo systemctl restart systemd-networkd
Если IP-адрес получен по DHCP, создайте конфигурацию:
[Match]
Name=eth0
[Network]
DHCP=yes
Затем перезапустите службу.
После этого настройки станут постоянными.
Определяем, что управляет сетью
Так как systemd-networkd
не работает, IP-адрес мог быть получен одним из следующих способов:
-
Через DHCP-клиент (
dhclient
илиdhcpcd
). -
Ручная настройка (
ip addr add ...
или в файле/etc/network/interfaces
). -
NetworkManager, даже если он запущен параллельно.
1. Проверяем, активен ли NetworkManager
systemctl is-active NetworkManager
Если ответ "active", то сетью управляет NetworkManager
. Проверить устройства можно так:
nmcli device status
2. Проверяем конфигурацию интерфейса в /etc/network/interfaces
cat /etc/network/interfaces
Если интерфейс ens192
там указан, значит, он настроен через этот файл.
3. Проверяем, работает ли DHCP-клиент
ps aux | grep dhclient
или
systemctl list-units --type=service | grep dhcp
Если dhclient
активен, значит IP-адрес был получен через DHCP.
4. Проверяем логи systemd
Можно посмотреть логи сетевых служб:
journalctl -u systemd-networkd --no-pager
или
journalctl -u networking --no-pager
Это поможет понять, какие службы взаимодействовали с сетью.
Если нужно включить systemd-networkd
-
Включаем и запускаем службу:
sudo systemctl enable --now systemd-networkd
-
Проверяем статус:
systemctl status systemd-networkd
-
Если конфигурация
/etc/systemd/network/
пуста, создаем файл дляens192
, например:sudo nano /etc/systemd/network/ens192.network
Пример настройки с DHCP:
[Match] Name=ens192 [Network] DHCP=yes
Или со статическим IP:
[Match] Name=ens192 [Network] Address=192.168.11.235/24 Gateway=192.168.11.115 DNS=8.8.8.8
-
Применяем настройки:
sudo systemctl restart systemd-networkd
и проверяем:
networkctl status
Если после перезапуска IP-адрес поменяется, значит, он выдавался DHCP-сервером.
Что это означает systemd-networkd и NetworkManager не запущены?
Если сеть настроена вручную через ifupdown, а не через systemd-networkd
или NetworkManager
.
Это объясняет, почему systemd-networkd
не запущен, но интерфейс ens192
имеет статический IP-адрес.
Разбор конфигурации
Файл /etc/network/interfaces
содержит:
-
allow-hotplug ens192
— интерфейс будет активирован при подключении. -
iface ens192 inet static
— статическая настройка IP. -
address 192.168.1.2/24
— IP-адрес и маска сети. -
gateway 192.168.1.254
— шлюз по умолчанию. -
dns-nameservers 192.168.1.150
— DNS-сервер. -
dns-search domain.local
— домен поиска.
Что делать дальше?
1. Если хотите оставить текущую настройку
Просто убедитесь, что служба networking
работает:
systemctl restart networking systemctl status networking
И проверьте сетевые настройки:
ip addr show ens192
ip route
cat /etc/resolv.conf # Проверка DNS
2. Если хотите переключиться на systemd-networkd
-
Отключите
ifupdown
:sudo systemctl disable --now networking
-
Создайте файл
/etc/systemd/network/ens192.network
:sudo nano /etc/systemd/network/ens192.network
Вставьте настройки:
[Match] Name=ens192 [Network] Address=192.168.1.2/24 Gateway=192.168.1.5 DNS=192.168.1.150 Domains=domain.local
-
Включите
systemd-networkd
:sudo systemctl enable --now systemd-networkd
-
Перезапустите интерфейс:
sudo ip link set ens192 down sudo ip link set ens192 up
После этого systemd-networkd
будет управлять сетью.
- Получить ссылку
- X
- Электронная почта
- Другие приложения
- Получить ссылку
- X
- Электронная почта
- Другие приложения
Комментарии
Отправить комментарий