Windows上获得IP地址的四种方法
2005-06-15 11:27
369 查看
最近在看网络编程(主要是TCP/IP通信的)的内容,还研究了下WMI。把获得IP地址的方法总结如下。
1. 使用ipconfig程序。
在命令行下使用命令ipconfig可以得到本机的每个有效网罗接口的IP网絡信息。如果在代码中,可以使用Process.Start()方法来调用ipconfig,然后使用正则表达式来解析结果──当然这样做太繁了,不实用。但我曾经使用类似的方法在代码中获得MAC地址。
2. 查找注册表。
使用注册表的麻烦之处在于各个版本的Windows在不同的地方存放网絡信息。
Windows98&Windows Me
注册表中的位置为:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Class\NetTrans
在这下面,每个Key对应一个网络设备的信息(IPAddress,DefaultGateway,IPMask)。
Windows NT,Windows 2000&Windows XP
和Windows98,Me不同,先要得知有哪些网卡,然后再查此网卡的网絡信息。第一步:找到网卡,地址为:
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\NetworkCards,从中得到ServiceName值;
第二步:根据上面得到的ServiceName值到下面地址查找:
HKEY_LOCAL_MACHINE\CurrentControlSet\Services,找到响应的Key后,在parameters\tcpip下可以得到网络设备的信息(IPAddress,DefaultGateway,IPMask)。另外,对于动态的IP地址,可能得去查找DHCPIPAddress注册表對應关键词的值。
3. 使用WMI。
查询表Win32_NetworkAdapterConfiguration即可获得。
4. 使用DNS。
代码如下:
using System;
using Microsoft.Win32;
using System.Management;
using System.Net;
namespace IPAddress
1. 使用ipconfig程序。
在命令行下使用命令ipconfig可以得到本机的每个有效网罗接口的IP网絡信息。如果在代码中,可以使用Process.Start()方法来调用ipconfig,然后使用正则表达式来解析结果──当然这样做太繁了,不实用。但我曾经使用类似的方法在代码中获得MAC地址。
2. 查找注册表。
使用注册表的麻烦之处在于各个版本的Windows在不同的地方存放网絡信息。
Windows98&Windows Me
注册表中的位置为:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Class\NetTrans
在这下面,每个Key对应一个网络设备的信息(IPAddress,DefaultGateway,IPMask)。
Windows NT,Windows 2000&Windows XP
和Windows98,Me不同,先要得知有哪些网卡,然后再查此网卡的网絡信息。第一步:找到网卡,地址为:
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\NetworkCards,从中得到ServiceName值;
第二步:根据上面得到的ServiceName值到下面地址查找:
HKEY_LOCAL_MACHINE\CurrentControlSet\Services,找到响应的Key后,在parameters\tcpip下可以得到网络设备的信息(IPAddress,DefaultGateway,IPMask)。另外,对于动态的IP地址,可能得去查找DHCPIPAddress注册表對應关键词的值。
3. 使用WMI。
查询表Win32_NetworkAdapterConfiguration即可获得。
4. 使用DNS。
代码如下:
using System;
using Microsoft.Win32;
using System.Management;
using System.Net;
namespace IPAddress
相关文章推荐
- Windows上获得IP地址的四种方法
- Windows上获得IP地址的四种方法
- python在windows和linux下获得本机本地ip地址方法小结
- Windows系统四种神奇的开机方法
- linux下配置ip地址四种方法(图文方法
- Java网络编程从入门到精通(7):用getHostAddress方法获得IP地址
- Struts2教程6:在Action类中获得HttpServletResponse对象的四种方法
- 命令行修改网络设置ip地址、dns、网关的方法(windows)
- 配置ip地址四种方法,方便学习linux的朋友
- linux下配置ip地址四种方法(图文方法)
- struts2:在Action类中获得HttpServletResponse对象的四种方法
- 【Windows系统如何跟踪IP地址的方法介绍】
- linux下配置ip地址四种方法(图文方法)
- 在Action类中获得HttpServletResponse对象的四种方法
- 【转】Windows终止线程运行的四种方法
- hosts文件的修改方法,及如何获得最新有效的IP地址的方法
- 【转帖】获得system权限的四种方法,总结的不错~
- 在Windows 8 PC上安装Linux的四种方法
- Windows终止线程运行的四种方法
- 在Action类中获得HttpServletResponse对象的四种方法