1

Я пытаюсь настроить сеть WiFi с помощью dnsmasq на ArchLinux, где у меня есть NetworkManager и iproute2 (в ArchLinux больше нет net-tools ).

Поскольку я читаю некоторые учебники, они часто ссылаются на /etc/network/interfaces при настройке статического ip для сетевого интерфейса Wi-Fi. Этот файл также актуален в системах с net-tools или я должен использовать iproute2 CLI для настройки статического IP-адреса?

2 ответа2

4

И ifrouf2, и iproute2, и утилиты net-tools являются низкоуровневыми инструментами, которые могут изменять все параметры напрямую, но не имеют какого-либо постоянного файла конфигурации.

Файл interfaces используется "ifupdown", инструментом настройки сети более высокого уровня, который существует только в Debian и его производных, но не в Arch Linux. (За кулисами он использовать либо iproute2 или Ifconfig, но это ничего не меняет.)

  • Самым похожим пакетом на Arch был бы netctl, хотя он немного хрупкий.
  • Конечно, поскольку у вас уже установлен NetworkManager, вы можете просто использовать его, но, с другой стороны, это может помешать настройке сети Wi-Fi. (Если вы не используете встроенную функцию горячей точки NM ...) Конфигурацией можно управлять через nmcli ; см. также nm-settings (5).
  • Другой вариант, который поставляется с Arch, является Systemd-networkd - это просто настроить (см systemd.network (5) вручную) , но его networkctl инструмент serverely недоставало. Это делает работу хорошо , если вы хотите , интерфейс должен быть настроен все время, хотя.
  • Для более сложных конфигураций вам, возможно, придется написать свой собственный скрипт (обычно это системный сервис Type = oneshot), который напрямую вызывает инструменты ip и iw и настраивает все.
3

AFAIK /etc /network /interfaces - это, в основном, Debian и потомки. У меня нет этой папки ни на одной из моих архивных машин.

Я предполагаю, что вы не говорите о WiFi здесь. Если да, взгляните на netctl или systemd-networkd.

Предполагая, что вам нужна статическая конфигурация, создайте /etc/systemd/network/50-wired.network со следующим содержимым (конечно же, меняя имя, адрес и шлюз в соответствии с вашей сетью): [Match] Name=enp1s0 [Network] Address=10.1.10.9/24 Gateway=10.1.10.1

Отключить NetworkManager:

# systemctl stop NetworkManager.service

# systemctl disable NetworkManager.service

Включите и запустите systemd-networkd.service:

# systemctl start systemd-networkd.service

# systemctl enable systemd-networkd.service

После того, как вы настроили dnsmasq, чтобы сделать то, что вы хотели, вы активируете и запустите его:

# systemctl start dnsmasq.service

# systemctl enable dnsmasq.service

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .