当前位置:编程学习 > C#/ASP.NET >>

服务器端如何监听所有socket连接请求

我有一台服务器,假设内网ip为192.168.0.1  ,外网ip为 111,111,111,111

在服务器上启动程序,内网的客户端可以连接服务器进行socket通信,外网的客户端也可以连接进行socket通信。

现在好像我只能在服务器端绑定一个ip?客户端通过连接这个ip才能通信,也就是说不能同时保证内网和外网客户端都可以请求socket  tcp/ip  通信连接?

服务器端到底该怎么监听 --------------------编程问答--------------------
IPAddress[] ipList = Dns.GetHostAddresses(Dns.GetHostName());
for (int i = 0; i < ipList.Length; i++)
{
//绑定
}


大概是这样吧 --------------------编程问答--------------------
引用 1 楼  的回复:
C# code
IPAddress[] ipList = Dns.GetHostAddresses(Dns.GetHostName());
for (int i = 0; i < ipList.Length; i++)
{
//绑定
}


大概是这样吧


这样是获取当前电脑的所有ip信息,这个我知道,问题是socket监听,一次性绑定,你难道让我一个ip绑定一个,然后一个ip再来一个socket和thread?

有哪个函数直接监听服务器所有ip并处理的么 --------------------编程问答-------------------- 我要的是一次性绑定服务器所有ip的函数,你这样是让我一个ip监听,然后每个ip都进行相同的数据处理?后面的处理可是很庞大的,肯定这样不行 --------------------编程问答-------------------- IPAddress[] ipList = Dns.GetHostAddresses(Dns.GetHostName());
for (int i = 0; i < ipList.Length; i++)
{
//绑定
Socket socket = new Socket(.....);
}

大概是这样吧

--------------------编程问答-------------------- --------------------编程问答-------------------- 试试 IPAddress.Any --------------------编程问答-------------------- 端口映射。  --------------------编程问答-------------------- 6楼正解,绑定到IPAddress.Any,就绑定到服务器的所有ip --------------------编程问答--------------------
引用 8 楼 Susiria 的回复:
6楼正解,绑定到IPAddress.Any,就绑定到服务器的所有ip

正解!
补充:.NET技术 ,  C#
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,