簡體   English   中英

C#,socket通訊(外接)

[英]C#, socket communication (external connection)

我有一個關於 C# 通信的問題。

目前在使用.Net,正在學習Socket。 您可以使用內部 IP 創建套接字服務器並作為內部客戶端連接。 是否可以像聊天程序一樣在另一個網絡中打開服務器並從另一個網絡連接到 Socket Ip:Port?

Socket sListener = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
    
IPEndPoint ipEndPoint = new IPEndPoint(IPAddress.Parse("192.168.0.20"), 8000);
    
sListener.Bind(ipEndPoint);
sListener.Listen(20);
Socket sClient = sListener.Accept();

我需要配置什么來使用上面的 IP 和端口號打開服務器並從另一個網絡(客戶端)連接到服務器嗎?

謝謝:]

是的當然。 我為互聯網上的正常連接繪制了一個小圖像。

通過互聯網正常連接

你必須做什么?

  1. 在路由器中打開一個端口(也就是啟用端口轉發)並將60800轉發到192.168.0.20:8000
  2. 確定您的外部 ip。 谷歌搜索“我的 ip 是什么”或 go 到我的網站
  3. 通過your-external-ip:60800連接。

提示: 60800可以是任何其他隨機端口值。 我建議使用高隨機數,這樣黑客/掃描程序就無法這么快發現您的服務。

這是非常基本的。 我建議您開始學習 ip-communication 是如何工作的。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM