C#网络编程 (一) 概述

常见的网络组件

命名空间组件的功能
System.Net为目前的多种网络协议提供统一和简单的编程接口
System.Net.Mail简单邮件传输协议的服务器提供Email发送的类
System.Net.NetworkInformation提供对网络流量数据、网络地址信息的本地地址更改通知的访问,还包含实现PING的工具类
System.Net.Security为网络流在主机间的传输提供安全机制
System.Net.Sockets提供Winsock接口的托管实现

System.Net的主要类

类名功能
DNS提供简单域名解析功能
EndPoint用于标识网络地址
IPAddress提供IP地址
IPEndPoint以IP地址和端口号的形式标识一个网络端点
IPHostEntry为Internet主机地址信息提供容器类
SocketAddress代表一个套接字地址

System.Sockets的主要类

类名功能
LingerOption包含套接字延迟时间的信息,即当数据仍在发送时,套接字应在关闭后保持的时间
MulticastOption包含了IP多播选项值
NetworkStream为网络访问提供基础数据流
Socket实现了Berkeley
SocketException当出现套接字错误时,将引发由该类所表示的异常
TcpClient为TCP服务提供客户连接
TcpListener用于监听TCP客户端
UdpClient用于提供UDP网络服务

IP地址相关类和方法

与IP有关的类有IPAddress、IPHostEntry、IPEndPoint和DNS类。
其中IPAddress类的属性和方法

主要属性和方法描述
Any本地系统可用的任何IP地址
Broadcast本地网络的IP广播地址
None系统没有网络接口
Address获取或者设置IP地址
AddressFamily制定IP地址的地址族
ParseIP地址由字符串转换成网络地址

示例:
使用Dns的GetHostName方法找到本地系统主机名,再用该类的GetHostByName找到主机的IP地址
代码

string localName = Dns.GetHostName();
Console.WriteLine("主机名:{0}",localName);
//此处应该进行异常捕获,并处理
IPHostEntry localHost = Dns.GetHostByName(localName);
foreach (IPAddress localIP in localHost.AddressList) {
    Console.WriteLine("IP地址:{0}", localIP.ToString());
}
//创建IPaddress的实例
IPAddress ip1 = IPAddress.Parse("192.168.1.1");

IPAddress localIP2 = IPAddress.Parse("127.0.0.1");
//创建到制定IP和端口的组合
IPEndPoint localEP = new IPEndPoint(localIP2, 8000);
Console.WriteLine("Local IPEndPoint is:{0}", localEP.ToString());
Console.WriteLine("The Address is :{0}", localEP.Address);
Console.WriteLine("The AddressFamily is:{0}",localEP.AddressFamily);
Console.ReadKey();

运行结果:
运行结果

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值