Вопрос или проблема
У меня возникают проблемы с использованием vnc на 2 компьютерах в моей локальной сети. Оба работают на Ubuntu 24.04. Хотя в конечном итоге идея заключается в управлении любым из них извне.
Я использую tightvncserver и realVNC viewer на обоих.
Мой интернет-провайдер — Comcast, например, Xfinity
joe@joeslinux:/usr/bin$ ls -al tightvnc*
-rwxr-xr-x 1 root root 14648 Apr 23 2024 tightvncconnect
-rwxr-xr-x 1 root root 22688 Apr 23 2024 tightvncpasswd
-rwxr-xr-x 1 root root 20291 Apr 23 2024 tightvncserver
Хотя я использую realVNC viewer, я также попробовал tightvncconnect с ним, вот что происходит
joe@joeslinux:/usr/bin$ tightvncconnect
usage: tightvncconnect [-display Xvnc-display] host[:port]
Команда Xvnc для подключения к слушающему VNC viewer на указанном хосте и порту
joe@joeslinux:/usr/bin$
Я считаю, что я правильно настроил переадресацию портов.
Мой настольный компьютер находится по адресу 10.0.0.43, слушает на порту 5900.
Ноутбук по адресу 10.0.0.207, слушает на порту 5901. Скриншот внизу.
подключился к моему другому локальному компьютеру, используя
joe@joeslinux:/usr/bin$ tightvncconnect 10.0.0.207:5901
joe@joeslinux:/usr/bin$
Ничего не произошло. Появилась следующая строка приглашения.
Я попробовал запустить серверную команду.
joe@joeslinux:/usr/bin$ tightvncserver
New 'X' desktop is joeslinux:1
Starting applications specified in /home/joe/.vnc/xstartup
Log file is /home/joe/.vnc/joeslinux:1.log
Xvnc version TightVNC-1.3.10
Затем я попытался подключиться с помощью realVNC viewer. Я попробовал это как с моими внутренними, так и с внешними адресами. С внутренним я попробовал как с указанным номером порта, так и без него. Я даже не дошел до того, чтобы столкнуться с запросом пароля.
Я даже не уверен, работает ли моя переадресация портов на моем роутере, или мой начальный порт равен конечному порту. Мой интернет-провайдер заставляет меня настраивать мой роутер с помощью приложения на телефоне. Вот скриншот моей конфигурации.
Для справки я использовал:
https://www.xfinity.com/support/articles/port-forwarding-xfinity-wireless-gateway
Ответ или решение
Теория:
Ваше описание проблемы с подключением через VPN и VNC на двух компьютерах на Ubuntu 24.04 в локальной сети указывает на несколько потенциальных причин неудач. Учитывая, что вы используете TightVNC Server и RealVNC Viewer, а также ваши настройки маршрутизатора и портов, важно подробно рассмотреть возможные проблемы на каждом этапе подключения: настройка VNC, конфигурация сети, доступ к маршрутизатору, а также совместимость с программным обеспечением. Мы будем рассматривать последовательно все аспекты для нахождения решения.
Пример:
Начнем с проверки и настройки ваших серверных и клиентских приложений VNC.
-
Настройка VNC серверов:
Вы уже запустили TightVNC Server на ваших устройствах, согласно информации, где
tightvncserver
стартует новый "X" рабочий стол наjoeslinux:1
. Этот порт равен 5901 (так как по умолчанию номер дисплея 1 прибавляется к 5900). Для рабочего стола:0
порт будет 5900 и так далее.Убедитесь, что на обоих компьютерах VNC сервер запущен и слушает на правильных портах. Для первого компьютера это может быть порт 5900 (дисплей :0), а для второго 5901 (дисплей :1).
-
Подключение клиентом:
При использовании RealVNC Viewer вы упомянули, что не запрашивается даже пароль. Это указывает на то, что соединение не устанавливается вообще, что может быть связано с сетевой конфигурацией или неправильным указанием адреса и порта.
-
Конфигурация портов и маршрутизация:
Ваше описание того, как вы настроили перенаправление портов, важно, так как наиболее распространенной причиной таких проблем являются ошибки в маршрутизации.
-
Перенаправление портов: Проверьте в вашем маршрутизаторе, чтобы порты 5900 и 5901 перенаправлялись на соответствующие IP адреса ваших компьютеров (10.0.0.43 и 10.0.0.207 соответственно).
-
Внешний доступ: Имейте в виду, что ваш провайдер (Comcast, в данном случае) может защищать вас от нежелательного входящего трафика. Убедитесь, что ваша текущая сеть поддерживает входящие соединения с интернетовским IP на нужных портах.
-
Проверка сети: Используйте команды вроде
ping
иnmap
, чтобы убедиться в доступности ваших машин внутри сети, иtelnet
для проверки доступности порта.
-
Применение:
Теперь, имея в виду вышеизложенное, можно перейти к детальным рекомендациям.
-
Проверка состояния сервера VNC:
На каждом из ваших Ubuntu устройств выполните:
netstat -plnt | grep '590'
Это покажет, какие порты слушают, и убедитесь, что ваши серверы VNC правильно запущены.
-
Проверка сетевого соединения:
На компьютере, с которого вы пытаетесь подключиться, выполните:
telnet 10.0.0.207 5901
или
telnet 10.0.0.43 5900
Это покажет, доступен ли порт для подключения. Если telnet не удаётся подключиться, проблема, вероятно, в сети или маршрутизации.
-
Диагностика сети:
Проверьте, работают ли ваши порты извне с вашего внешнего IP:
- Используйте сторонние сервисы проверки портов для этого, если это необходимо.
-
Проверка внешней доступности:
Убедитесь, что ваш маршрутизатор правильно конфигурирует port forwarding:
- При использовании мобильного приложения удобство конфигурации может быть ограничено. Рассмотрите возможность доступа к web-интерфейсу вашего маршрутизатора, если это возможно.
-
Совместимость программного обеспечения:
Проверьте обновления и версии как серверного, так и клиентского программного обеспечения.
Эти шаги помогут выявить, в чем именно проблема, и последовательно её устранить. Если у вас всё так же не получается подключиться, обратитесь в поддержку вашего интернет-провайдера для исключения возможных блокировок и ограничений.