如何获取网络接口及其正确的 IPv4 地址?

2023-12-13

我需要知道如何获取所有网络接口及其IPv4地址。 或者只是无线和以太网。

要获取所有网络接口详细信息,我使用以下命令:

foreach (NetworkInterface ni in NetworkInterface.GetAllNetworkInterfaces()) {
    if(ni.NetworkInterfaceType == NetworkInterfaceType.Wireless80211 ||
       ni.NetworkInterfaceType == NetworkInterfaceType.Ethernet) {

        Console.WriteLine(ni.Name);
    }
}

并获取计算机的所有托管 IPv4 地址:

IPAddress [] IPS = Dns.GetHostAddresses(Dns.GetHostName());
foreach (IPAddress ip in IPS) {
    if (ip.AddressFamily == AddressFamily.InterNetwork) {

        Console.WriteLine("IP address: " + ip);
    }
}

但如何获取网络接口及其正确的 ipv4 地址呢?


foreach(NetworkInterface ni in NetworkInterface.GetAllNetworkInterfaces())
{
   if(ni.NetworkInterfaceType == NetworkInterfaceType.Wireless80211 || ni.NetworkInterfaceType == NetworkInterfaceType.Ethernet)
   {
       Console.WriteLine(ni.Name);
       foreach (UnicastIPAddressInformation ip in ni.GetIPProperties().UnicastAddresses)
       {
           if (ip.Address.AddressFamily == System.Net.Sockets.AddressFamily.InterNetwork)
           {
               Console.WriteLine(ip.Address.ToString());
           }
       }
   }  
}

这应该能让你得到你想要的。 ip.Address 是您想要的 IP 地址。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何获取网络接口及其正确的 IPv4 地址? 的相关文章

  • 使用 CLion 进行 OpenCV Windows 设置

    我想在 Windows 上为 CLion IDE 设置 OpenCV 我尝试使用 OpenCV 3 1 和 2 4 得到相同的结果 我有 Windows 10 64 位 CLion 使用 cygwin 环境 到目前为止我做了什么 1 从Op
  • CMake 找不到请求的 Boost 库

    既然我已经浏览了其他人的解决方案几个小时 但找不到适合我的问题的正确答案 我想将我的具体问题带给您 我正在尝试使用 CMake 构建 vsomeip 为此 我之前构建了 boost 1 55 但是 我在 CMake 中收到以下错误 The
  • 在现代 C++ 中,临时生命周期延长何时有用?

    在 C 中 您可以将函数的返回值 返回值 而不是引用 绑定到 const 引用 并且代码仍然有效 因为该临时对象的生命周期将延长到作用域末尾 例如 std string get string return abc void f const
  • std::call_once 可重入且线程安全吗?

    std call once http en cppreference com w cpp thread call once是线程安全的 但它也是可重入的吗 我使用 VS2012 调试和发布 进行的测试表明 调用std call once从单
  • 为什么'enable_if'不能用于禁用这里声明

    include
  • 增强精神、递归和堆栈溢出

    为什么下面的代码在运行时崩溃 它会给出堆栈溢出错误 include
  • C# 编译器不会优化不必要的强制转换

    前几天 在写答案的时候这个问题 https stackoverflow com questions 2208315 why is any slower than contains在这里 关于溢出 我对 C 编译器感到有点惊讶 它没有按照我的
  • 使用 C# 和 wpf 创建类似 Dock 的应用程序

    我需要创建一个与我们购买笔记本电脑时获得的应用程序类似的应用程序 仅当鼠标指针到达窗口顶部时它才可见 那么我怎样才能使用 C 4 0 来做到这一点呢 http www notebookcheck net uploads pics win2
  • 如何对 NServiceBus.Configure.WithWeb() 进行单元测试?

    我正在构建一个 WCF 服务 该服务接收外部 IP 上的请求并将其转换为通过 NServiceBus 发送的消息 我的单元测试之一调用Global Application Start 它执行应用程序的配置 然后尝试将 Web 服务解析为 验
  • 如何在三个 IEnumerable 上使用 Zip [重复]

    这个问题在这里已经有答案了 可能的重复 使用 Linq 从 3 个集合创建项目 https stackoverflow com questions 5284315 create items from 3 collections using
  • C#6 中的长字符串插值行

    我发现 虽然字符串插值在应用于现有代码库的字符串 Format 调用时非常好 但考虑到通常首选的列限制 字符串对于单行来说很快就会变得太长 特别是当被插值的表达式很复杂时 使用格式字符串 您将获得一个可以拆分为多行的变量列表 var str
  • 在 asp.net MVC 中使用活动目录进行身份验证

    我想使用活动目录对我的 asp net mvc 项目中的用户进行身份验证 在网上冲浪了几个小时后 我没有找到任何对我有用的东西 我已经看到了所有结果 但什么也没有 我尝试按照许多帖子的建议编辑我的 web config 如果有人可以帮助我提
  • 从BackgroundWorker线程更新图像UI属性

    在我正在编写的 WPF 应用程序中 我有一个 TransformedBitmap 属性 该属性绑定到 UI 上的 Image 对象 每当我更改此属性时 图像就会更新 因此显示在屏幕上的图像也会更新 为了防止在检索下一张图像时 UI 冻结或变
  • Android项目中使用java获取电脑的IP地址

    我在用ksoap2 android http code google com p ksoap2 android 我需要使用java获取IP地址 这样我就不必每次都手动输入它 我所说的 IP 地址是指 例如 如果我这样做ipconfig使用命
  • 使用 GCC 生成可读的程序集?

    我想知道如何使用GCC http en wikipedia org wiki GNU Compiler Collection在我的 C 源文件中转储机器代码的助记符版本 这样我就可以看到我的代码被编译成什么 你可以使用 Java 来做到这一
  • 如何从 Rx Subscribe 回调异步函数?

    我想回调 Rx 订阅中的异步函数 例如 像那样 public class Consumer private readonly Service service new Service public ReplaySubject
  • 需要提取字符串中点后的最后一个数字,如“7.8.9.1.5.1.100”

    我需要提取 C 字符串中最后一个点后面的最后一个数字 例如 7 8 9 1 5 1 100 并将其存储在整数中 Added 该字符串也可以是 7 8 9 1 5 1 1 或 7 8 9 1 5 1 0 我还想验证它在最后一个点之前恰好是 7
  • 来自 3rd 方库的链接器错误 LNK2019

    我正在将旧的 vc 6 0 应用程序移植到 vs2005 我收到以下链接器错误 我花了几天时间试图找到解决方案 错误LNK2019 无法解析的外部符号 imp 创建AwnService 52 在函数 public int thiscall
  • DataContractSerializer 事件/委托字段问题

    在我的 WPF 应用程序中 我正在使用DataContractSerializer序列化对象 我发现它无法序列化具有事件或委托声明的类型 考虑以下失败的代码 Serializable public abstract class BaseCl
  • 使用未分配的局部变量

    我遇到了一个错误 尽管声明了变量 failturetext 和 userName 错误仍然出现 谁能帮帮我吗 Use of Unassigned local variable FailureText Use of Unassigned lo

