在我的家庭網絡中,我使用帶有web服務的設備。現在我想從互聯網上訪問這項服務。由於我沒有靜態IP(並且不想要一個),我的想法是使用/開發兩個「轉發器」。一個在服務器上(例如Google App Engine),另一個在我的本地NAS上(使用Python)。從互聯網訪問家庭網絡的webservice
有沒有人知道應用程序/框架輕鬆做到這一點,甚至知道我的問題更好的解決方案?
當然,解決方案還應該包括某種認證。當我使用我自己開發的android應用作爲端點時,我可以自定義通信。
在我的家庭網絡中,我使用帶有web服務的設備。現在我想從互聯網上訪問這項服務。由於我沒有靜態IP(並且不想要一個),我的想法是使用/開發兩個「轉發器」。一個在服務器上(例如Google App Engine),另一個在我的本地NAS上(使用Python)。從互聯網訪問家庭網絡的webservice
有沒有人知道應用程序/框架輕鬆做到這一點,甚至知道我的問題更好的解決方案?
當然,解決方案還應該包括某種認證。當我使用我自己開發的android應用作爲端點時,我可以自定義通信。
好的,所以你只想運行一個沒有靜態IP的基於家庭的web服務器。如果你有一臺linux服務器,你可以試試這個:
使用默認安裝的apache web服務器並設置一個測試頁面。該頁面被放入您的webservers公共目錄。現在,如何解決你的IP ...讓我們說... ... 25.24.4.166,你想它有一個host.name.com綁定到。轉到http://www.no-ip.com/index.php並註冊。你可以從noip獲得一個類似yourname.theirdomain.com/.net/.info的網站。他們有很酷的名字,如sytes.net和servebeer.org ...甚至workisboring.com
你可以選擇自己的頂級名稱...例如,Ithink.dnsiskinky.com可能是你的新域名。然後從下載選項卡下載客戶端:https://www.no-ip.com/downloads.php
linux客戶端是tar.gz源代碼,安裝簡單。只要按照說明。現在,您擁有yoursite.theirsite.com,每次登錄/登錄/發送或執行任何操作時,您的IP都會隨時更新(只要noip.com已啓動)。
將這種技術概括爲動態Web服務並不是太麻煩。對於認證感到抱歉,這是一個完整的故事,因爲我沒有足夠的想法。也許你可以發送請求頭部哈希或類似的東西(例如,亞馬遜在s3和其他相關服務中進行的身份驗證)。
爲了清楚起見,用戶建議您使用動態DNS,儘管擁有動態IP,但它爲您提供了一致的主機名。 no-ip是這個的很多服務之一(谷歌它)。預計你可以免費獲得它。至於客戶端,最好的辦法是讓你的路由器自動更新你的IP地址。許多路由器都內置了對各種dyndns服務的支持,就像openwrt和dd-wrt固件一樣。 – djs 2012-05-02 22:57:42