Natter (v2)
将您全圆锥型NAT后的端口暴露到互联网。
快速开始
python3 natter.py
或者,使用Docker:
docker run --net=host nattertool/natter
2023-11-01 01:00:08 [I] Natter
2023-11-01 01:00:08 [I] 提示:使用 `--help` 查看帮助信息
2023-11-01 01:00:12 [I]
2023-11-01 01:00:12 [I] tcp://192.168.1.100:13483 <--Natter--> tcp://203.0.113.10:14500
2023-11-01 01:00:12 [I]
2023-11-01 01:00:12 [I] 测试模式已开启。
2023-11-01 01:00:12 [I] 请检查 [ http://203.0.113.10:14500 ]
2023-11-01 01:00:12 [I]
2023-11-01 01:00:12 [I] 局域网 > 192.168.1.100:13483 [ 开放 ]
2023-11-01 01:00:12 [I] 局域网 > 192.168.1.100:13483 [ 开放 ]
2023-11-01 01:00:12 [I] 局域网 > 203.0.113.10:14500 [ 开放 ]
2023-11-01 01:00:13 [I] 广域网 > 203.0.113.10:14500 [ 开放 ]
2023-11-01 01:00:13 [I]
在上面的示例中,203.0.113.10
是您全圆锥型NAT外的公网IP地址。Natter为测试打开了TCP端口 203.0.113.10:14500
。
在局域网外访问 http://203.0.113.10:14500
,您将看到以下网页:
It works!
--------
Natter
使用方法
用法: natter.py [--version] [--help] [-v] [-q] [-u] [-U] [-k <间隔>]
[-s <地址>] [-h <地址>] [-e <路径>] [-i <接口>]
[-b <端口>] [-m <方法>] [-t <地址>] [-p <端口>] [-r]
将您全圆锥型NAT后的端口暴露到互联网。
选项:
--version, -V 显示Natter的版本并退出
--help 显示此帮助信息并退出
-v 详细模式,打印调试信息
-q 当映射地址改变时退出
-u UDP模式
-U 启用UPnP/IGD发现
-k <间隔> 每次保活之间的秒数
-s <地址> STUN服务器的主机名或地址
-h <地址> 保活服务器的主机名或地址
-e <路径> 用于通知映射地址的脚本路径
绑定选项:
-i <接口> 要绑定的网络接口名称或IP
-b <端口> 要绑定的端口号
转发选项:
-m <方法> 转发方法,常用值为 'iptables'、'nftables'、
'socat'、'gost' 和 'socket'
-t <地址> 转发目标的IP地址
-p <端口> 转发目标的端口号
-r 持续重试直到转发目标的端口开放
Docker使用方法
详情请参阅 natter-docker。
使用案例
使用内置转发方法将本地80端口暴露到互联网:
python3 natter.py -p 80
使用iptables内核转发方法将本地80端口暴露到互联网(需要root权限):
sudo python3 natter.py -m iptables -p 80
依赖
- Python 2.7(最低要求),>= 3.6(推荐)
- 不需要第三方模块。
许可证
GNU通用公共许可证v3.0