{"id":13815154,"url":"https://github.com/MikeWang000000/Natter","last_synced_at":"2025-05-15T07:32:00.780Z","repository":{"id":59212960,"uuid":"535731131","full_name":"MikeWang000000/Natter","owner":"MikeWang000000","description":"Expose your TCP/UDP port behind full-cone NAT to the Internet.","archived":false,"fork":false,"pushed_at":"2024-08-10T05:57:21.000Z","size":1459,"stargazers_count":1811,"open_issues_count":38,"forks_count":159,"subscribers_count":18,"default_branch":"master","last_synced_at":"2025-04-07T18:09:40.561Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/MikeWang000000.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-09-12T15:27:24.000Z","updated_at":"2025-04-06T11:01:55.000Z","dependencies_parsed_at":"2023-12-18T18:52:17.700Z","dependency_job_id":"3bff4718-dcf4-4b83-b4a4-3dd57b556b27","html_url":"https://github.com/MikeWang000000/Natter","commit_stats":null,"previous_names":[],"tags_count":7,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MikeWang000000%2FNatter","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MikeWang000000%2FNatter/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MikeWang000000%2FNatter/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MikeWang000000%2FNatter/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/MikeWang000000","download_url":"https://codeload.github.com/MikeWang000000/Natter/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254295955,"owners_count":22047178,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-08-04T04:03:02.711Z","updated_at":"2025-05-15T07:31:58.210Z","avatar_url":"https://github.com/MikeWang000000.png","language":"Python","funding_links":[],"categories":["Python"],"sub_categories":[],"readme":"# Natter (v2)\n\nExpose your port behind full-cone NAT to the Internet.\n  \n[中文文档](docs/README.md)\n\n\n## Quick start\n\n```bash\npython3 natter.py\n```\n\nOr, using Docker:\n\n```bash\ndocker run --net=host nattertool/natter\n```\n\n```\n2023-11-01 01:00:08 [I] Natter\n2023-11-01 01:00:08 [I] Tips: Use `--help` to see help messages\n2023-11-01 01:00:12 [I]\n2023-11-01 01:00:12 [I] tcp://192.168.1.100:13483 \u003c--Natter--\u003e tcp://203.0.113.10:14500\n2023-11-01 01:00:12 [I]\n2023-11-01 01:00:12 [I] Test mode in on.\n2023-11-01 01:00:12 [I] Please check [ http://203.0.113.10:14500 ]\n2023-11-01 01:00:12 [I]\n2023-11-01 01:00:12 [I] LAN \u003e 192.168.1.100:13483   [ OPEN ]\n2023-11-01 01:00:12 [I] LAN \u003e 192.168.1.100:13483   [ OPEN ]\n2023-11-01 01:00:12 [I] LAN \u003e 203.0.113.10:14500    [ OPEN ]\n2023-11-01 01:00:13 [I] WAN \u003e 203.0.113.10:14500    [ OPEN ]\n2023-11-01 01:00:13 [I]\n```\n\nIn the example above, `203.0.113.10` is your public IP address outside the full-cone NAT. Natter opened TCP port `203.0.113.10:14500` for testing.\n\nVisit `http://203.0.113.10:14500` outside your LAN, you will see the web page:\n\n```\nIt works!\n\n--------\nNatter\n```\n\n\n## Usage\n\n```\nusage: natter.py [--version] [--help] [-v] [-q] [-u] [-U] [-k \u003cinterval\u003e]\n                 [-s \u003caddress\u003e] [-h \u003caddress\u003e] [-e \u003cpath\u003e] [-i \u003cinterface\u003e]\n                 [-b \u003cport\u003e] [-m \u003cmethod\u003e] [-t \u003caddress\u003e] [-p \u003cport\u003e] [-r]\n\nExpose your port behind full-cone NAT to the Internet.\n\noptions:\n  --version, -V   show the version of Natter and exit\n  --help          show this help message and exit\n  -v              verbose mode, printing debug messages\n  -q              exit when mapped address is changed\n  -u              UDP mode\n  -U              enable UPnP/IGD discovery\n  -k \u003cinterval\u003e   seconds between each keep-alive\n  -s \u003caddress\u003e    hostname or address to STUN server\n  -h \u003caddress\u003e    hostname or address to keep-alive server\n  -e \u003cpath\u003e       script path for notifying mapped address\n\nbind options:\n  -i \u003cinterface\u003e  network interface name or IP to bind\n  -b \u003cport\u003e       port number to bind\n\nforward options:\n  -m \u003cmethod\u003e     forward method, common values are 'iptables', 'nftables',\n                  'socat', 'gost' and 'socket'\n  -t \u003caddress\u003e    IP address of forward target\n  -p \u003cport\u003e       port number of forward target\n  -r              keep retrying until the port of forward target is open\n```\n\n\n## Usage for Docker\n\nRead [natter-docker](natter-docker) for details.\n\n\n## Use cases\n\nExpose local port 80 to the Internet, using built-in forward method:\n\n```bash\npython3 natter.py -p 80\n```\n\nExpose local port 80 to the Internet, using iptables kernel forward method (requires root permission):\n\n```bash\nsudo python3 natter.py -m iptables -p 80\n```\n\n\n## Dependencies\n\n- Python 2.7 (minimum), \u003e= 3.6 (recommended)\n- No third-party modules are required.\n\n\n## License\n\nGNU General Public License v3.0\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FMikeWang000000%2FNatter","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FMikeWang000000%2FNatter","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FMikeWang000000%2FNatter/lists"}