当前位置:
首页 > Python基础教程 >
-
用vb.net获取本地IP地址
在VB.NET中,获取本地IP地址通常涉及查询网络接口(NetworkInterface)和与之关联的IP地址(IPAddress)。这可以通过`System.Net.NetworkInformation`命名空间中的类来实现。以下是一个示例方法,用于获取并显示本机上所有网络接口的非回环(非localhost)IPv4地址:
在这个示例中,`GetLocalIPv4Addresses`函数会遍历本机的所有网络接口,并检查每个接口是否处于运行状态。对于每个运行状态的网络接口,它会进一步遍历该接口的所有IP地址,并筛选出IPv4地址且不是回环地址(即地址不以"127."开头)的IP地址。最后,这个函数会返回一个包含所有符合条件的IP地址的列表。
请注意,根据你的网络配置和正在运行的网络服务,你的机器可能拥有多个IP地址。上述代码将捕获并返回所有这些地址。如果你只对特定类型的网络接口(如有线或无线)感兴趣,你可能需要在代码中添加额外的检查来筛选这些接口。
Imports System.Net
Imports System.Net.NetworkInformation
Module Module1
Sub Main()
' 调用函数并打印结果
Dim localIPs As List(Of String) = GetLocalIPv4Addresses()
For Each ip As String In localIPs
Console.WriteLine(ip)
Next
' 暂停程序,以便查看输出结果
Console.ReadKey()
End Sub
' 获取并返回本机所有非回环的IPv4地址
Function GetLocalIPv4Addresses() As List(Of String)
Dim localIPs As New List(Of String)
' 获取本机所有网络接口
Dim nics As NetworkInterface() = NetworkInterface.GetAllNetworkInterfaces()
For Each nic In nics
' 检查网络接口是否处于运行状态
If nic.OperationalStatus = OperationalStatus.Up Then
' 遍历网络接口的所有IP地址
Dim ipProps As IPInterfaceProperties = nic.GetIPProperties()
' 遍历IPv4地址
For Each uniCast As UnicastIPAddressInformation In ipProps.UnicastAddresses
' 过滤出IPv4地址且不是回环地址
If uniCast.Address.AddressFamily = System.Net.Sockets.AddressFamily.InterNetwork AndAlso
Not uniCast.Address.ToString().StartsWith("127.") Then
localIPs.Add(uniCast.Address.ToString())
End If
Next
End If
Next
Return localIPs
End Function
End Module
Imports System.Net.NetworkInformation
Module Module1
Sub Main()
' 调用函数并打印结果
Dim localIPs As List(Of String) = GetLocalIPv4Addresses()
For Each ip As String In localIPs
Console.WriteLine(ip)
Next
' 暂停程序,以便查看输出结果
Console.ReadKey()
End Sub
' 获取并返回本机所有非回环的IPv4地址
Function GetLocalIPv4Addresses() As List(Of String)
Dim localIPs As New List(Of String)
' 获取本机所有网络接口
Dim nics As NetworkInterface() = NetworkInterface.GetAllNetworkInterfaces()
For Each nic In nics
' 检查网络接口是否处于运行状态
If nic.OperationalStatus = OperationalStatus.Up Then
' 遍历网络接口的所有IP地址
Dim ipProps As IPInterfaceProperties = nic.GetIPProperties()
' 遍历IPv4地址
For Each uniCast As UnicastIPAddressInformation In ipProps.UnicastAddresses
' 过滤出IPv4地址且不是回环地址
If uniCast.Address.AddressFamily = System.Net.Sockets.AddressFamily.InterNetwork AndAlso
Not uniCast.Address.ToString().StartsWith("127.") Then
localIPs.Add(uniCast.Address.ToString())
End If
Next
End If
Next
Return localIPs
End Function
End Module
在这个示例中,`GetLocalIPv4Addresses`函数会遍历本机的所有网络接口,并检查每个接口是否处于运行状态。对于每个运行状态的网络接口,它会进一步遍历该接口的所有IP地址,并筛选出IPv4地址且不是回环地址(即地址不以"127."开头)的IP地址。最后,这个函数会返回一个包含所有符合条件的IP地址的列表。
请注意,根据你的网络配置和正在运行的网络服务,你的机器可能拥有多个IP地址。上述代码将捕获并返回所有这些地址。如果你只对特定类型的网络接口(如有线或无线)感兴趣,你可能需要在代码中添加额外的检查来筛选这些接口。
最后,如果你对python语言还有任何疑问或者需要进一步的帮助,请访问https://www.xin3721.com 本站原创,转载请注明出处:
https://www.xin3721.com/Python/python50062.html
栏目列表
最新更新
详解MyBatis延迟加载是如何实现的
IDEA 控制台中文乱码4种解决方案
SpringBoot中版本兼容性处理的实现示例
Spring的IOC解决程序耦合的实现
详解Spring多数据源如何切换
Java报错:UnsupportedOperationException in Col
使用Spring Batch实现批处理任务的详细教程
java中怎么将多个音频文件拼接合成一个
SpringBoot整合ES多个精确值查询 terms功能实
Java使用poi生成word文档的简单实例
计算机二级考试MySQL常考点 8种MySQL数据库
SQL SERVER中递归
2个场景实例讲解GaussDB(DWS)基表统计信息估
常用的 SQL Server 关键字及其含义
动手分析SQL Server中的事务中使用的锁
openGauss内核分析:SQL by pass & 经典执行
一招教你如何高效批量导入与更新数据
天天写SQL,这些神奇的特性你知道吗?
openGauss内核分析:执行计划生成
[IM002]Navicat ODBC驱动器管理器 未发现数据
uniapp/H5 获取手机桌面壁纸 (静态壁纸)
[前端] DNS解析与优化
为什么在js中需要添加addEventListener()?
JS模块化系统
js通过Object.defineProperty() 定义和控制对象
这是目前我见过最好的跨域解决方案!
减少回流与重绘
减少回流与重绘
如何使用KrpanoToolJS在浏览器切图
performance.now() 与 Date.now() 对比