# MikeWang000000/Natter

Expose your TCP/UDP port behind full-cone NAT to the Internet.

Repository: https://github.com/MikeWang000000/Natter
Canonical: https://ross.abutalabs.com/products/natter
Language: Python
License: GPL-3.0
License Family: copyleft
Last push: 2025-10-25T19:43:47+00:00

## Health v2 (maintenance only)
Score: 59/100 (v2, computed 2026-09-03T02:20:16.233290+00:00)
- activity 48, release rhythm 51, longevity 100
- inputs: {"age_days": 1451, "days_push": 312, "days_rel": 325, "gap_med": 3, "n_releases_24m": 2}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 2206, forks 180 (observed 2026-08-28T04:06:26.019325+00:00)

## What it is
Natter is a Python CLI tool that exposes local TCP/UDP ports behind a full-cone NAT to the public Internet by discovering the external mapped address via STUN and keeping the mapping alive. It supports multiple forwarding methods (iptables, nftables, socat, gost, socket), UPnP/IGD discovery, and Docker deployment.

## Use cases
- expose a local web server behind NAT to the internet
- make a game server reachable without port forwarding
- share a self-hosted service when behind full-cone NAT
- punch through NAT for P2P connections
- forward a local port using iptables on a router
- keep a NAT port mapping alive with STUN keep-alives

## When to choose
- you are behind a full-cone NAT and want a public endpoint without router access
- you need a lightweight dependency-free Python tool for NAT hole punching
- you want to expose TCP or UDP services with automatic keep-alive and address-change notification

## When to avoid
- you are behind symmetric NAT or CGNAT where hole punching fails
- you need a full VPN or tunnel solution like WireGuard or frp
- you require guaranteed stable public ports

## Facets
- artifact type: cli-tool
- maturity: active
- function: networking, proxy, developer-tools
- domain: networking, self-hosted, privacy
- platform: python, cli, cross-platform
- tags: nat-traversal, hole-punching, full-cone-nat, stun, port-forwarding, upnp, p2p, linux, macos, docker

## Member repositories
- MikeWang000000/Natter (main) score 59

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:06:26.019325+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-30T02:46:29.158509+00:00, confidence not recorded.
  - readme: https://github.com/MikeWang000000/Natter (fetched 2026-08-28T04:06:26.019325+00:00, sha f5334bb48e47)
- Data as of 2026-08-30T08:39:29.467469+00:00.
