Dns是什么?IPHostEntry/IPAddress/IPEndPort是什么?怎么用?

DNS用于将域名转换为IP地址,IPHostEntry是容器类,存储主机名和IP地址。异步方法BeginGetHostAddresses和EndGetHostAddresses用于获取IP地址。IPAddress表示主机识别的IP,IPEndPoint结合IP地址和端口。
摘要由CSDN通过智能技术生成

1.Dns是什么?


首先看一下 客户端部分网络连接对Dns的应用

1.IPHostEntry iPHostEntry = Dns.GetHostEntry(ipAddress);

什么时候使用这个方法呢?
ipAddress是域名的时候 使用这个方法把域名转换为ip

2.

DNSState dNSState = new DNSState();
    dNSState.hostName = address;
    dNSState.port = port;
Dns.BeginGetHostAddresses(hostNameOrAddress, GetIPAddressCallback, dNSState);

异步返回指定主机的IP地址  hostNameOrAddress是域名

public void GetIPAddressCallback(IAsyncResult ar) {
        try {
                DNSState dnsContent = (DNSState)ar.AsyncState;
                dnsContent.resolvedIPs = Dns.EndGetHostAddresses(ar);
                _dnsInfo = dnsContent;
                Connect(_dnsInfo);
            } catch(Exception exc) {

            }

    }

3.

dnsContent.resolvedIPs = Dns.EndGetHostAddresses(ar);

结束对DNS信息的异步请求 用于保存由BeginGetHostAddresses的hostNameOrAddress参数指定的IP地址

由以上三个例子可以看出Dns的作用是: 将域名解析成主机能识别的IP地址

PS:

域名是什么? WWW.Baidu.com 就是域名;

                      192.168.0.1 就是IP地址


2.IPHostEntry/IPAddress/IPEndPort是什么?

IPHostEntry :

是一个容器类 将域名系统(Dns)主机名和别名(IPHostEntry.Aliases)与匹配的IP地址关联 它提供主机的ip地址(借助IPAddress类) 主机名及别名

eg:

IPHostEntry iPHostEntry = Dns.GetHostEntry(ipAddress);

Dns(域名系统)把域名 ipAddress 通过GetHostEntry 方法转换为 iPHostEntry
iPHostEntry.AddressList[0] 就是 ipAddress 对应的IP地址


IPAddress:

主机能识别的IP地址

1.把string类型的ip地址转换成IPAddress类型的参数

IPAddress.TryParse(ipAddress, out address)

ipAddress     string类型参数
address         IPAddress类型参数


IPEndPort:

是 IP地址+端口号

IPEndPort iPEndPoint = new IPEndPoint(IPAddress address,int port);

eg:

_socket.BeginConnect(iPEndPoint, ConnetSuccess, _socket);
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一梭键盘任平生

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值