From 88c59e28944ca1f3741b1e65fe7adc8b365f9f3c Mon Sep 17 00:00:00 2001 From: Mans Ziesel Date: Mon, 3 Jun 2024 15:54:17 +0200 Subject: [PATCH] edit readme --- README.md | 32 ++++++++++++++++++++++++++++++++ docs/ip-svc-screenshot.png | Bin 0 -> 41547 bytes 2 files changed, 32 insertions(+) create mode 100644 docs/ip-svc-screenshot.png diff --git a/README.md b/README.md index 1560c04..89e2f0e 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,34 @@ # ip-svc +Go service that will show user IPv4 and IPv6 addresses +![IP page screenshot](./docs/ip-svc-screenshot.png) + +```mermaid +flowchart TD + A[net/http] + A --> B{get request RemoteAddress} + B --> C{is ipv6?} + C -->|yes| D[render template with IPv6 address] + C -->|no| E[render template with IPv4 address] + D --> F{request ipv4 address from ip4.mziesel.nl} + F -->|success| G[add address to page] + E --> H{request ipv6 address from ip6.mziesel.nl} + H -->|success| G[add address to page] +``` + +works by creating four dns records + +``` +A ip.mziesel.nl +AAAA ip.mziesel.nl +A ip4.mziesel.nl +AAAA ip6.mziesel.nl +``` + +#### endpoints + +| Endpoint | Description | +| -------- | ----------- | +| `/` | HTML page | +| `/raw` | Just the raw IP | +| `/json` | Data in json | diff --git a/docs/ip-svc-screenshot.png b/docs/ip-svc-screenshot.png new file mode 100644 index 0000000000000000000000000000000000000000..a6855884add27938759d52a748a33666081cb4ef GIT binary patch literal 41547 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 Q_++1(?=VZ+eBitP0pEFTGXMYp literal 0 HcmV?d00001