主機解析:
利用DNS服務器解析主機,使用Dns.Resolve方法
原型:public static IPHostEntry Resolve(string hostname) 參數:待解析的主機名稱,返回 IPHostEntry類值,IPHostEntry為Inte.Net主機地址信息提供容器,該容器提供存有IP地址列表,主機名 稱等。
Dns.GetHostByName獲取本地主機名稱
原型:public static IPHostEntry GetHostByName(string hostname)
GetHostByAddress
原型:1)public static IPHostEntry GetHostByAddress(IPAddress address) 參數:IP地址 2) public static IPHostEntry GetHostByAddress(string address) IP地址格式化字符串
端口綁定和監聽:
同步套接字服務器主機的綁定和端口監聽
Socket類的Bind(綁定主機),Listen(監聽端口),Accept(接收客戶端的連接請求)
Bind:原型:public void Bind(EndPoint LocalEP)參數為主機對象 IPEndPoint
Listen:原型:public void Listen(int backlog) 參數整型數值,掛起隊列最大值
accept:原型:public socket accept() 返回為套接字對象
演示程序:
IPAddress myip=IPAddress.Parse(“127.0.0.1”);
IPEndPoint myserver=new IPEndPoint(myip,2020);
Socket sock=new Socket (AddressFamily.Inte.Network,SocketType.Stream,ProtocolType.Tcp);
Sock.Bind (myserver);
Sock.Listen(50);
Socket bbb=sock.Accept();
發送數據:方法1:socket類的send方法二.NetworkStream類Write
send原型:public int Send(byte[] buffer) 字節數組
public int Send(byte[],SocketFlags)原型2說明,SocketFlags成員列表:DontRoute(不使用路由表 發送),MaxIOVectorLength(為發送和接收數據的wsabuf結構數量提供標准值)None 不對次調用使用標志 ) OutOfBand(消息的部分發送或接收)Partial(消息的部分發送或接收) Peek(查看傳入的消息)