C#建立TCP/IP连接
在C/S模式下做网络信号传输,使用TCP/IP协议是首选。
其传输机制:
首先服务端与客户端建立套接字(socket)连接,建立完套接字后,服务端与客户端通过套接字进行数据传输。通常服务端和客户端需要各开启一个线程进行数据的接收。
1.构建连接
首先服务端开启套接字监听服务,然后客户端根据服务器的IP、端口进行连接。
1.1服务端开启套接字
Socket serverSocket = new Socket(AddressFamily.InterNetwork, SocketType.Stream,ProtocolType.Tcp);
serverSocket.Bind(new IPEndPoint(ip, myProt)); //绑定IP地址:端口
serverSocket.Listen(10);//设定最多10个排队连接请求
注意在绑定IP时serverSocket.Bind(new IPEndPoint(ip, myProt));
如果使用127.0.0.1时,客户端连接服务端的IP也必须是127.0.0.1,即要求服务端、客户端都在本地才可以通联。因此,需要将服务器套接字绑定的IP改为对外的IP,如192.168.0.1;
获取对外IP的方法为
/// <summary>
/// 获取本地IP
/// </summary>
/// <returns></returns>
private string GetAddressIP()
{
string AddressIP = string.Empty;
foreach (IPAd