随机推荐

  • 将数字四舍五入到小数点后第一位

    我想知道可用的手机内存 所以我写了这段代码 File path2 Environment getDataDirectory StatFs stat2 new StatFs path getPath long blockSize2 stat
  • APNS(Apple 推送通知服务)可靠性

    我们的应用程序使用 APNS 接收推送通知 然而 我们的客户声称他们的一些设备没有收到通知 并辩称他们 必须 确保 100 发送通知 但我读过某处APNS 并非 100 可靠 应该存在通知未发送的情况 我目前对如何确保随时收到 APNS 感
  • 如何使用分散发送数组的一部分?

    我正在自学 Python mpi4py 模块 用于在多个进程中进行编程 我编写了以下代码来练习分散 from mpi4py import MPI comm MPI COMM WORLD size comm Get size rank com
  • 如何将 Flask 响应对象转换为字典

    我知道flask jsonify返回一个flask Response对象 但是我不知道如何将此对象转换为字典 我该怎么做呢 app route methods GET def hello Accept and jsonify GET req
  • 通过 ASP.NET 应用程序启用 process.start 需要哪些权限?

    我有一个 asp net 应用程序 它使用 process start 来调用可执行文件 Graphviz 一切在我的开发环境中运行良好 但是当我转向生产时 我无法运行该流程 详细信息如下 我创建了这个简单的子来展示这个问题 Protect
  • 如何在 Flutter 中拉伸图像以适合整个背景(100% 高度 x 100% 宽度)?

    我的图像与我的设备屏幕的宽高比不匹配 我想拉伸图像以使其完全填满屏幕 并且我不想裁剪图像的任何部分 CSS有百分比的概念 所以我可以将高度和宽度设置为100 但 Flutter 似乎没有这个概念 而且仅仅硬编码高度和宽度是不好的 所以我被困
  • 获取字符串中的中间/开始/结束阿拉伯字符

    大多数阿拉伯字母都有多种上下文形式 例如后者 有通用unicode0628 但如果后者出现在单词的开头将采用这种形式 统一码FE91 中 统一码FE92 词尾 统一码FE90 我正在尝试获取 char 代码 但我总是得到通用的 unicod
  • 如果购物车中有特定产品,请禁用所有支付网关

    我想在特殊情况下禁用所有支付网关 我有 2 种特殊产品 我不想在结账时与任何其他产品组合使用 可以说我的 特别的 产品 ID 是496 and 484 所有其他都是 normal 产品 如果其中之一 特别的 产品在购物车中 例如我想禁用 p
  • Rails 实现自动完成搜索

    我不确定如何为我的搜索功能添加自动完成表单 我有一个具有自定义操作的以下控制器 def query users Search user params query article Search article params query end
  • SQL Server 2005 用 0 填充数据透视表

    I have 这个查询在 SQL Server 2005 中 我仅使用更方便的 2008 插入方法作为示例 我需要在网格输出中将 null 替换为 0 无论如何要这样做吗 你会使用ISNULL 功能 看SQL小提琴 SELECT lesso
  • 在开发过程中调整 MySQL 以快速创建列/索引

    假设 MySQL MyISAM 表包含 1 GB 数据和 1 GB 索引 此外 假设在开发过程中 列和索引将非常频繁地从表中添加和删除 由于数据库的大小 使用标准的未调整的 MySQL 设置时 列 索引的创建速度很慢 为了最大限度地减少添加
  • 获取传递给方法的参数名称[重复]

    这个问题在这里已经有答案了 复制 确定用作方法参数的变量名称 有什么方法可以检索传递给方法的参数的名称 例如 int someParameter 1 Method someParameter public void Method int p
  • NextJS React - WebpackError:窗口未定义

    我正在尝试玩 React 我遵循了 NextJs 的 入门 教程 link 并且我已经成功创建了新项目 一旦我尝试导入第三方插件 例如当前设备 or 平滑滚动条我收到以下错误 ReferenceError window is not def
  • .Net Maui:如何从任何内容页面(MVVM)读取/写入(获取/设置)全局对象

    我确信我在这里遗漏了一些深刻或明显的概念 现在我有了一个页面 可以设置各种蓝牙传感器并从心率监视器 速度计和踏频传感器获取数据 使用插件 BLE 因此 我在 ViewModel 中为名为 BluetoothPage 的 ContentPag
  • 反转 CSS 动画

    我这样做了 http codepen io yayoni pen pgXoWY 当我点击小按钮时 我想反转动画 但我所做的不起作用 我不明白为什么 function anim var div document getElementById
  • Android LinearLayout 在 Horizo​​ntalScrollView 中具有多行

    我在 Horizo ntalScrollView 中使用 LinearLayout 滚动部分正在工作 但我不知道如何制作 3 行 例如 Bold显示当前显示的内容 在模拟器中 在屏幕上 Current 按钮1 按钮2 按钮3 按钮4 按钮5
  • 单击菜单标题时连接函数

    我正在尝试找到开放的端口并将它们添加到我的菜单中 现在 我成功地对菜单执行了一个操作 例如 查找端口 并且只有单击它时 它才会连接到获取所有可用端口的函数 不幸的是 这不是我想要的 我想点击菜单title 并获取我的菜单中的所有端口 下面是
  • 从数值向量获取类别

    我有这个数字向量 vec lt 1 7 如何使用这些逻辑规则将其转换为 3 类 if vec gt 1 vec lt 4 then category1 else if vec gt 4 vec lt 6 then category2 els
  • 具有 Azure AD B2C 和单点登录的 MSAL

    我正在开发一个带有几个 Angular 4 SPA 的系统 每个 SPA 都与一个单独的 Asp NET Core 2 0 WebAPI 进行通信 Azure AD B2C 用作每个 SPA API 的身份服务 MSAL js 用作我们 A
  • 如何获取网络接口及其正确的 IPv4 地址?

    我需要知道如何获取所有网络接口及其IPv4地址 或者只是无线和以太网 要获取所有网络接口详细信息 我使用以下命令 foreach NetworkInterface ni in NetworkInterface GetAllNetworkIn