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方法字段

AppleTalk 16 AppleTalk 地址。
Atm 22 本机 ATM 服务地址。
Banyan 21 Banyan 地址。
Ccitt 10 CCITT 协议(如 X.25)的地址。
Chaos 5 MIT CHAOS 协议的地址。
Cluster 24 Microsoft 群集产品的地址。
ControllerAreaNetwork 65537 控制器区域网络地址。
DataKit 9 Datakit 协议的地址。
DataLink 13 直接数据链接接口地址。
DecNet 12 DECnet 地址。
Ecma 8 欧洲计算机制造商协会 (ECMA) 地址。
FireFox 19 FireFox 地址。
HyperChannel 15 NSC Hyperchannel 地址。
Ieee12844 25 IEEE 1284.4 工作组地址。
ImpLink 3 ARPANET IMP 地址。
InterNetwork 2 IP 版本 4 的地址。
InterNetworkV6 23 IP 版本 6 的地址。
Ipx 6 IPX 或 SPX 地址。
Irda 26 IrDA 地址。
Iso 7 ISO 协议的地址。
Lat 14 LAT 地址。
Max 29 MAX 地址。
NetBios 17 NetBios 地址。
NetworkDesigners 28 支持网络设计器 OSI 网关的协议的地址。
NS 6 Xerox NS 协议的地址。
Osi 7 OSI 协议的地址。
Packet 65536 低级别数据包地址。
Pup 4 PUP 协议的地址。
Sna 11 IBM SNA 地址。
Unix 1 Unix 本地到主机地址。
Unknown -1 未知的地址族。
Unspecified 0 未指定的地址族。
VoiceView 18 VoiceView 地址。

四 效果展示

IP V4 效果展示

IP V6效果展示

总结:

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

(0)

相关推荐

  • C#获取本机IP地址(ipv4)

    获取本机所有IP地址: 这些地址是包含所有网卡(虚拟网卡)的ipv4和ipv6地址. string name = Dns.GetHostName(); IPAddress[] ipadrlist = Dns.GetHostAddresses(name); 获取本机所有IPV4地址: string name = Dns.GetHostName(); IPAddress[] ipadrlist = Dns.GetHostAddresses(name); foreach (IPAddress ipa

  • C#获取本机IP地址和Mac地址的方法

    本文实例讲述了C#获取本机IP地址和Mac地址的方法.分享给大家供大家参考.具体分析如下: 查找了几个方法,经过调试修改,下面这个方法能很好的获取到本地的IP和MAC地址.可以用于这方面的功能实现.主要是要添加System.Management的引用. using System; using System.Management; using System.Net; public class Program { static void Main(string[] args) { try { str

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

    目录 前言: 操作步骤 一,创建文件 二,窗体设计 三,代码设计 四 效果展示 总结: 前言: 在我们使用C# WinForm中,我们有时候是需要或者自己本机的IP地址进行处理,今天我们学习一下如何使用C# Winform获取主机的IP地址.现在博主手把手教你获取,很简单的. 操作步骤 一,创建文件 创建Winform窗体文件,这里我就不多做介绍,你们可以看看我之前的文章,都是保姆级的. 二,窗体设计 我们从winform 工具箱拖动textbox,和一个按钮,对按钮重命名 三,代码设计 3.1

  • 获取本机IP地址的实例(JavaScript / Node.js)

    --web 客户端JavaScript <!-- 调用方式 --> <body onload="checkCookie()"></body> function getYourIP() { const RTCPeerConnection = window.RTCPeerConnection || window.webkitRTCPeerConnection || window.mozRTCPeerConnection; if (RTCPeerConne

  • java如何获取本机IP地址

    本文实例为大家分享了java实现获取本机IP地址的具体代码,供大家参考,具体内容如下 原因:同一台机子上开着两个web工程,现在有需求需要保证两个项目之间交互的安全问题.因为有个旧的项目,所以尽量不做改动.只能在新项目中做改动. 处理办法:获取本地的IP地址,有请求进来时查看请求的来源,只有来源是本地IP的才予以通过. 代码如下: /** * 任务调度调用拦截器 */ public class TaskControlInterceptor implements Interceptor { //存

  • Java获取本机IP地址的三种方法总结

    目录 1 获取局域网IP地址 2 获取全部 IPV4/IPV6 IP地址 3 获取全部存放本机IP地址 知识点补充 1 获取局域网IP地址 InetAddress.getLocalHost().getHostAddress(); 2 获取全部 IPV4/IPV6 IP地址 private static List<String> getIpAddress() throws SocketException { List<String> list = new LinkedList<

  • Java 获取本机IP地址的实例代码

    目录 前言 一.规则 二.获取 1.使用 2.工具类 前言 在Java中如何准确的获取到本机IP地址呢?网上大部分的做法是InetAddress.getLocalHost().getHostAddress().这的确能获取到本机IP地址,但是是不准确的.因为忽略了一个问题,网络环境是多变的,一台计算机不同的网卡有多个IP地址,Lan.WiFi.蓝牙.热点.虚拟机网卡等. 一.规则 127.xxx.xxx.xxx 属于 “loopback” 地址,即只能你自己的本机可见,就是本机地址,比较常见的有

  • python在Windows8下获取本机ip地址的方法

    本文实例讲述了python在Windows8下获取本机ip地址的方法.分享给大家供大家参考.具体实现方法如下: import socket hostname = socket.gethostname() IPinfo = socket.gethostbyname_ex(hostname) LocalIP = IPinfo[2][2] print LocalIP 希望本文所述对大家的Python程序设计有所帮助.

  • Linux Shell脚本中获取本机ip地址方法

    方法一:ifconfig -a ifconfig -a|grep inet|grep -v 127.0.0.1|grep -v inet6|awk '{print $2}'|tr -d "addr:" 命令解析 ifconfig -a  和window下执行此命令一样道理,返回本机所有ip信息 grep inet                  截取包含ip的行 grep -v 127.0.0.1      去掉本地指向的那行 grep -v inet6             去掉

  • 分享Python获取本机IP地址的几种方法

    目录 1.使用专用网站 2.使用自带socket库 3.使用第三方netifaces库 1.使用专用网站 获取的是公网IP 网址:http://myip.ipip.net 代码: import requests res = requests.get('http://myip.ipip.net', timeout=5).text print(res) 比较喜欢用这个,在命令窗口也能使用: curl http://myip.ipip.net 2.使用自带socket库 获取的是局域网IP. impo

  • JS获取本机IP地址的2种方法

    目录 1.获取本机IP地址方法1: 2.获取本机IP地址方法2 解决方案: 总结 1.获取本机IP地址方法1: if(typeof window != 'undefined'){     var RTCPeerConnection = window.RTCPeerConnection || window.mozRTCPeerConnection || window.webkitRTCPeerConnection;     if (RTCPeerConnection) (()=>{        

随机推荐