2010-07-28 163 views
3

我正在開發一個遠程桌面應用程序,使用戶能夠遠程連接到沒有靜態IP的計算機。 如何找到這樣的機器? 有一個網站logmein.com,它將客戶端安裝到本機以允許遠程桌面。 我不知道這個客戶端準確地做了什麼來允許這個過程! 謝謝。遠程桌面連接

回答

2

我不知道LogMeIn的網站,但http://copilot.com中間使用的服務器。 Live Mesh和Microsoft Groove也使用這種方法。

兩臺PC都連接到中間的服務器(服務器有一個固定的IP),服務器調度信號。這也將繞過所有(大多數)防火牆,因爲只有傳出連接。

2

最簡單的方法可能是在目標服務器上安裝一個小型實用程序,該實用程序會定期將其IP和名稱報告給某個Web服務。您的客戶端然後查詢該服務以確定服務器的當前IP地址並正常連接。

(很明顯,你想要有一個更復雜的方式來跟蹤哪個服務器不僅僅是名稱 - 沒有什麼能阻止兩個或更多的服務器報告相同的名稱和不同的地址,以便真正把事情扔回去)

1

由於遠程計算機連接到Logmein,Logmein知道遠程計算機的IP。

Teamviewer也在做類似於Logmein的事情,但需要用戶在遠程計算機上執行操作。

我現在使用Logmein,但我在VNC上使用了dyndns.org多年的成功。

Dyndns.org允許您定義一個TTL很短的主機。因此,每次機器的IP地址發生變化時,它都會告訴Dyndns.org什麼是新IP,因此主機會始終指向它。

因此,無論您用於連接遠程計算機的方法如何,請使用像dyndns.org這樣的服務或構建一個服務。

所以要解決你的問題,你必須使用

+0

感謝了很多,但如果遠程機器是一臺路由器 – Hadad 2010-07-28 09:07:10

+0

身後VNC你要打開的端口。使用Teamviewer&Logmein,與Copilot類似,這不是必需的。 – 2010-07-28 09:15:28

+0

這是偉大的,但我怎麼可以在.net中實現這個?我使用微軟終端服務庫連接到一個靜態IP機器,但它會幫助我在新的情況? – Hadad 2010-07-28 09:37:24

2

步驟:

  1. 因爲使用動態IP地址是不是一個好主意,你必須有一個域名來引用您的電腦在互聯網上。 如果您沒有人,請登錄註冊商網站(www.dnsexit.com或www.dyndns.com或其他網站),並從中獲得一個。每年最多15美元的成本。

  2. 如果您的計算機位於NAT路由器後面,請將您的計算機設置爲靜態IP,並設置路由器將端口3389上的傳入請求轉發至您的計算機IP。端口3389是遠程桌面的默認IP。您可以通過編輯Windows註冊表來更改它。 如果您的計算機直接連接到ISP(不含路由器),請繼續執行步驟3.

  3. 註冊動態DNS的免費新帳戶(例如www.dnsexit.com,www.dyndns。 com,其他)。您將在第4步中使用此ID和密碼。

  4. 從步驟3中註冊的動態DNS站點下載更新應用程序。將其安裝到您的計算機上並運行。 系統會提示您輸入ID和密碼。 通常這個更新程序作爲一個Windows服務。

  5. 嘗試從互聯網(而非局域網)連接到您的計算機。 如果你失敗了,請確保您的安全程序不會阻止端口3389

+0

如果你仍然有問題,讓我知道。我希望我能幫助你。 – xport 2010-07-28 09:47:26