Documentation v1.0.0

pardnchiu/go-ip-sentry

[!NOTE] This README was generated by SKILL, get the ZH version from here.


STOP MALICIOUS IPS BEFORE THEY REACH YOUR HANDLERS!

Go Reference Release License Coverage


A Go IP risk-control library with concurrent dynamic scoring, GeoLite2 anomaly detection, and drop-in Gin/net/http middleware

Table of Contents

Features

go get github.com/pardnchiu/golang-ip-sentry · Documentation

Architecture

Full Architecture

graph TB
    REQ[HTTP Request] --> MW[Gin / net/http Middleware]
    MW --> DEV[Device Identification<br/>Session + Fingerprint]
    DEV --> LIST{Three-Tier Lists}
    LIST -->|Allow| PASS[Pass]
    LIST -->|Deny / Block| REJ[403 Reject]
    LIST -->|Unlisted| SCORE[Concurrent Scoring]
    SCORE <--> REDIS[(Redis)]
    SCORE --> GEO[GeoLite2]
    SCORE --> RL{Tiered Rate Limit}
    RL -->|Within limit| PASS
    RL -->|Over limit / score ≥ 100| REJ

License

This project is licensed under the MIT LICENSE.

Author

Just open an issue to share an idea.

go-ip-sentry contributors

©️ 2025 邱敬幃 Pardn Chiu

中文