C#判断给定IP地址是否在指定范围内的方法
本文实例讲述了C#判断给定IP地址是否在指定范围内的方法。分享给大家供大家参考。具体分析如下:
比如给定一个ip段:127.0.0.1 ~ 127.0.0.255,我们想判断一个给定的ip地址是否在此段内,可以先将ip地址转换成整数,然后整数比较大小就很容易了。
例如:
127.0.0.1 = 2130706433
127.0.0.255 = 2130706687
判断:
127.0.1.253 = 2130706941
是否在此范围内,直接比较整数大小即可
将ip地址转换成整数:
public static long IP2Long(string ip) { string[] ipBytes; double num = 0; if(!string.IsNullOrEmpty(ip)) { ipBytes = ip.Split('.'); for (int i = ipBytes.Length - 1; i >= 0; i--) { num += ((int.Parse(ipBytes[i]) % 256) * Math.Pow(256, (3 - i))); } } return (long)num; }
判断给定ip地址是否在指定范围内:
long start = IP2Long("127.0.0.1"); long end = IP2Long("127.0.0.255"); long ipAddress = IP2Long("127.0.1.253"); bool inRange = (ipAddress >= start && ipAddress <= end); if (inRange){ //IP Address fits within range! }
希望本文所述对大家的C#程序设计有所帮助。
相关推荐
-
C#判断ip地址是否可以ping的通
复制代码 代码如下: Ping pingSender = new Ping(); PingReply reply = pingSender.Send("127.0.0.1",120);//第一个参数为ip地址,第二个参数为ping的时间 if(reply.Status == IPStatus.Success) { //ping的通 } else { //ping不通 }
-
C#获取计算机名,IP,MAC信息实现代码
利用C#获取计算机名,IP,MAC信息,如下为源代码: 复制代码 代码如下: using System; using System.Collections.Generic; using System.Text; using System.Net; using System.Management; namespace Wenanry.Net { /// <summary> /// 获取计算机系统信息 /// </summary> public class ManagementSyst
-
c#获取本机的IP地址的代码
复制代码 代码如下: public static IPAddress GetHostIP(){ IPHostEntry ipe = Dns.GetHostEntry(Dns.GetHostName()); IPAddress ip = ipe.AddressList[0]; return ip;} private String GetIPAddress(){ String str; String Result
-
C#获取真实IP地址(IP转为长整形、判断是否内网IP的方法)
今天查看登录日志,发现http_x_forwarded_for获取到的ip地址有些是内网ip地址,有些则是公网和内网ip地址一起获取到,用逗号分隔开,日志截图如下: 之前获取ip地址的C#代码如下: 复制代码 代码如下: /// <summary> /// C#获取客户端真实IP地址 /// </summary> /// <returns></returns> public static string GetIP()
-
C# 根据ip获取城市等相关信息
复制代码 代码如下: /// <summary> /// 得到真实IP以及所在地详细信息(Porschev) /// </summary> /// <returns></returns> public string GetIpDetails() { //设置获取IP地址和国家源码的网址 string url = "http://www.ip138.com/ips8.asp"; string regStr = "(?<=&l
-
c#获取本机在局域网ip地址的二种方法
复制代码 代码如下: /// <summary>/// 获取本机在局域网的IP地址/// </summary>/// <returns></returns>private string GetLocalIPAddress(){ System.Net.IPAddress[] addressList = Dns.GetHostEntry(Dns.GetHostName()).AddressList; string strNativeIP = &quo
-
C#获取本机IP地址和Mac地址的方法
本文实例讲述了C#获取本机IP地址和Mac地址的方法.分享给大家供大家参考.具体分析如下: 查找了几个方法,经过调试修改,下面这个方法能很好的获取到本地的IP和MAC地址.可以用于这方面的功能实现.主要是要添加System.Management的引用. using System; using System.Management; using System.Net; public class Program { static void Main(string[] args) { try { str
-
用C#编写获取远程IP,MAC的方法
如果要想获得远程的地址,需要用sendarp这个函数来实现.具体的代码如下: [DllImport("Iphlpapi.dll")] private static unsafe extern int SendARP(Int32 dest,Int32 host,ref IntPtr mac,ref IntPtr length); [DllImport("Ws2_32.dll")] private static extern Int32 inet_addr(st
-
c#判断正确的ip地址格式示例
判断ip地址是否正确,直接用.Net现成的类,方法如下 复制代码 代码如下: string ipStr="192.168.222.333";IPAddress ip;if(IPAddress.TryParse(ipStr,out ip)){ Console.WriterLine("合法IP");}else{ Console.WriterLine("非法IP");}
-
C# 获取IP及判断IP是否在区间
话不多说,请看代码: /// <summary> /// 获取客户端IP /// </summary> /// <returns></returns> public static string GetClientIpAddress() { var httpContext = HttpContext.Current; if (httpContext.Request.ServerVariables == null) { return null; } var cl
随机推荐
- Asp.Net 程序错误Runtime Error原因与解决
- AJAX下的请求方式以及同步异步的区别小结
- jquery使用Cookie和JSON记录用户最近浏览历史
- jQuery弹出层始终垂直居中相对于屏幕或当前窗口
- Java实现获取前、后N天日期的函数分享
- 自己编程中遇到的Python错误和解决方法汇总整理
- Javascript中的Callback方法浅析
- Yii2基于Ajax自动获取表单数据的方法
- php 计算两个时间戳相隔的时间的函数(小时)
- Android 如何修改APK的默认名称
- C#面向对象设计的七大原则
- Android中的android:layout_weight使用详解
- Android实现文件的分割和组装
- 文字不间断滚动(上下左右)实例代码
- 10款PHP开源商城系统汇总介绍
- jQuery插件HighCharts绘制2D金字塔图效果示例【附demo源码下载】
- JQuery表格拖动调整列宽效果(自己动手写的)
- JavaScript制作简单分页插件
- 用DNSPod和Squid打造自己的CDN (五) 安装Squid的前期准备
- Android实现无标题栏全屏的方法