非同步套接字
套接字和網路
如何在我自己的網路外訪問伺服器?這是一個常見的問題,當它被問到主要被標記為主題時。
伺服器端
在伺服器的網路上,你需要將路由器移植到伺服器。
對於執行伺服器的示例 PC:
本地 IP = 192.168.1.115
伺服器正在偵聽埠 1234。
將 Port 1234
路由器上的傳入連線轉發到 192.168.1.115
客戶端
你唯一需要改變的是 IP。你不希望從執行伺服器的網路連線到你的環回地址,而是連線到公共 IP。這個 IP 你可以到這裡來 。
_connectingSocket.Connect(new IPEndPoint(IPAddress.Parse("10.10.10.10"), 1234));
所以現在你在這個端點上建立一個請求:10.10.10.10:1234
如果你做了屬性埠轉發你的路由器你的伺服器和客戶端將連線沒有任何問題。
如果你想連線到本地 IP,你不必只是將環回地址更改為 192.168.1.178
或類似的東西。
傳送資料:
資料以位元組陣列傳送。你需要將資料打包到位元組陣列中並在另一側解壓縮。
如果你熟悉套接字,你也可以在傳送之前嘗試加密位元組陣列。這樣可以防止任何人盜竊你的包裹。