2013-04-15 34 views
1

我如何創建wcf服務的代理服務,該服務在我的家用電腦上從外部或從我的辦公室PC運行。當我連接我的家用電腦到互聯網然後ISP分配一個動態IP到該電腦。我的家用電腦沒有固定或靜態IP。如何通過WCF服務從外側訪問我的家用電腦

如果我知道我的家用電腦動態IP,那麼我可以創建從我的辦公室電腦上運行在我的家用電腦上的wcf服務代理。 wcf客戶端將運行在我的辦公室電腦和wcf服務將運行在我的家用電腦。

所以這是情況。

如果有人將我的家用電腦的動態IP作爲可達到我的wcf服務的結果,那就足夠了。所以請告訴我爲了達到在家用電腦上運行的wcf服務,必須獲得什麼信息。

請給我這個想法如何在我的辦公室運行wcf客戶端,這可以連接到運行在我的家用電腦上的wcf服務並交換一些數據。請給我充分的指示,因爲我的辦公室電腦可以連接到我的家用電腦上運行的wcf服務的wcf客戶端。

有人告訴我用一個通用的方法來解決這個問題,就是使用動態DNS,比如No-IP http://www.noip.com/。他說:「DDNS服務允許您使用固定的名稱訪問您的家庭計算機,如yoursite.no-ip.org。它需要您的家庭計算機運行一個小型客戶端程序,與提供商的服務器通信以更新DNS記錄你的名字,只要你的IP地址發生變化

假設我對No-IP http://www.noip.com/不感興趣。

只是給我的想法,如果我知道我的wcf服務正在運行的機器的動態IP,那麼我怎麼能連接我的wcf客戶端從辦公室pc到wcf服務,這是我的家用pc上運行的動態IP對我來說。尋找良好的討論。謝謝

回答

3

你需要4件事正確設置:

  1. 您當地的WCF服務壽ld啓動並運行:從本地PC上測試它,看它是否正常工作。
  2. 您的本地Windows防火牆必須允許連接到您的端口:爲了測試這一點,您可以嘗試從家中的其他計算機連接到WCF服務。
  3. 您的路由器必須將給定端口重定向到本地PC:可能將8080端口路由器連接到本地PC的80端口。它是從路由器配置設置完成的。
  4. 動態DNS正確指向您的家庭DSL:可能您的DSL路由器將在配置中有一個選項卡,允許它連接到動態DNS服務。爲了測試這個檢查你的動態DNS名稱解析爲您

諮詢:在AWS(也許天青)一個小小的虛擬服務器是免費的,也許一個有趣的選擇...

+0

謝謝你的回答。我網絡很差,很多東西不清楚你的答案。第3點和第4點不清楚。不清楚你說你的路由器的端口8080到本地PC的80端口。它是從路由器配置設置完成的。請詳細解釋第3點和第4點,詳細說明如何啓用事項以及如何測試並確保一切正常。 – Thomas

+0

我不熟悉Azure這個詞。所以你可以將我重定向到一些好文章,這可以幫助我詳細瞭解Azure是什麼,以及如何使用它來部署任何服務。請詳細回答第3和第4點。謝謝 – Thomas

+1

**步驟3 **:您有哪臺路由器?請查看此鏈接(http://www.dslreports.com/faq/7074)以瞭解如何在完全不同的路由器中執行此操作的示例。谷歌爲你的。這個想法是在你的DSL中選擇一個外部端口(即使我是互聯網上的任何人都可以訪問),並將它重定向到你的電腦的端口。在我的示例中,我提出了使用內部端口80的外部端口8080.只要未使用,外部端口可以是任何形式 –

0

你的wcf代理運行在你的家用電腦上,運行在一個端口上。您需要將該端口從您的路由器映射到您的PC,以便您可以從外部訪問它。使用No-IP的您可以創建一個「靜態」的DNS記錄,讓你到你的電腦

Home.No-Ip.org:1234

而不是使用,你也可以只使用你的IP地址,這是由ISP提供的。請注意,如果這可能會發生變化,您需要每次更改時更新它。

假設您將端口1234映射到您的電腦,並且運行wcf服務的端口是正確的。

下一個你需要讓客戶端知道那裏的服務,所以你需要設置有服務的終點,終點則包括了Home.No-Ip.org:1234/someEndPointName

取決於你的工作的防火牆設置地方和你的家庭網絡這應該工作,我不知道,但知道家裏的連接之間發生的事情或工作

+0

我做不想使用No-Ip實用程序,而是想從我的辦公室訪問我的wcf服務。所以引導我需要跟進的步驟。謝謝 – Thomas