Вопрос или проблема
В моей стране есть блокировка сети, поэтому когда я использую “nmcli connection up uuid <UUID>
“, он всегда показывает “Установление соединения успешно”, а затем показывает “Сетевое соединение не удалось: неизвестная причина”. Сейчас я узнал, что Network Manager может вести журналы, мой вопрос заключается в том где находится журнал Network Manager?
К счастью, когда я использую графический интерфейс Linux Mint для включения VPN (графический интерфейс Network Manager > VPN соединения > мой VPN), это работает хорошо.
Обновление, пожалуйста, не говорите мне попробовать использовать OpenVPN, в моей стране этот способ заблокирован, так как слишком многие люди его используют.
Как упоминалось в комментариях, вы можете grep --color NetworkManager /var/log/syslog | less
, или лучше используйте journalctl
:
journalctl -u NetworkManager.service
-u
,--unit=UNIT|PATTERN
Показать сообщения для указанного системного блока unit UNIT (например, блок службы), или для любого из блоков, соответствующих шаблону PATTERN. […]
Вряд ли ваша страна может заблокировать использование OpenVPN. Скорее всего, они блокируют IP-адреса, порты, если только они не используют продвинутые техники глубокого анализа пакетов (DPI).
Ответ или решение
Чтобы посмотреть логи NetworkManager и найти причину ошибки "Network connection failed: unknown reason" при использовании nmcli
, необходимо выполнить несколько действий.
1. Просмотр логов NetworkManager
NetworkManager ведет логи, которые могут помочь диагностировать проблемы с подключением к сети. В зависимости от вашей конфигурации системы, логи могут находиться в разных местах. Основные команды для просмотра логов:
-
Systemd Journal: Это наиболее современный способ получения логов на большинстве дистрибутивов Linux. Для вывода логов NetworkManager вы можете использовать следующую команду:
journalctl -u NetworkManager.service
Эта команда отобразит все записи журнала, относящиеся к службе NetworkManager. Если вы хотите видеть только последние записи, добавьте флаг
-f
:journalctl -u NetworkManager.service -f
-
Файл syslog: Если ваша система записывает логи в syslog, вы можете использовать команду
grep
, чтобы отфильтровать записи, связанные с NetworkManager:grep --color NetworkManager /var/log/syslog | less
Это позволит вам просматривать все сообщения, относящиеся к NetworkManager, и может помочь найти дополнительные ошибки или предупреждения, которые произошли во время установки соединения.
2. Анализ логов
После получения логов вам нужно обратить внимание на следующие аспекты:
- Ошибки и предупреждения: Ищите строки, помеченные как "ERROR" или "WARNING". Они могут дать подсказки о причине сбоя подключения.
- Таймстемпы: Сравните время попытки подключения с логами, чтобы найти соответствующую запись.
- Состояние VPN: Поскольку вы упомянули, что VPN работает через GUI, посмотрите записи, связанные с успешным подключением через графический интерфейс, и сравните их с теми, что появляются при использовании
nmcli
.
3. Дополнительные параметры и настройки
Настройки лога могут быть изменены в файле конфигурации NetworkManager. Файл находится по следующему пути:
/etc/NetworkManager/NetworkManager.conf
В этом файле вы можете включить более подробное логирование, изменив или добавив следующие строки в секцию [main]
:
[main]
log-level=DEBUG
После внесения изменений перезапустите NetworkManager:
sudo systemctl restart NetworkManager.service
После этого проверьте логи снова, чтобы увидеть более детализированную информацию о процессе подключения.
Заключение
Просмотр логов NetworkManager — это эффективный способ диагностики проблем с сетевыми подключениями. Используйте команды journalctl
и grep
, чтобы исследовать логи, а также рассмотрите возможность изменения настроек логирования для получения более подробной информации. Важно внимательно анализировать сообщения об ошибках, чтобы выяснить, где именно происходит сбой в процессе установления VPN-соединения.