最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Java判斷IP地址為內(nèi)網(wǎng)IP還是公網(wǎng)IP的方法

 更新時間:2015年01月13日 09:09:16   投稿:shichen2014  
這篇文章主要介紹了Java判斷IP地址為內(nèi)網(wǎng)IP還是公網(wǎng)IP的方法,針對tcp/ip協(xié)議中保留的三個私有地址進(jìn)行判斷分析,是比較實(shí)用的技巧,需要的朋友可以參考下

本文實(shí)例講述了Java判斷IP地址為內(nèi)網(wǎng)IP還是公網(wǎng)IP的方法。分享給大家供大家參考。具體分析如下:

tcp/ip協(xié)議中,專門保留了三個IP地址區(qū)域作為私有地址,其地址范圍如下:

10.0.0.0/8:10.0.0.0~10.255.255.255
172.16.0.0/12:172.16.0.0~172.31.255.255
192.168.0.0/16:192.168.0.0~192.168.255.255

那么,直接上代碼吧:

復(fù)制代碼 代碼如下:
public static boolean internalIp(String ip) {
    byte[] addr = IPAddressUtil.textToNumericFormatV4(ip);
    return internalIp(addr);
}

public static boolean internalIp(byte[] addr) {
    final byte b0 = addr[0];
    final byte b1 = addr[1];
    //10.x.x.x/8
    final byte SECTION_1 = 0x0A;
    //172.16.x.x/12
    final byte SECTION_2 = (byte) 0xAC;
    final byte SECTION_3 = (byte) 0x10;
    final byte SECTION_4 = (byte) 0x1F;
    //192.168.x.x/16
    final byte SECTION_5 = (byte) 0xC0;
    final byte SECTION_6 = (byte) 0xA8;
    switch (b0) {
        case SECTION_1:
            return true;
        case SECTION_2:
            if (b1 >= SECTION_3 && b1 <= SECTION_4) {
                return true;
            }
        case SECTION_5:
            switch (b1) {
                case SECTION_6:
                    return true;
            }
        default:
            return false;
    }
}

希望本文所述對大家的Java程序設(shè)計有所幫助。

相關(guān)文章

  • Springboot項目打war包docker包找不到resource下靜態(tài)資源的解決方案

    Springboot項目打war包docker包找不到resource下靜態(tài)資源的解決方案

    今天小編就為大家分享一篇關(guān)于Springboot項目打war包docker包找不到resource下靜態(tài)資源的解決方案,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2019-03-03
  • SpringMVC中處理Http請求的原理詳解

    SpringMVC中處理Http請求的原理詳解

    這篇文章主要介紹了SpringMVC中處理Http請求的原理詳解,當(dāng)一個http請求過來了首先經(jīng)過的是DispatcherServlet這么一個前端控制器并調(diào)用了這個前端控制器的doService方法,這個方法最終我們發(fā)現(xiàn)它調(diào)用了doDispatcher這么一個方法,需要的朋友可以參考下
    2023-12-12
  • springmvc處理響應(yīng)數(shù)據(jù)的解析

    springmvc處理響應(yīng)數(shù)據(jù)的解析

    今天小編就為大家分享一篇關(guān)于springmvc處理響應(yīng)數(shù)據(jù)的解析,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2019-01-01
  • 新版SpringSecurity5.x使用與配置詳解

    新版SpringSecurity5.x使用與配置詳解

    Spring Security是一個強(qiáng)大且高度可定制的身份驗(yàn)證和訪問控制框架,本文主要介紹了新版SpringSecurity5.x使用與配置詳解,具有一定的參考價值,感興趣的可以了解一下
    2024-08-08
  • redis incr和incrBy的使用說明

    redis incr和incrBy的使用說明

    這篇文章主要介紹了redis incr和incrBy的使用說明,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-11-11
  • 詳解SpringBoot讀取resource目錄下properties文件的常見方式

    詳解SpringBoot讀取resource目錄下properties文件的常見方式

    這篇文章主要介紹了SpringBoot讀取resource目錄下properties文件的常見方式,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-02-02
  • Mybatis Mapper XML文件-插入,更新,刪除詳解(insert, update and delete)

    Mybatis Mapper XML文件-插入,更新,刪除詳解(insert, updat

    這篇文章主要介紹了MyBatis的Mapper XML文件中用于插入、更新和刪除數(shù)據(jù)的語句,包括這些語句的屬性和子元素的使用方法
    2025-02-02
  • Java非靜態(tài)成員變量之死循環(huán)(詳解)

    Java非靜態(tài)成員變量之死循環(huán)(詳解)

    下面小編就為大家?guī)硪黄狫ava非靜態(tài)成員變量之死循環(huán)(詳解)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-09-09
  • Java?詳細(xì)講解線程的狀態(tài)及部分常用方法

    Java?詳細(xì)講解線程的狀態(tài)及部分常用方法

    在Java程序中,一個線程對象只能調(diào)用一次start()方法啟動新線程,并在新線程中執(zhí)行run()方法。一旦run()方法執(zhí)行完畢,線程就結(jié)束了,本篇來講解Java線程的狀態(tài)以及部分常用方法
    2022-04-04
  • java中l(wèi)ist的用法和實(shí)例講解

    java中l(wèi)ist的用法和實(shí)例講解

    這篇文章主要介紹了java中l(wèi)ist的用法和實(shí)例講解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-07-07

最新評論

麻城市| 卓资县| 铜川市| 册亨县| 加查县| 横山县| 晋江市| 湖南省| 于都县| 汉沽区| 通山县| 巫山县| 高雄市| 湖口县| 驻马店市| 九台市| 嘉禾县| 玉溪市| 乌苏市| 密云县| 乌鲁木齐市| 阆中市| 中西区| 库车县| 延川县| 综艺| 观塘区| 新和县| 湖南省| 南川市| 密山市| 女性| 古蔺县| 青州市| 台北市| 得荣县| 淮安市| 康马县| 永康市| 从江县| 德化县|