//
        /// <summary>
        /// 判断一个IP地址是否是本局域网内地址,是返回true 否则返回false,
        /// </summary>
        /// <returns></returns>
        public static bool IsLocalIP(string strUserIP)
        {
            bool bIsLocal = false;
            if(strUserIP == "127.0.0.1")
            {
                bIsLocal = true;
            }
            else
            {
                string sUserIp = strUserIP;
                int nIndexFDot = sUserIp.IndexOf(".",0);
                string sFirstSeg = sUserIp.Substring(0,nIndexFDot);
                switch(sFirstSeg)
                {
                    case "10":
                        bIsLocal = true;
                        break;
                    case "192":
                    {
                        sUserIp = sUserIp.Substring(nIndexFDot+1);
                        int nIndexSDot = sUserIp.IndexOf(".",0);
                        string sSecSeg = sUserIp.Substring(0,nIndexSDot);
                        if(sSecSeg == "168")
                        {
                            bIsLocal = true;
                        }
                        else
                        {
                            bIsLocal = false;
                        }
                        break;
                    }
                    case "172":
                    {
                        sUserIp = sUserIp.Substring(nIndexFDot+1);
                        int nIndexSDot = sUserIp.IndexOf(".",0);
                        string sSecSeg = sUserIp.Substring(0,nIndexSDot);
                        int nSecNum = Convert.ToInt32(sSecSeg);
                        if((nSecNum >= 16)&&(nSecNum <= 131))
                        {
                            bIsLocal = true;
                        }
                        else
                        {
                            bIsLocal = false;
                        }
                        break;
                    }
                    default:
                        bIsLocal = false;
                        break;
                }    
            }
            return bIsLocal;
        }

判断一个IP地址是否是本局域网内地址的更多相关文章

  1. 如何利用python教程判断一个 IP 在不在线?

    假设今天老板给我们一个任务,让我们判断一下一个 IP 在不在线.我们随手用 python 写一个 ping IP 的代码: import os host = input('请输入要检测的 IP : ' ...

  2. 判断一个ip地址是动态的还是静态的

    要确定计算机的IP是静态IP还是动态IP,请执行以下步骤: 通过单击开始打开命令提示符并搜索CMD,然后单击cmd.exe 键入ipconfig / all.  找到“以太网本地连接”列表.找到“ I ...

  3. 判断一个ip地址合法性(基础c,不用库函数)

    #include <stdio.h> int judge(char *strIp); int main() { ]; ) { scanf("%s", a); == ju ...

  4. c# 判断一个ip通不通 能不能ping通

    方法一: 已经证实能用的. using System; using System.Collections.Generic; using System.ComponentModel; using Sys ...

  5. SQLServer判断一个IP是否在一个IP段里

    declare @ip1 varchar(20)declare @ip2 varchar(20)set @ip1='221.231.138.101'set @ip2='255.255.255.255' ...

  6. Spring Data MongDB空间索引(判断一个点Point是否在一个区域Polygon内)

    这里要连接MongoDB数据库,在配置文件里:spring.data.mongodb.uri = mongodb://root:root@localhost:27017/happy 两个root分别是 ...

  7. Python 射线法判断一个点坐标是否在一个坐标区域内

    class Point: lng = '' lat = '' def __init__(self, lng, lat): self.lng = lng self.lat = lat # 求外包矩形 d ...

  8. 判断一个坐标点是否在封闭曲线内的方法(swift)

    //用playground运行即可 import UIKit var str = "Hello, playground" let lTestPointsOne : [(Double ...

  9. 网络编程懒人入门(九):通俗讲解,有了IP地址,为何还要用MAC地址?

    1.前言 标题虽然是为了解释有了 IP 地址,为什么还要用 MAC 地址,但是本文的重点在于理解为什么要有 IP 这样的东西.本文对读者的定位是知道 MAC 地址是什么,IP 地址是什么. (本文同步 ...

随机推荐

  1. checkbox 复选框只能选中一次,之后不能用

    <td> <input type="checkbox" name="is_check" id="is_check" val ...

  2. POJ 3107 Godfather (树重心)

    题目链接:http://poj.org/problem?id=3107 题意: 数重心,并按从小到大输出. 思路: dfs #include <iostream> #include < ...

  3. 【APIO2015】Palembang Bridges

    题目描述 一条东西走向的穆西河将巴邻旁市一分为二,分割成了区域 $A$ 和区域 $B$. 每一块区域沿着河岸都建了恰好 $1000000001$ 栋的建筑,每条岸边的建筑都从 $0$ 编号到 $100 ...

  4. java webservice wsimport 无法将名称 'soapenc:Array' 解析为 'type definition' 组件 时对应的解决方法

    (一):代码如下: package com.enso.uploaddata; import org.apache.axis.client.Call; import org.apache.axis.cl ...

  5. jsonp _____跨域请求实现

    请求如下: $.ajax({ type: "GET", async:false, url: "http://127.0.0.1:8080/Cross-site-reque ...

  6. POJ1430 Binary Stirling Numbers

    @(POJ)[Stirling數, 排列組合, 數形結合] Description The Stirling number of the second kind S(n, m) stands for ...

  7. C++精华笔记

    牛客微信推送的C++笔记:2016-12-12   14:23:26 1.C++不仅支持面向对象,也可以像C一样支持面向过程. 2.OOP三大特性:封装 继承 多态 3.函数重载依据:函数类型and形 ...

  8. 【Python】输出程序运行的百分比

    对于一些大型的Python程序.我们须要在命令行输出其百分比,显得更加友好,以免被人误会程序陷入死循环.假死的窗口. 关键是利用到不换行的输出符\r,\r的输出.将直接覆盖掉此行的内容. 比方例如以下 ...

  9. Construct Binary Tree from Inorder and Postorder Traversal ——通过中序、后序遍历得到二叉树

    题意:根据二叉树的中序遍历和后序遍历恢复二叉树. 解题思路:看到树首先想到要用递归来解题.以这道题为例:如果一颗二叉树为{1,2,3,4,5,6,7},则中序遍历为{4,2,5,1,6,3,7},后序 ...

  10. Android——动画的分类

    Android包含三种动画:View Animation, Drawable Animation, Property Animation(Android 3.0新引入). 1.View Animati ...