。net framework 下面可以用下面的代码获取到本地网络ip地址。netcore下面这个代码也依然可以用

System.Net.Dns.GetHostName()
System.Net.Dns.GetHostEntry(hostName)

But,偶然的一次线上日志查看,发现获取到的IP全都是127.0.0.1。虽然本地windows测试上面的代码好使,本地测试环境centos7也好使。就是线上部分机器有问题,

遂写了个demo程序放产线上跑了一下,发现GetHostEntry里面只有一张网卡的信息,即本地回环的那个(lo);

后,经过伟大的google教训:找到https://github.com/dotnet/corefx/issues/8458,遂恍然大悟,应该这样写:

System.Net.NetworkInformation.NetworkInterface.GetAllNetworkInterfaces()
.Select(p => p.GetIPProperties())
.SelectMany(p => p.UnicastAddresses)
.Where(p => p.Address.AddressFamily == System.Net.Sockets.AddressFamily.InterNetwork && !System.Net.IPAddress.IsLoopback(p.Address))
.FirstOrDefault()?.Address.ToString();

参考:https://github.com/dotnet/corefx/issues/8458

最新文章

  1. supervisor-3:xml_rpc
  2. [转]在MyEclipse中设置struts.xml自动提示功能
  3. windows系统上安装与使用Android NDK r5 (转)
  4. extjs 4.2 日期控件 选择时分秒功能
  5. ctrl+z暂停任务
  6. bzoj 2154 莫比乌斯反演求lcm的和
  7. 【LCA】CodeForce #326 Div.2 E:Duff in the Army
  8. httpclient介绍
  9. iOS开发应用学习笔记
  10. charindex的用法
  11. Oracel 编写控制结构
  12. 关于隐式创建vue实例实现简化弹出框组件显示步骤
  13. LINUX 安装扩展(笔记)
  14. 洛谷P2918 [USACO08NOV]买干草(一道完全背包模板题)
  15. TF:TF分类问题之MNIST手写50000数据集实现87.4%准确率识别:SGD法+softmax法+cross_entropy法—Jason niu
  16. 用.NET WebService Studio调试Web Service解决SOAPAction的问题
  17. c#与IronPython Clojure-clr的调用
  18. Windows 7 64bit上安装Oracle Database 12c [INS-30131] 错误的解决方法
  19. 使用log4net记录日志到数据库(含有自定义属性)
  20. sql server 设置用户名和密码

热门文章

  1. 查找链表中是否有环linked-list-cycle
  2. java并发包分析之———concurrentHashMap
  3. Oracle数据库date类型与Java中Date的联系与转化
  4. python单线程,多线程和协程速度对比
  5. C# 操作PDF 图层(Layer)——添加、删除图层、设置图层可见性
  6. spirng底层实现原理
  7. IOC框架:Unity
  8. log4j配置及使用
  9. [Java算法分析与设计]--线性结构与顺序表(List)的实现应用
  10. Python入门、练手、视频资源汇总,拿走别客气!