2012-03-06 80 views
1

我有一個WPF應用程序和客戶端自我主機服務。如果客戶端和服務在同一個局域網中,它可以正常工作,所以我可以從客戶端向服務發送消息。WCF:如何從互聯網上消費自己的主機服務?

但是,我想知道如何從互聯網上使用服務。

我在NAT部分打開列表端口和mex在我的路由器的TCP端口,我禁用了windows的防火牆(我在虛擬windows xp中工作)。

我想使用net.tcp綁定,是我的第一個選擇,但我也試着用wsHttpBinding和問題是一樣的,我可以在局域網中發送消息,但我不能從互聯網。

也許是因爲我不知道如何配置服務或客戶端中的地址,或類似的東西。

非常感謝。 Daimroc。

編輯1:如果我使用www.canyouseeme.org可以訪問我的服務。如果我停止服務,那麼我得到一個錯誤。所以看起來該服務是可見的。那麼爲什麼不能從客戶端發送消息?

回答

1

由於您位於局域網上,託管WCF服務的計算機很可能未分配可從Internet訪問的IP地址。例如,如果機器的IP地址以10 ...或172 ...或192 ...開頭,那麼這是一個內部分配的IP地址。

您的機器必須設置爲使用註冊服務商指定的IP地址,並可選擇指定域名(例如canyouseeme.org),以便Internet DNS服務器可以將其轉換爲指定的IP地址。

+0

我想這裏混合了IP路由和DNS。只是一點點。我不認爲他可以用這個答案做任何事情...... – sinni800 2012-03-06 20:09:23

+0

那麼,我正在閱讀有關我的路由器,它看起來像它不支持本地環回,所以我可以訪問與公共IP如果我試圖連接來自LAN的服務。 所以我會嘗試與我的局域網外的人。 – 2012-03-07 12:44:49