【java】IP来源提取国家地址

背景:

我们日常在安全巡检得时候,或者安全工具例如火绒、360活监测到一些异常ip 如何判断IP国家

第一种 百度地址IP查询

第二种 自己写一个

pom.xml导入依赖

复制代码
      <dependency>
            <groupId>com.maxmind.geoip2</groupId>
            <artifactId>geoip2</artifactId>
            <version>2.15.0</version>
        </dependency>

下载GeoLite2-City.mmdb

Release 2025.01.22 · P3TERX/GeoLite.mmdb · GitHub

代码实现

java 复制代码
 String pip = "209.141.33.6";
        DatabaseReader reader = new DatabaseReader.Builder(
                new File("F:\\untitled05\\demo4\\src\\main\\java\\com\\example\\demo\\entity\\GeoLite2-City.mmdb")).build();
        InetAddress ipAddress = InetAddress.getByName(pip);
        CityResponse response = reader.city(ipAddress);
        System.out.println("国家: " + response.getCountry().getName());
        System.out.println("城市: " + response.getCity().getName());

后续可以批量获取ip地址

相关推荐
托比-马奎尔3 分钟前
Redis7内存数据库
java·redis·后端
双向3312 分钟前
【征文计划】基于Rokid CXR-M SDK 打造AI 实时会议助手:从连接到自定义界面的完整实践
前端
Lei活在当下21 分钟前
【业务场景架构实战】6. 从业务痛点到通用能力:Android 优先级分页加载器设计
前端·后端·架构
你的人类朋友25 分钟前
什么是基础设施中间件
前端·后端
鹅是开哥26 分钟前
Redis的零食盒满了怎么办?详解缓存淘汰策略
java·redis·缓存·bootstrap
惜.己33 分钟前
jmeter中java.net.ConnectException: Connection refused: connect
java·jmeter·.net
知识分享小能手37 分钟前
微信小程序入门学习教程,从入门到精通,WXML(WeiXin Markup Language)语法基础(8)
前端·学习·react.js·微信小程序·小程序·vue·个人开发
yunmi_41 分钟前
分布式文件存储系统FastDFS(入门)
java·分布式·maven·fastdfs
MYX_3091 小时前
第四章 神经网络的学习
python·神经网络·学习
海绵宝龙1 小时前
将若依(RuoYi)项目创建为私有Gitee仓库的完整步骤
前端·gitee