2010-07-28 4 views
3

Я разрабатываю приложение удаленного рабочего стола, которое позволяет удаленно подключаться к компьютеру, не имеющему статического IP-адреса. Как найти такую ​​машину? есть сайт logmein.com, который устанавливает клиент на компьютер, чтобы разрешить удаленный рабочий стол. Я не знаю, что этот клиент делает, чтобы разрешить этот процесс! Спасибо.Удаленное подключение к рабочему столу

ответ

2

Я не знаю сайт LogMeIn, но http://copilot.com использует сервер в середине. Кроме того, этот подход использует Live Mesh и Microsoft Groove.

Оба компьютера подключаются к серверу посередине (сервер имеет фиксированный IP-адрес), и сервер отправляет сигналы. Это также обходит все (большинство) брандмауэров, потому что есть только исходящие соединения.

2

Самый простой способ, вероятно, состоит в том, чтобы на вашем целевом сервере была установлена ​​небольшая утилита, которая где-то периодически сообщает свой IP-адрес и имя веб-службе. Затем ваш клиент запрашивает службу для определения текущего IP-адреса сервера и подключается как обычно.

(Очевидно, что вы хотите иметь более сложный способ отслеживания того, какой сервер является чем-то вроде имени - нет ничего, что останавливало бы двух или более серверов, сообщающих одно и то же имя и разные адреса, чтобы действительно бросать вещи для цикла)

1

Logmein знает IP вашего удаленного компьютера, потому что удаленная машина подключена к Logmein.

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

Я теперь использую Logmein, но я использовал dyndns.org в комбинации на VNC в течение многих лет с большим успехом.

Dyndns.org позволяет определить хост с очень коротким TTL. Поэтому каждый раз, когда IP-адрес вашего компьютера изменяется, он сообщает Dyndns.org, что такое новый IP-адрес, поэтому хост всегда будет указывать на него.

Таким образом, независимо от метода, который вы используете для подключения к удаленному компьютеру, используйте службу, например dyndns.org, или создайте ее.

Итак, чтобы решить вашу проблему, вы должны использовать

+0

Спасибо большое, но что, если удаленный компьютер находится за маршрутизатором – Hadad

+0

С VNC вы должны открыть порт. С Teamviewer & Logmein, похожего на Copilot, это необязательно. – 2010-07-28 09:15:28

+0

Это здорово, но как я могу реализовать это в .net? Я использую библиотеку служб терминалов microsoft для подключения к статическим ip-машинам, но поможет ли мне это в новом сценарии? – Hadad

2

Шаги:

  1. Поскольку использование динамического IP-адреса не является хорошей идеей, вы должны иметь доменное имя, чтобы ссылаться на ваш компьютер в Интернете. Если у вас нет никого, посетите сайт регистратора (www.dnsexit.com или www.dyndns.com или другие) и получите его. Стоимость не более 15 долларов США в год.

  2. Если ваш компьютер находится за NAT-маршрутизатором, установите компьютер со статическим IP-адресом и настройте маршрутизатор для пересылки входящего запроса на порт 3389 на IP-адрес вашего компьютера. Порт 3389 - это IP-адрес по умолчанию для удаленного рабочего стола. Вы можете изменить его, если хотите, отредактировав реестры Windows. Если компьютер подключен напрямую к ISP (без маршрутизатора), перейдите к шагу 3.

  3. Зарегистрируйте бесплатную новую учетную запись для динамического DNS с динамическим DNS-сайтом (например, www.dnsexit.com, www.dyndns. com, другие). Вы будете использовать этот идентификатор и пароль на шаге 4.

  4. Загрузите приложение для обновления с динамического сайта DNS, с которого вы зарегистрируетесь на шаге 3. Установите его на свой компьютер и запустите. Вам будет предложено ввести идентификатор и пароль. Обычно этот обновитель работает как служба Windows.

  5. Попробуйте подключиться к компьютеру из Интернета (не LAN). Если вы терпите неудачу, пожалуйста, убедитесь, что ваша программа безопасности не блокирует порт 3389.

+0

Если у вас все еще есть проблемы, сообщите мне. Надеюсь, я могу вам помочь. – xport

Смежные вопросы