您的位置:首页 > 理论基础 > 计算机网络

Socket网络编程学习笔记(1):常用方法介绍

2017-06-07 15:08 423 查看

转载至:http://www.cnblogs.com/licongjie/archive/2006/10/26/540356.html


Socket网络编程学习笔记(1):常用方法介绍

      在讲Socket编程前,我们先来看一下几个最常用的类和方法,相信这些东西能让你事半功倍。

      一、IP地址操作类

      1、IPAddress类

      a、在该类中有一个 Parse()方法,可以把点分的十进制IP表示转化成IPAddress类,方法如下:

      IPAddress address = IPAddress.Parse(“192.168.0.1”);
      b、IPAddress提供4个只读字段

      Any   用于代表本地系统可用的任何IP地址
      Broadcase 用于代表本地网络的IP广播地址
      Loopback 用于代表系统的回送地址    

      None 用于代表系统上没有网络接口

      其中IPAddress.Any最常用可以用来表示本机上所有的IP地址,这对于socket服务进行侦听时,最方便使用,不用对每个IP进行侦听了。而IPAddress.Broadcase可用来UDP的IP广播,这些具体讲socket时再详细介绍。

     2、IPEndPoint类            

      我们可以通过二种构造方法来创建IPEndPoint类:

      a、IPEndPoint(long address, int port)

      b、IPEndPoint(IPAddress address, int port)

      四个属性:

      Address
      AddressFamily
      Port
      MaxPort 

      MinPort 
      这些应该从名字上就很好理解,不再一一介绍。IPEndPoint其实就是一个IP地址和端口的绑定,可以代表一个服务,用来Socket通讯。

       二、DNS相关类

      DNS类有四个静态方法,来获取主机DNS相关信息,

      1、GetHostName() 

      通过Dns.GetHostName()可以获得本地计算机的主机名

   

      2、GetHostByName()

      根据主机名称,返回一个IPHostEntry 对象:

       

      IPHostEntry GetHostByName(string hostName) 

      其中IPHostEntry把一个DNS主机名与一个别名和IP地址的数组相关联,包含三个属性:

      AddressList:一个IPAddress对象的数组
      Aliases:一个字符串对象数组
      HostName:一个用于主机名的字符串对象

      3、GetHostByAddress()

      类似于GetHostByName(),只不过这里的参数是IP地址,而不是主机名,也返回一个IPHostEntry对象。

      IPHostEntry GetHostByAddress(IPAddress address)
      IPHostEntry GetHostByAddress(string address)

      4、Resolve() 

      当我们不知道输入的远程主机的地址是哪种格式时(主机名或IP地址),用以上的二种方法来实现,我们可能还要通过判断客户输入的格式,才能正确使用,但Dns类提供一更简单的方法Resolve(),该方法可以接受或者是主机名格式或者是IP地址格式的任何一种
4000
地址,并返回IPHostEntry对象。

      常用方法就写到这里了,当然针对网络编程不可能只有这么几个类和方法,只不过这几个我们最常用,也非常的简单。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Socket