public struct IP
        {
            public byte A;
            public byte B;
            public byte C;
            public byte D;
 
            public IP(byte[] ba)
            {
                A = ba[0];
                B = ba[1];
                C = ba[2];
                D = ba[3];
            }
        }
 
        public static void IPSection(IPAddress ip1, IPAddress ip2)
        {
            IP x = new IP(ip1.GetAddressBytes());
            IP y = new IP(ip2.GetAddressBytes());
 
            byte secStart = 1;      //这里可以改为0
            byte secEnd = 254;      //这里可以改为255
 
            for (byte a = x.A; a <= y.A; a++)
            {
                byte bStart = (a == x.A ? x.B : secStart);
                byte bEnd = (a == y.A ? y.B : secEnd);
 
                for (byte b = bStart; b <= bEnd; b++)
                {
                    byte cStart = (a == x.A && b == x.B) ? x.C : secStart;
                    byte cEnd = (a == y.A && b == y.B) ? y.C : secEnd;
 
                    for (byte c = cStart; c <= cEnd; c++)
                    {
                        byte dStart = (a == x.A && b == x.B && c == x.C) ? x.D : secStart;
                        byte dEnd = (a == y.A && b == y.B && c == y.C) ? y.D : secEnd;
 
                        for (byte d = dStart; d <= dEnd; d++)
                        {
                            OutputIpAddress(a, b, c, d);
                        }
                        //这个是测试用的,只输出这一网段最后一位的起止位置,不输出全部。
                        //Output("========输出网段========");
                        //OutputIpAddress(a, b, c, dStart);
                        //OutputIpAddress(a, b, c, dEnd);
                    }
                }
            }
        }

========================

 
 
 string ipStr1 = "1.1.1.1";
            string ipStr2 = "1.1.2.2";
            string[] ipArray1 = ipStr1.Split(new char[] { '.' });
             
            string[] ipArray2 = ipStr2.Split(new char[] { '.' });
 
            long ipStart = 256 * 256 * 256 * long.Parse(ipArray1[0]) + 256 * 256 * long.Parse(ipArray1[1]) + 256 * long.Parse(ipArray1[2]) + long.Parse(ipArray1[3]);
            long ipEnd = 256 * 256 * 256 * long.Parse(ipArray2[0]) + 256 * 256 * long.Parse(ipArray2[1]) + 256 * long.Parse(ipArray2[2]) + long.Parse(ipArray2[3]);
 
            List<string> SearchIPArray = new List<string>();//存放你的中间IP
 
            for (long i = ipStart; i <= ipEnd; i++)
            {
                long tmp = i;
                long a = tmp / (256 * 256 * 256);
                tmp -= a * (256 * 256 * 256);
                long b = tmp / (256 * 256);
                tmp -= b * 256 * 256;
                long c = tmp / 256;
                tmp -= c * 256;
                long d = tmp;
                SearchIPArray.Add(a.ToString() + "." + b.ToString() + "." + c.ToString() + "." + d.ToString());                
            }

