Difference between revisions of "Networking/ru"
Views
Actions
Namespaces
Variants
Tools
(Created page with "==Использование systemd==") |
(Created page with "Затем запустите и включите службу dhcpcd {{UserCmd|command=sudo systemctl start --now dhcpcd.service}}") |
||
(24 intermediate revisions by 2 users not shown) | |||
Line 4: | Line 4: | ||
=Обзор= | =Обзор= | ||
Сеть в Manjaro, как правило, работает из коробки без какого-либо специального вмешательства пользователя. В этой статье представлены некоторые специфические обстоятельства, с которыми могут столкнуться некоторые пользователи и даны советы по их преодолению. | |||
Line 10: | Line 10: | ||
=Ручная настройка DNS-серверов= | =Ручная настройка DNS-серверов= | ||
Обычно DNS-серверы предоставляются провайдером автоматически через DHCP. Однако иногда необходимо использовать DNS-серверы, отличные от предоставленных провайдером. В такой ситуации Вы можете обнаружить, что адреса ваших DNS или других нестандартных серверов имен сбрасываются при перезагрузке, поскольку {{ic|/etc/resolv.conf}} может быть перезаписан NetworkManager или в процессе загрузки. Здесь мы рассмотрим некоторые методы сохранения ваших настроек. | |||
==NetworkManager== | ==NetworkManager== | ||
Если вы используете NetworkManager - это одно из решений проблемы. Каталог conf.d NetworkManager находится в <code>/etc/NetworkManager/conf.d</code>. Там Вы можете разместить фрагменты, управляющие работой NetworkManager. Файлы должны иметь имя с номером и описанием его назначения и всегда заканчиваться {{ic|.conf}}. Файлы применяются в числовом порядке от низшего к высшему. Конфигурация в файле с большим номером отменяет то, что могло быть настроено в файле с меньшим номером. | |||
===Использование resolvconf=== | ===Использование resolvconf=== | ||
Line 27: | Line 27: | ||
rc-manager=resolvconf | rc-manager=resolvconf | ||
Чтобы эффективно сделать обработку DNS ручной задачей, создайте файл с именем | |||
/etc/NetworkManager/conf.d/99-dont-touch-my-dns.conf | /etc/NetworkManager/conf.d/99-dont-touch-my-dns.conf | ||
Сохраните файл с таким содержимым | |||
[main] | [main] | ||
Line 39: | Line 39: | ||
==/etc/resolvconf.conf== | ==/etc/resolvconf.conf== | ||
Файл resolvconf.conf - это сценарий shell , используемый resolvconf, а это значит, что resolvconf.conf должен содержать правильные команды оболочки. Посмотрите его [https://jlk.fjfi.cvut.cz/arch/manpages/man/resolvconf.conf.5 man page] для получения более подробной информации и команд. Файл расположен по адресу {{ic|/etc/resolvconf.conf}} и для его редактирования требуются права root. Для получения дополнительной информации о том, как редактировать файл конфигурации, принадлежащий root, пожалуйста, просмотрите [[Viewing_and_editing_configuration_files/ru|эту_статью]]. | |||
В качестве примера мы добавим серверы имен OpenDNS в верхнюю часть нашего файла resolvconf при каждом вызове. Мы можем добиться этого, добавив следующие строки в нижнюю часть файла resolvconf.conf. | |||
# OpenDNS servers | # OpenDNS servers | ||
name_servers="208.67.222.222 208.67.220.220" | name_servers="208.67.222.222 208.67.220.220" | ||
После внесения изменений просто обновите и примените настройки с помощью следующей команды | |||
{{UserCmd|command=sudo resolvconf -u}} | |||
==dhcpcd и resolv.conf.head/tail== | ==dhcpcd и resolv.conf.head/tail== | ||
{{note| | {{note|Большинство установок Manjaro не будут использовать dhcpd по умолчанию}} | ||
Альтернативным решением, если вы используете dhcpd, является ввод наших настроек в файл {{ic|/etc/resolv.conf.head}}. Если этот файл не существует - создайте его. Содержимое {{ic|/etc/resolv.conf.head}} будет отправлено в начало {{ic|/etc/resolv.conf}} во время процесса загрузки. | |||
Следуя нашему предыдущему примеру: если мы хотим использовать серверы OpenDNS с помощью этого метода, то должны поместить в файл следующее: | |||
# OpenDNS servers | # OpenDNS servers | ||
nameserver 208.67.222.222 | nameserver 208.67.222.222 | ||
Line 70: | Line 69: | ||
==Использование графической утилиты== | ==Использование графической утилиты== | ||
Большинство редакций Manjaro поставляются с каким-либо GUI-инструментом или апплетом для управления NetworkManager. Это самый простой способ установить статический IP. Просто зайдите в инструмент, который обычно находится в системном трее или меню, и введите необходимые параметры для вашей сети. | |||
==Использование systemd== | ==Использование systemd== | ||
Если вы не хотите использовать NetworkManager, следующий простой способ - настроить статический IP в systemd. | |||
Во-первых, убедитесь, что у вас не запущен NetworkManager | |||
{{UserCmd|command=sudo systemctl disable --now NetworkManager.service}} | |||
Далее вам нужно будет найти имя сетевого устройства. Чтобы найти имя, используйте команду {{ic|ip a}}, как показано здесь: | |||
<pre>ip a | <pre>ip a | ||
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 | 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 | ||
Line 99: | Line 98: | ||
lo | lo - это устройство loopback, которое можно игнорировать для целей данной статьи. Устройство, которое нам здесь нужно, обозначено выше как {{ic|ens33}}. Это имя понадобится нам на следующем этапе. | ||
Теперь создайте или отредактируйте файл для хранения сетевой конфигурации по адресу {{ic|/etc/systemd/network/devicename.network}}. Используя пример выше, файл будет называться {{ic|/etc/systemd/network/ens33.network}}. Этот файл нужно будет создать/отредактировать от имени root. Более подробную информацию о том, как это сделать, вы найдете в [[Viewing_and_editing_configuration_files/ru|этой статье]]. Пример содержимого файла выглядит следующим образом: | |||
<pre>[Match] | <pre>[Match] | ||
Name=enp0s3 | Name=enp0s3 | ||
Line 114: | Line 113: | ||
Остается только запустить и включить службу с помощью: | |||
{{UserCmd|command=sudo systemctl enable --now systemd-networkd.service}} | |||
NetworkManager | =Использование dhcpcd вместо NetworkManager= | ||
NetworkManager является решением по умолчанию для работы в сети в большинстве редакций Manjaro. Если Вы предпочитаете использовать dhcpcd - он также поддерживается. | |||
Во-первых, убедитесь, что NetworkManager отключен и не запущен | |||
{{UserCmd|command=sudo systemctl disable --now NetworkManager.service}} | |||
Затем запустите и включите службу dhcpcd | |||
{{UserCmd|command=sudo systemctl start --now dhcpcd.service}} | |||
= | =Смотрите также= | ||
* [https://blogs.gnome.org/dcbw/2015/02/16/networkmanager-for-administrators-part-1/ NetworkManager for Administrators] | * [https://blogs.gnome.org/dcbw/2015/02/16/networkmanager-for-administrators-part-1/ NetworkManager for Administrators] | ||
* [https://wiki.archlinux.org/ | * [https://wiki.archlinux.org/title/NetworkManager#/etc/resolv.conf Использование resolvconf с NetworkManager] | ||
[[Category:Contents Page{{#translation:}}]] | [[Category:Contents Page{{#translation:}}]] |
Latest revision as of 16:23, 2 January 2023
Обзор
Сеть в 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"
После внесения изменений просто обновите и примените настройки с помощью следующей команды
dhcpcd и resolv.conf.head/tail
Альтернативным решением, если вы используете 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
Далее вам нужно будет найти имя сетевого устройства. Чтобы найти имя, используйте команду 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
Остается только запустить и включить службу с помощью:
Использование dhcpcd вместо NetworkManager
NetworkManager является решением по умолчанию для работы в сети в большинстве редакций Manjaro. Если Вы предпочитаете использовать dhcpcd - он также поддерживается.
Во-первых, убедитесь, что NetworkManager отключен и не запущен
Затем запустите и включите службу dhcpcd