#region 搜索ftp服务器地址
        /// <summary>
        /// 搜索ftp服务器
        /// </summary>
        public void SearchFtpServer()
        {
 
var beginIp=""192.168.1.1;
var endIp=""192.168.1.251;
            var currentIp = IPAddress.Parse(beginIp);
            var endIp = IPAddress.Parse(endIp);
 
            var beginNum = GetIpNumber(currentIp);
            var endNum = GetIpNumber(endIp);
 
            for (long i = beginNum; i <= endNum; i++)
            {
              //TODO:根据ip地址做事
                currentIp = NextIP(currentIp);
            }
        }
 
        #region ip地址相关
        /// <summary>
        /// 将ip地址转换为数字表示
        /// </summary>
        /// <param name="ip"></param>
        /// <returns></returns>
        private long GetIpNumber(IPAddress ip)
        {
            var ipBytes = ip.ToString().Split(new char[] { '.' });
            var num = Convert.ToInt64(ipBytes[0]) * 256 * 256 * 256 +
                Convert.ToInt64(ipBytes[1]) * 256 * 256 +
                Convert.ToInt64(ipBytes[2]) * 256 +
                Convert.ToInt64(ipBytes[3]);
            return num;
        }
 
        /// <summary>
        /// 从一个IPAddress 获取它的下一个 IPAddress
        /// </summary>
        /// <param name="theIP"></param>
        /// <returns></returns>
        private IPAddress NextIP(IPAddress theIP)
        {
            byte[] ipBytes = theIP.GetAddressBytes();
            if (ipBytes[3] != 255)
            {
                ipBytes[3] += 1;
            }
            else if (ipBytes[2] != 255)
            {
                ipBytes[2] += 1;
                ipBytes[3] = 1;
            }
            else if (ipBytes[1] != 255)
            {
                ipBytes[1] += 1;
                ipBytes[2] = 1;
                ipBytes[3] = 1;
            }
            else if (ipBytes[0] != 255)
            {
                ipBytes[0] += 1;
                ipBytes[1] = 1;
                ipBytes[2] = 1;
                ipBytes[3] = 1;
            }
            IPAddress ip = new IPAddress(ipBytes);
 
            return ip;
        }
        #endregion

IP地址段遍历的更多相关文章

  1. 封了1000多个IP地址段,服务器现在坚如磐石,对付几个小毛贼还是很轻松的

    封了1000多个IP地址段,服务器现在坚如磐石 root登陆权限取消,防火墙装上,关闭所有没必要的端口,外层加装路由器映射, 修改常用端口,将常用端口改成陷阱程序,只要访问我这些陷阱端口,程序直接dr ...

  2. 这两周服务器被攻击,封锁了600多个IP地址段后今天服务器安静多了

    这两周服务器被攻击,封锁了600多个IP地址段后今天服务器安静多了 建议大家在自己的服务器上也封杀这些瘪三的地址 iptables -I INPUT -s 123.44.55.0/24 -j DROP ...

  3. 【网络基础】【TCP/IP】私有IP地址段

    私有IP地址段 Class A:10.0.0.0    - 10.255.255.255 Class B:172.16.0.0  - 172.31.255.255 Class C:192.168.0. ...

  4. 评估海外pop点网络质量,批量探测到整个国家运营商ip地址段时延

    1 查询当地供应商所有AS号和IP地址段,如下 可以手动复制也可以爬下来,此次测试地址不多,手动复制下来再做下格式话 61.99.128.0/17 61.99.0.0/16 61.98.96.0/20 ...

  5. C++输出IP地址段内的合法地址

    近半年的Intel实习生活快要结束了.马上要找工作了,这段时间打算把以前的知识复习复习,顺便在这里记录一下.这是当时去Intel面试的时候,面试官问的一道题.当时因为时间关系,只让我提供一个思路,并没 ...

  6. php禁止某ip或ip地址段访问的方法(转载)

    <?php include("banIP.php");?> 禁用单个ip如下:<?php //禁用ip地址 $ip=$_SERVER["REMOTE_A ...

  7. JAVA和C#检测IP地址段是否交叉和获取地址段IP列表的方法

    一.说明 我们经常编程时,需要对一个DIDR地段计算其可用IP地址,或者验证某个IP是否被包含在一个地址段中. 二.工具 1.Java 可以使用 cidr-ip-trie库解决. https://gi ...

  8. 如何获得中国所有的IP地址段

    转自: https://wjianz.wordpress.com/2014/09/12/howto-%E4%BB%8Eapnic%E8%8E%B7%E5%8F%96%E4%B8%AD%E5%9B%BD ...

  9. 中国各运营商(电信、联通、移动、铁通)IP地址段

    除此电信.联通.移动.铁通之外还有教育网.科技网.广电.长城.广电…… 表格下载: http://files.cnblogs.com/files/xiaohi/中国IP网段.zip 以上资料参考: h ...

随机推荐

  1. windows系统设置虚拟机开机自启并运行虚拟系统

    简述 很多用windows系统电脑开发的童鞋,会在自己电脑上装一个虚拟机,然后在装一个linux系统当作服务器来使用. 但每次电脑开机都要去重启一下虚拟机电源,实在是不划算.下面博主教大家在windo ...

  2. WPF利用附加属性修改ShowGridLines效果

    1.思路主要代码 wpf的gridline原本效果是虚线类型的.有时候需要设计成表格形式的,因此有了用附加属性来自动绘制边框线的想法. 思路:绘制Line并添加到grid的children里,但效果并 ...

  3. evel()与JSON.parset()的区别

    var x=alert("hello")evel("x");eval() 函数可计算某个字符串,并执行其中的的 JavaScript 代码:消耗大量内存,尤其是 ...

  4. Spring Cloud学习笔记-009

    API网关服务:Spring Cloud Zuul API网关是一个更为智能的应用服务器,它的定义类似于面向对象设计模式中的Façade模式,它的存在就像是整个微服务架构系统的门面一样,所有的外部客户 ...

  5. Hello——Java10新特性,请了解一下

    2018年3月20日,Java 10 正式发布! 相关地址: 官方地址:http://www.oracle.com/technetwork/java/javase/downloads/index.ht ...

  6. webpack的学习准备工作

    第一步:创建一个空项目,在terminal中 npm init  创建package.json文件,直接回车便可. 第二步:局部安装webpack: npm install --save-dev we ...

  7. java模式之模板模式——抽象类

    模板设计模式(Template ) abstract class Action{ // 定义一个行为类 public static final String WORK = "work&quo ...

  8. .NET Core2.0+MVC 用session,cookie实现的sso单点登录

    博主刚接触.NET Core2.0,想做一个单点登录的demo,所以参考了一些资料,这里给上链接: 1.http://www.cnblogs.com/baibaomen/p/sso-sequence- ...

  9. SpringMVC 自定义类型转换器

    先准备一个JavaBean(Employee) 一个Handler(SpringMVCTest) 一个converters(EmployeeConverter) 要实现的输入一个字符串转换成一个emp ...

  10. 词向量:part 1 WordNet、SoW、BoW、TF-IDF、Hash Trick、共现矩阵、SVD

    1.基于知识的表征 如WordNet(图1-1),包含同义词集(synonym sets)和上位词(hypernyms,is a关系). 存在的问题: 作为资源来说是好的,但是它失去了词间的细微差别, ...