2016-10-01 35 views
0

允許兩臺計算機通過互聯網進行通信而不打開端口或運行服務器的服務是什麼。我確定的兩個選項是電子郵件(有點延遲)和irc,但我想知道還有哪些其他選項或服務可用。讓兩臺計算機通過互聯網進行通信而不開放端口的選項

+0

irc和電子郵件都涉及開放端口.. –

+0

@ EbbeM.Pedersen運行irc或電子郵件服務器需要打開端口。我說的是雙方都是客戶。例如,我不需要在我的路由器上打開任何端口來連接到irc或發送和接收電子郵件。 – PyRulez

回答

0

我認爲這個問題有點誤導。實質上,你要求的是如何繞過防火牆。這是如何工作的:你有兩臺主機A和B:

A --- A的防火牆---互聯網--- B的防火牆---乙

當A將消息發送到B,B的防火牆檢查端口是否打開。如果沒有,它會阻止它。

一個--80 - > AF --80 - >互聯網--80 - > X BF(80端口關閉)

A的防火牆的工作原理大致相同:

(端口80關閉)AF X < --80--互聯網< --80-- BF < --80--乙

如果它是開放的,但是,B的防火牆讓它通過:

A --- > AF --->互聯網---> BF ---> B

A在這裏擔任客戶。現在,防火牆知道有一個連接,所以當B發送一條信息:

一個< === AF < ===互聯網< === BF < ===乙

他們可以交換消息,只要他們希望,直到其中一人關閉連接。發生這種情況時,A的防火牆(沒有打開端口的防火牆)將停止允許數據包通過。

所以,爲了有不要求任何一端改變防火牆規則的連接,您可以執行下列操作之一:

  1. 在中間的服務器。這就是大多數電子郵件所做的--A和B作爲客戶端連接到電子郵件服務器(其防火牆設置正確以允許這樣做)。你可以運行你自己的服務器,或者使用像ngrok這樣的服務。

  2. 找到每個防火牆零日。

+0

那麼,我可以運行爲什麼自己的服務器,但我想知道有什麼服務來路由這樣的流量。我可以使用電子郵件,但速度很慢。 IRC看起來像一個奇怪的解決方案。 – PyRulez

+0

我已經添加了一個偉大的服務,將愉快地爲你做這個鏈接。檢查一下,如果這是你需要的,不要忘記接受答案。 –

0

原則UDP hole punching滿足您的要求,但它不能保證工作,我甚至會說這是不可能的工作(我嘗試了一些,但沒有找到兩個網絡的地方都可以)。這是NAT traversal的特殊情況,請查看其他選項。

另一種可用於單向通信的選項是ngrok:它允許您將localhost暴露給外部世界,就好像它是公共服務器一樣。從他們的網站看,我想他們公開它作爲一項服務,以及提供您可以在自己的服務器上使用的源代碼。

+1

ngrok看起來很有前途 – PyRulez

相關問題