C# 获取本机IP地址(IPv4和IPv6)

 更新时间:2022年08月11日 08:22:58   作者:IC00  
本文主要介绍了C# 获取本机IP地址(IPv4和IPv6),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

前言:

在我们使用C# WinForm中,我们有时候是需要或者自己本机的IP地址进行处理,今天我们学习一下如何使用C# Winform获取主机的IP地址。现在博主手把手教你获取,很简单的。

操作步骤

一,创建文件

创建Winform窗体文件,这里我就不多做介绍,你们可以看看我之前的文章,都是保姆级的。

二,窗体设计

我们从winform 工具箱拖动textbox,和一个按钮,对按钮重命名

三,代码设计

3.1双击按钮进入代码设计窗口,添加命名空间,也可不添加,等下输入代码时使用快捷键也是可以的,Alt+Enter,使用ALT键+回车。

using System.Net;
using System.Net.Sockets;

3.2输入代码

     IPAddress[] ip = Dns.GetHostAddresses(Dns.GetHostName());
            foreach (IPAddress address in ip)
            {
                if (address.AddressFamily == AddressFamily.InterNetwork)
                {
                   textBox1.Text += address.ToString() + "\r\n";
                }
            }

3.3 Dns的方法字段

BeginGetHostAddresses(String, AsyncCallback, Object)	
异步返回指定主机的 Internet 协议 (IP) 地址。

BeginGetHostEntry(IPAddress, AsyncCallback, Object)	
将 IP 地址异步解析为 IPHostEntry 实例。

BeginGetHostEntry(String, AsyncCallback, Object)	
将主机名或 IP 地址异步解析为 IPHostEntry 实例。

EndGetHostAddresses(IAsyncResult)	
结束对 DNS 信息的异步请求。

EndGetHostEntry(IAsyncResult)	
结束对 DNS 信息的异步请求。

GetHostAddresses(String)	
返回指定主机的 Internet 协议 (IP) 地址。

GetHostAddresses(String, AddressFamily)	
返回指定主机的 Internet 协议 (IP) 地址。

GetHostAddressesAsync(String)	
返回指定主机的 Internet 协议 (IP) 地址以作为异步操作。

GetHostAddressesAsync(String, AddressFamily, CancellationToken)	
返回指定主机的 Internet 协议 (IP) 地址以作为异步操作。

GetHostAddressesAsync(String, CancellationToken)	
返回指定主机的 Internet 协议 (IP) 地址以作为异步操作。

GetHostEntry(IPAddress)	
将 IP 地址解析为 IPHostEntry 实例。

GetHostEntry(String)	
将主机名或 IP 地址解析为 IPHostEntry 实例。

GetHostEntry(String, AddressFamily)	
将主机名或 IP 地址解析为 IPHostEntry 实例。

GetHostEntryAsync(IPAddress)	
将 IP 地址解析为 IPHostEntry 实例以作为异步操作。

GetHostEntryAsync(String)	
将主机名或 IP 地址解析为 IPHostEntry 实例以作为异步操作。

GetHostEntryAsync(String, AddressFamily, CancellationToken)	
将主机名或 IP 地址解析为 IPHostEntry 实例以作为异步操作。

GetHostEntryAsync(String, CancellationToken)	
将主机名或 IP 地址解析为 IPHostEntry 实例以作为异步操作。

GetHostName()	
获取本地计算机的主机名。

3.4 AddressFamily方法字段

