Вы находитесь в режиме поиска по сайту.
9
сентября
2021
17:17

Устранение проблемы "Системная ошибка" при выполнении команды ping

9 сентября 2021 17:17

При выполнении команды ping в Linux может возникнуть системная ошибка. Причина её неочевидная.

Причина кроется в системе разрешения имён.

1. Отключение WINS:

Возможная причина ошибки - в использовании службы WINS при разрешении имён компьютеров, которое включается перед разрешением DNS, и "рушит" всю цепочку определения IP адреса по имени.

1) с использованием команды sudo nano исправить файл "/etc/nsswitch.conf":

sudo nano /etc/nsswitch.conf

2) полностью удалить из файла "nsswitch.conf" упоминание "wins".

3) Перезапустить службу сети:

sudo service networking restart
или
sudo systemctl restart metworking

2. Указание правильного DNS севера

Проверка, что разрешение имён проходи корректно:
nslookup ya.ru

Если возникла ошибка
nslookup ya.ru
Server: 127.0.0.53
Address: 127.0.0.53#53
` ** server can't find ya.ru: SERVFAIL`

значит проблема в локальной службе DNS. Исправить ошибку можно двумя способами:

СПОСОБ 1:
1) запускаем терминал и переходим в папку
cd /etc/resolvconf/resolv.conf.d

2) редактируем файл base

nano base

или одной командой с указанием полного имени файла:
sudo nano /etc/resolvconf/resolv.conf.d/base

Внимание! Если указать неправильный IP адрес сервера, возникнет ошибка "Временный сбой в разрешении имен"
Поэтому лучше файл base оставить пустым - см. РЕШЕНИЕ 2.

В файле base можно указать или исправить нестандартный DNS сервер:
Например,

nameserver 77.88.8.1

или, например, DNS своего провайдера (109.172.10.70 - DNS Ростелеком).

СПОСОБ 2:

То же самое проделываем с файлом /etc/network/interfaces, если в нём указан параметр dns-nameservers:
cat /etc/network/interfaces | grep dns-nameservers
и редактируем ip-адреса серверов - можно указать несколько через пробел.

Сохраняем изменения в файл interfaces.

3) после этого перезапускаем службу "networking":

sudo service networking restart
или
sudo systemctl restart metworking

Диагностика сетевой службы "networking.service"

sudo systemctl status networking
sudo journalctl -xe

3. Устранение ошибки "Job for networking.service failed because the control process exited with error code."

РЕШЕНИЕ:

sudo systemctl stop NetworkManager
sudo systemctl disable NetworkManager

4. Устранение ошибок "RTNETLINK answers: File exists ifup: failed to bring up" и "Произошел сбой юнита networking.service" и "systemd[1]: Failed to start Raise network interfaces."

РЕШЕНИЕ:

sudo ip addr flush dev enp2s0
sudo systemctl restart networking

5. Устраняем причину ошибки "Временный сбой в разрешении имен" и "ping: ya.ru: Временный сбой в разрешении имен"

Ищем ошибки в файлах /etc/resolvconf/resolv.conf.d/base и /etc/network/interfaces.

*Файл /etc/network/interfaces:*

Настройка для статического IP адреса ПК:

auto lo
iface lo inet loopback
` auto enp2s0 allow-hotplug enp2s0`

iface enp2s0 inet static
address 192.168.0.70
netmask 255.255.255.0
network 192.168.0.0
broadcast 192.168.0.255
gateway 192.168.0.1
dns-nameservers 192.168.0.1 77.88.8.1 8.8.8.8
dns-search local

Настройка для динамического ip-адреса ПК (DHCP):

auto lo
iface lo inet loopback
` allow-hotplug enp2s0 auto enp2s0 iface eth0 inet dhcp`

*Файл `/etc/resolvconf/resolv.conf.d/base: строчкуnameserverлучше закомментировать:** # nameserver 192.168.0.1`

Для применения изменений выполнить команду
sudo systemctl restart networking

6. Убираем апплет "Network Manager" из автозагрузки и панели задач

Если используется статический IP-адрес, апплет "Network Manager" не нужен, он занимает свободное место не экране.

В LXQT
Пуск - Настройки - Настройки LXQt - Настройки сеанса - снять галочку против "Сеть" (/etc/xdg/autostart/nm-applet.desktop), нажать "Закрыть"".

"Пуск" - "Выйти" - "Выйти из системы" и войти снова.

7. Как проверить, динамический или статический IP адрес?

Команда
ip addr

Вывод команды для динамического IP адреса содержит слово "dynamic".

Комментарии: 0


Похожие публикации