HelloZeroNet / HelloZeroNet/ZeroNet

Port opening supports below full-cone NAT

Open
#844 10 comments 3 reactions 0 assignees View on GitHub
Dominant language
JavaScript
Stars
18.8k
Forks
2.3k
PR merge metrics
No merged PRs in 30d

Description

Due to the lack of IPv4 address, more and more ISP have been deployed carrier-grade NAT. So less connectability for these users.
Tor network can improve the connectability for these users, but it has many issues for the users who needn't anonymity:
- Poor performance.
- Bring more pressure for Tor relay bridge.
- Tor is blocked in some country or ISP.

IPv6 is the ultimate solution, but it still have a long way to go. (15% supportive in the whole world, and only 1% supportive in China)

Full-cone NAT is most used in carrier-grade NAT and easy to penetrate.
We need do these thing for support port opening supports below full-cone NAT
- Send port checker a request for external IP and external port.
- Separated port number with internal port number and external port, listen the internal port and report tracker the external port.
- Keep port mapping exist using heartbeat packet.

Separated port number is also useful in the environment:
- I don't have the manage permissions of router, but I can ask my administrator to open ramdom one.
- Free reverse proxy services such as [ngrok](https://ngrok.com/).

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.