循环ip段 转载 出处不明的更多相关文章

  1. 【转载】IIS6、IIS7、IIS7.5设置拒绝一组计算机(IP段)访问网站的方法

    IIS6设置方法: 1.打开IIS管理器,右键点击网站,选择“属性” 2.把标签切换到“目录安全性”,点击“IP地址和域名限制”的编辑按钮,如下图: IP地址和域名限制 3.选择“授权访问”,然后点击 ...

  2. [转帖]IP地址、子网掩码、网络号、主机号、网络地址、主机地址以及ip段/数字-如192.168.0.1/24是什么意思?

    IP地址.子网掩码.网络号.主机号.网络地址.主机地址以及ip段/数字-如192.168.0.1/24是什么意思? 2016年03月26日 23:38:50 JeanCheng 阅读数:105674  ...

  3. IP段,ASN与BGP之间的关系

    概览 IP段就是类似于1.0.2.0-1.0.2.255或者1.0.2.0/24的形式 ASN(Autonomous system number)自治系统编号 BGP(Border Gateway P ...

  4. 百度蜘蛛IP段分析

    大家进行网站日志分析的时候,常见到很多不同IP段的百度蜘蛛,为了方便大家更好的进行日志分析,下面列举了百度不同IP段常见蜘蛛的一些详情情况,及所谓的降权蜘蛛,沙盒蜘蛛,高权重蜘蛛等等 下面的百度蜘蛛I ...

  5. 一键批量ping任意ip段的存活主机

    =======================by me===================================== @echo offecho.color FC for /f %%i ...

  6. linux编写脚本检测本机链接指定IP段是否畅通

    linux编写脚本检测本机链接指定IP段是否畅通,通过ping命令检测指定IP,检测命令执行结果,若为0表示畅通,若为1表示不通,以此判断网络是否畅通,但是指定机器禁用ping命令除外.代码如下: # ...

  7. bootargs中ip段各项解释

    目标板:合众达的SEED-DVS6467开发板 内核版本:2.6.10 最近同事测试板卡nfs挂载PC的文件系统时出现点问题,PC上ifconfig中显示以太网为eth3,然而板卡启动参数列表相关信息 ...

  8. ip效验和ip段的效验

      package com.juchen.utils; import javax.servlet.http.HttpServletRequest; /** * ip 相关的工具方法 */ public ...

  9. [转帖]Oracle 使用sqlnet.ora/trigger限制/允许某IP或IP段访问指定用户

    Oracle 使用sqlnet.ora/trigger限制/允许某IP或IP段访问指定用户 原创 Oracle 作者:maohaiqing0304 时间:2016-05-03 17:05:46  17 ...

随机推荐

  1. java.net.ConnectException connect refured

    原因:tomcat 连接拒绝:tomcat没有完全重启 只是部分重启 解决方案: 连接tomcat服务 命令:1:ps -ef|grep java : 2:kill -9 21060 3:查看tomc ...

  2. Zookeeper实现分布式锁服务(Chubby)

    在分布式系统中,如果不同的系统或是同一个系统的不同主机之间共享了一个或一组资源,那么访问这些资源的时候,往往需要互斥来防止彼此干扰,来保证一致性,在这种情况下,便需要使用到分布式锁例如有N台服务器同时 ...

  3. 关于设置CFileDialog的默认路径

    CFileDialog   d_File(FRUE, NULL,NULL,NULL,szFilter,FromHandle(m_hWnd)); // 如果写了下面这句那么每次打开都是这个设置的默认路径 ...

  4. mysql允许远程连接授权方法

    mysql数据库和apache不在同一台服务器时,需要远程连接mysql,这就要对mysql进行远程连接授权,为了安全只允许某些ip可以连接: 假如你想root用户从ip 192.168.2.12连接 ...

  5. thinkphp 的两种建构模式 第一种一个单入口里面定义两个模块,前台和后台,函数控制模块必须function.php前台加载前台模块的汉书配置文件,后台加载后台模块的汉书配置文件,公共文件共用。第二种架构模式两个单入口文件,分别生成两个应用定义define。。。函数可以定义配置文件。。。。

    thinkphp 的两种建构模式  第一种一个单入口里面定义两个模块,前台和后台,函数控制模块必须function.php前台加载前台模块的汉书配置文件,后台加载后台模块的汉书配置文件,公共文件共用. ...

  6. doc 窗口操作图

    doc 窗口操作图doc 窗口操作图vdoc 窗口操作图

  7. Spring Security(13)——session管理

    1.1     检测session超时 1.2     concurrency-control 1.3     session 固定攻击保护 Spring Security通过http元素下的子元素s ...

  8. php基础八(cookie)

    cookie 常用于识别用户.cookie 是服务器留在用户计算机中的小文件.每当相同的计算机通过浏览器请求页面时,它同时会发送 cookie.通过 PHP,您能够创建并取回 cookie 的值. 如 ...

  9. 使用EasyBCD 从硬盘安装 deepin2014.1

    EasyBCD config  code: title Install Deepin2014 root (hd0,1) kernel (hd0,1)/vmlinuz boot=casper iso-s ...

  10. java 内省

    用内省来操作Bean会给程序带来很大的便利,特别是在很大的实体对象的时候,在其属性很多的时候要为其赋值的时候, package com.bean; public class User { privat ...