我应该使用什么IP来托管我的聊天服务器?

问题描述:

我做聊天服务器在C#中使用我应该使用什么IP来托管我的聊天服务器?

Socket s = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.TCP); 
s.Bind(IPAddress.Parse(theIP),thePort); 

但后来我得到一个

“SocketException是未处理的,该请求的地址不在 其上下文中有效”

我如何查找使用的正确IP? cmd ipconfig IPv4Address?因为那个IP(我相信)是用于内部IP的。我希望服务器IP是可以从我的网络外部访问的外部IP地址

您需要在路由器中将您的一个外部IP /端口绑定到内部地址时创建静态路径(有时称为端口转发)和您的聊天服务器所需的端口。然后,您将在您的代码中引用您的内部IP地址,在您的网络上。

+0

如果我不通过路由器,并使用USB调制解调器,有没有一种方法可以编程设置服务器IP和客户端应用程序的IP连接? – Frapie 2013-03-10 15:09:42

+0

您客户需要的IP地址是您的外部IP地址。在Google中键入“whats my ip address”,它会显示在顶部,或者您可以点击任何链接以获取您当前分配的IP地址。如果您使用的是USB调制解调器,那么您的互联网服务提供商可能会分配给您一个动态IP地址,这意味着它会不时变化。所以作为一个永久的解决方案,这不会工作。但是你可以使用你的动态IP直到它改变。 – 2013-03-10 15:20:22

+0

您将不得不打开Windows防火墙上使用的端口。 – 2013-03-10 15:20:57