AppleTalk16AppleTalk 地址。
Atm22本机 ATM 服务地址。
Banyan21Banyan 地址。
Ccitt10CCITT 协议(如 X.25)的地址。
Chaos5MIT CHAOS 协议的地址。
Cluster24Microsoft 群集产品的地址。
ControllerAreaNetwork65537控制器区域网络地址。
DataKit9Datakit 协议的地址。
DataLink13直接数据链接接口地址。
DecNet12DECnet 地址。
Ecma8欧洲计算机制造商协会 (ECMA) 地址。
FireFox19FireFox 地址。
HyperChannel15NSC Hyperchannel 地址。
Ieee1284425IEEE 1284.4 工作组地址。
ImpLink3ARPANET IMP 地址。
InterNetwork2IP 版本 4 的地址。
InterNetworkV623IP 版本 6 的地址。
Ipx6IPX 或 SPX 地址。
Irda26IrDA 地址。
Iso7ISO 协议的地址。
Lat14LAT 地址。
Max29MAX 地址。
NetBios17NetBios 地址。
NetworkDesigners28支持网络设计器 OSI 网关的协议的地址。
NS6Xerox NS 协议的地址。
Osi7OSI 协议的地址。
Packet65536低级别数据包地址。
Pup4PUP 协议的地址。
Sna11IBM SNA 地址。
Unix1Unix 本地到主机地址。
Unknown-1未知的地址族。
Unspecified0未指定的地址族。
VoiceView18VoiceView 地址。

四 效果展示

IP V4 效果展示

IP V6效果展示

总结:

通过获取IP地址簇的方式,来到达我们的需求,虽然有点简单,但是还是值得我们学习的,技术有限,希望能帮到大家,更多相关C# 获取本机IP地址内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • C#静态static的用法实例分析

    C#静态static的用法实例分析

    这篇文章主要介绍了C#静态static的用法,以实例形式较为深入的分析了静态类、静态变量、静态方法以及静态构造函数的特性与用法,需要的朋友可以参考下
    2014-10-10
  • C#连接SQL Sever数据库详细图文教程

    C#连接SQL Sever数据库详细图文教程

    C#是Microsoft公司为.NET Framework推出的重量级语言,和它搭配最完美的数据库无疑就是Microsoft SQL Server了,下面这篇文章主要给大家介绍了关于C#连接SQL Sever数据库的详细图文教程,需要的朋友可以参考下
    2023-06-06
  • Unity利用UGUI制作提示框效果

    Unity利用UGUI制作提示框效果

    这篇文章主要为大家详细介绍了Unity利用UGUI制作提示框效果,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-06-06
  • C#给Excel添加水印实例详解

    C#给Excel添加水印实例详解

    这篇文章主要介绍了C#给Excel添加水印实例的相关资料,需要的朋友可以参考下
    2016-09-09
  • 使用C#判断文件是否为图片的多种方法

    使用C#判断文件是否为图片的多种方法

    在开发中,我们常需要判断一个文件是否为图片,这看似简单,但要实现得既高效又严谨,需要根据不同场景选择合适的方法,本文记录了几种常见的判断方式,并推荐使用 SixLabors.ImageSharp 来替代已被淘汰的 System.Drawing,需要的朋友可以参考下
    2024-10-10
  • winform 使用Anchor属性进行界面布局的方法详解

    winform 使用Anchor属性进行界面布局的方法详解

    这篇文章主要介绍了winform 使用Anchor属性进行界面布局的方法,有需要的朋友可以参考一下
    2013-12-12
  • C#中WebBrowser.DocumentCompleted事件多次调用问题解决方法

    C#中WebBrowser.DocumentCompleted事件多次调用问题解决方法

    这篇文章主要介绍了C#中WebBrowser.DocumentCompleted事件多次调用问题解决方法,本文讲解了3种情况和各自情况的解决方法,需要的朋友可以参考下
    2015-01-01
  • 深入C# 内存管理以及优化的方法详解

    深入C# 内存管理以及优化的方法详解

    本篇文章是对C#中内存管理以及优化的方法进行了详细的分析介绍,需要的朋友参考下
    2013-05-05
  • unity实现场景跳转

    unity实现场景跳转

    这篇文章主要为大家详细介绍了unity实现场景跳转,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-04-04
  • C#使用foreach语句遍历集合类型的方法

    C#使用foreach语句遍历集合类型的方法

    这篇文章主要介绍了C#使用foreach语句遍历集合类型的方法,可实现通过foreach语句遍历集合类的功能,需要的朋友可以参考下
    2015-06-06

最新评论