兩臺電腦,一臺做服務端,一臺做客戶端,如果都連接家里的路由器,用socket可以通信上。
現在一臺電腦連接手機熱點(中國移動),另一臺電腦連接家里的路由器(寬帶網),請問IP地址如何設定才能通信上?或者需要其他工具?
uj5u.com熱心網友回復:
如果你的手機熱點是公網IP的話,才行,否則做不到,用一些代理軟體,可以把你的家里的電腦設定成公網IP,手機就可以訪問了uj5u.com熱心網友回復:
需要一方有外網ip..另一端連接外網ip埠即可通信。
uj5u.com熱心網友回復:
兩者在不同的網路的內網,不能直接通信。要么找運營商要寬帶的公網ip地址(網路地址轉換后的內網ip也行),
要么找一臺在公網的服務器做為中間轉發服務器,參考TeamViewer的原理。
uj5u.com熱心網友回復:
總之,需要個公網IP。1.直連。你家里的寬帶別用路由,貓直接連電腦,這臺電腦作為服務端。
2.代理方式。3樓說的TeamViewer那種,需要公網做個代理,轉發請求。A做服務端,代理做客戶端連A,同時做服務端被B連,轉發A、B的請求,間接實作B連A。
3.埠映射。你的路由,可以設定埠映射(埠轉發),家里電腦做服務端(如埠9111),另一個做客戶端,連路由(如埠9222)。將路由的9222埠,轉發到家里電腦的9111埠,間接實作A,B連接問題(其實原理和2代理方式一樣)
4.打洞技術。(詳情建議去百度TCP打洞)。大概就是,需要公網先建立臨時服務端C,A、B做客戶端連C。C把A做客戶端的IP、埠告訴A、B。然后AB斷開和C的連接,C也可以關服務了。A用C告訴AB的IP和埠bind做服務端,B做客戶端連A的IP和埠。之后就是AB直連了,沒C的事了。【建議家里電腦作為A端,不知道什么原因,手機當熱點的服務端,打洞沒成功。當然你可以嘗試】
還有其他方式,但不管啥方式,必須要有個公網IP。
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/58137.html
標籤:C++ 語言
上一篇:c語言小問題
