netcore 获取本地网络IP地址
。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
netcore 获取本地网络IP地址的更多相关文章
- 获取本地的IP地址(内网)
方法一 public static String getLocalIpAddress() { try { for (Enumeration<NetworkInterface> en = N ...
- 获取本地连接ip地址(通用版)
@echo off & setlocal enabledelayedexpansionrem 如果系统中有route命令,优先采用方案1:for /f "tokens=3,4&quo ...
- java Socket 获取本地主机ip
package cn.itcast.net.p1.ip; import java.net.InetAddress;import java.net.UnknownHostException; publi ...
- .NET中获取当前的IP地址
/// <summary> /// 获取本地IP地址信息 /// </summary> public static string GetAddressIP() { ///获取本 ...
- js获取本机的网络IP地址
JavaScript是一门脚本语言,是不能操作文件,读取本地信息的,所以想要获取IP,还需要借助后端技术.方法如下: //获取本机的网络ip地址 function jsonpCallback(res) ...
- QT5下获取本机IP地址、计算机名、网络连接名、MAC地址、子网掩码、广播地址
获取主机名称 /* * 名称:get_localmachine_name * 功能:获取本机机器名称 * 参数:no * 返回:QString */ QString CafesClient::get_ ...
- JAVA获取客户端请求的当前网络ip地址(附:Nginx反向代理后获取客户端请求的真实IP)
1. JAVA获取客户端请求的当前网络ip地址: /** * 获取客户端请求的当前网络ip * @param request * @return */ public static String get ...
- java获取网络ip地址
在JSP里,获取客户端的IP地址的方法是:request.getRemoteAddr(),这种方法在大部分情况下都是有效的.但是在通过了Apache,Squid等反向代理软件就不能获取到客户端的真实I ...
- qt获取网络ip地址的类
最近在学习qt网络编程,基于tcp和udp协议. 看了一些别人的程序和qt4自带的例子,困扰我最大的问题就是获取ip的类,总结起来还挺多的. 主要介绍常用的QtNetwork Module中的QHos ...
随机推荐
- Symmetric Tree 对称树
判断一棵二叉树是否为对称的树.如 1 / \ 2 2 / \ / \ 3 4 4 3 观察上面的树可以看出:左子树的右子树等于右子树的左子树,左子树的左子树等于右子树的右子树. 首先可以使用递归.递归 ...
- Kinect 骨骼追踪数据的处理方法
http://www.ituring.com.cn/article/196144 作者/ 吴国斌 博士,PMP,微软亚洲研究院学术合作经理.负责中国高校及科研机构Kinect for Windows学 ...
- “Location of the Android SDK has not been set up in the preferences”问题的解决
方法来源:http://stackoverflow.com/questions/5894929/location-of-the-Android-sdk-has-not-been-setup-in-th ...
- Ionic Framework - Getting 'ionic start [appName]' Working Behind a Proxy
This is a quick hacky way to get the ionic start [appName] command working from behind a proxy. I ra ...
- Codeforces Round #479 (Div. 3) C. Less or Equal
题目地址:http://codeforces.com/contest/977/problem/C 题解:给一串数组,是否找到一个数x,找到k个数字<=x,找到输出x,不能输出-1.例如第二组,要 ...
- Java经验杂谈(2.对Java多态的理解)
多态是面向对象的重要特性之一,我试着用最简单的方式解释Java多态: 要正确理解多态,我们需要明确如下概念:・定义类型和实际类型・重载和重写・编译和运行 其中实际类型为new关键字后面的类型. 重载发 ...
- Vue--学习过程中遇到的坑
在这里总结一下学习Vue遇到的易错点,持续更新 1.实例化一个Vue对象: 通过new Vue({ el:'#id', data:{ a:'字符串1', b:‘字符串2’ }) 这里的Vue必须大写V ...
- html居中定位
<!DOCTYPE html PUBLIC "-//W3C//Ddiv XHTML 1.0 divansitional//EN" "http://www.w3.or ...
- python pandas import 失败
今天因为数据处理的需要,安装了pandas. 我的python版本是2.7,使用的编辑器是pycharm.我现在cmd中输入了pip install pandas,然后显示安装成功,但是在使用pand ...
- Naive RNN vs LSTM vs GRU
0 Recurrent Neural Network 1 Naive RNN 2 LSTM peephole Naive RNN vs LSTM 记忆更新部分的操作,Naive RNN为乘法,LSTM ...