Manjaro Сетевое взаимодействие

Сетевое взаимодействие

From Manjaro
This page is a translated version of the page Networking and the translation is 100% complete.
Other languages:
English • ‎русский

Обзор

Сеть в Manjaro, как правило, работает из коробки без какого-либо специального вмешательства пользователя. В этой статье представлены некоторые специфические обстоятельства, с которыми могут столкнуться некоторые пользователи и даны советы по их преодолению.


Ручная настройка DNS-серверов

Обычно DNS-серверы предоставляются провайдером автоматически через DHCP. Однако иногда необходимо использовать DNS-серверы, отличные от предоставленных провайдером. В такой ситуации Вы можете обнаружить, что адреса ваших DNS или других нестандартных серверов имен сбрасываются при перезагрузке, поскольку /etc/resolv.conf может быть перезаписан NetworkManager или в процессе загрузки. Здесь мы рассмотрим некоторые методы сохранения ваших настроек.


NetworkManager

Если вы используете NetworkManager - это одно из решений проблемы. Каталог conf.d NetworkManager находится в /etc/NetworkManager/conf.d. Там Вы можете разместить фрагменты, управляющие работой NetworkManager. Файлы должны иметь имя с номером и описанием его назначения и всегда заканчиваться .conf. Файлы применяются в числовом порядке от низшего к высшему. Конфигурация в файле с большим номером отменяет то, что могло быть настроено в файле с меньшим номером.

Использование resolvconf

Чтобы скрипт resolvconf обрабатывал файл resolv.conf для NetworkManager. Создайте файл конфигурации в каталоге NetworkManager conf.d

/etc/NetworkManager/conf.d/20-rc-manager.conf

Сохраните файл с таким содержимым

[main]
rc-manager=resolvconf

Чтобы эффективно сделать обработку DNS ручной задачей, создайте файл с именем

/etc/NetworkManager/conf.d/99-dont-touch-my-dns.conf

Сохраните файл с таким содержимым

[main]
dns=none


/etc/resolvconf.conf

Файл resolvconf.conf - это сценарий shell , используемый resolvconf, а это значит, что resolvconf.conf должен содержать правильные команды оболочки. Посмотрите его man page для получения более подробной информации и команд. Файл расположен по адресу /etc/resolvconf.conf и для его редактирования требуются права root. Для получения дополнительной информации о том, как редактировать файл конфигурации, принадлежащий root, пожалуйста, просмотрите эту_статью.


В качестве примера мы добавим серверы имен OpenDNS в верхнюю часть нашего файла resolvconf при каждом вызове. Мы можем добиться этого, добавив следующие строки в нижнюю часть файла resolvconf.conf.

# OpenDNS servers
name_servers="208.67.222.222 208.67.220.220"


После внесения изменений просто обновите и примените настройки с помощью следующей команды

user $ sudo resolvconf -u COPY TO CLIPBOARD


dhcpcd и resolv.conf.head/tail

Note
Большинство установок Manjaro не будут использовать dhcpd по умолчанию


Альтернативным решением, если вы используете dhcpd, является ввод наших настроек в файл /etc/resolv.conf.head. Если этот файл не существует - создайте его. Содержимое /etc/resolv.conf.head будет отправлено в начало /etc/resolv.conf во время процесса загрузки.


Следуя нашему предыдущему примеру: если мы хотим использовать серверы OpenDNS с помощью этого метода, то должны поместить в файл следующее:

# OpenDNS servers
nameserver 208.67.222.222
nameserver 208.67.220.220


Настройка статического IP-адреса

Использование графической утилиты

Большинство редакций Manjaro поставляются с каким-либо GUI-инструментом или апплетом для управления NetworkManager. Это самый простой способ установить статический IP. Просто зайдите в инструмент, который обычно находится в системном трее или меню, и введите необходимые параметры для вашей сети.


Использование systemd

Если вы не хотите использовать NetworkManager, следующий простой способ - настроить статический IP в systemd.


Во-первых, убедитесь, что у вас не запущен NetworkManager

user $ sudo systemctl disable --now NetworkManager.service COPY TO CLIPBOARD



Далее вам нужно будет найти имя сетевого устройства. Чтобы найти имя, используйте команду ip a, как показано здесь:

ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether 00:0c:29:02:55:c4 brd ff:ff:ff:ff:ff:ff
    inet 172.16.197.200/24 brd 172.16.197.255 scope global dynamic noprefixroute ens33
       valid_lft 1725sec preferred_lft 1725sec
    inet6 fe80::7116:2769:dac:6314/64 scope link noprefixroute 
       valid_lft forever preferred_lft forever


lo - это устройство loopback, которое можно игнорировать для целей данной статьи. Устройство, которое нам здесь нужно, обозначено выше как ens33. Это имя понадобится нам на следующем этапе.


Теперь создайте или отредактируйте файл для хранения сетевой конфигурации по адресу /etc/systemd/network/devicename.network. Используя пример выше, файл будет называться /etc/systemd/network/ens33.network. Этот файл нужно будет создать/отредактировать от имени root. Более подробную информацию о том, как это сделать, вы найдете в этой статье. Пример содержимого файла выглядит следующим образом:

[Match]
Name=enp0s3

[Network]
Address=192.168.1.101/24
Gateway=192.168.1.1
DNS=208.67.222.222
DNS=208.67.220.220


Остается только запустить и включить службу с помощью:

user $ sudo systemctl enable --now systemd-networkd.service COPY TO CLIPBOARD


Использование dhcpcd вместо NetworkManager

NetworkManager является решением по умолчанию для работы в сети в большинстве редакций Manjaro. Если Вы предпочитаете использовать dhcpcd - он также поддерживается.


Во-первых, убедитесь, что NetworkManager отключен и не запущен

user $ sudo systemctl disable --now NetworkManager.service COPY TO CLIPBOARD



Затем запустите и включите службу dhcpcd

user $ sudo systemctl start --now dhcpcd.service COPY TO CLIPBOARD


Смотрите также

Cookies help us deliver our services. By using our services, you agree to our use of cookies.