Какая утилита использует / etc / network / interfaces

1000
Arkonix

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

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

1

2 ответа на вопрос

4
grawity

И 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инструменту очень не хватает. Это делает работу хорошо, если вы хотите, интерфейс должен быть настроен все время, хотя.
  • Для более сложных конфигураций, вы, возможно, придется написать свой собственный сценарий (обычно Type = ONESHOT Systemd сервис), который напрямую вызывает ipи iwинструменты, и настраивает все.
`net-tools` имеет` ifconfig`, `iproute2` имеет` ip`. heemayl 7 лет назад 0
3
PaterSiul

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

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

Предполагая, что вы хотите статическую конфигурацию, создайте /etc/systemd/network/50-wired.networkсо следующим содержимым (конечно же, меняя имя, адрес и Gatway в соответствии с вашей сетью): [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

Похожие вопросы