natmap-ui 是一款专为 natmap 打造的高性能可视化管理面板。它不仅能实时监控 NAT 映射状态,还提供了极其强大的自动化 Hook 链式调用系统,帮助您在复杂的网络环境下(如 iKuai、OpenWrt)轻松维护公网服务。
--net=host 模式,确保探测流量直达公网,避免容器 NAT 干扰。在 Linux 环境中使用以下命令启动:
docker run -d \
--name=natmap-ui \
--restart=always \
--net=host \
-v config:/config \
-v scripts:/scripts \
bncfbb/natmap-ui:latest
存储面板配置文件、映射规则及持久化数据存储自定义 Python 脚本您可以编写 Python 脚本处理映射后的逻辑。将"实例名称.py"脚本放入 /scripts 目录即可在面板中调用:
#!/usr/bin/env python3
# -*- coding: UTF-8 -*-
import logging
# 配置日志输出
logging.basicConfig(
level=logging.INFO,
format='%(asctime)s %(filename)s[line:%(lineno)d] %(levelname)s %(message)s',
)
def hook_func(public_ip, public_port, ip4p, local_port, protocol, local_ip):
"""
当 natmap 状态更新时,此函数将被触发
"""
logging.info(f'测试 {public_ip}:{public_port}')
# 示例:此处可添加发送请求或同步状态的逻辑
解决透明代理劫持 如果您的网络中存在 PassWall 等透明代理,建议在代理插件的“直连列表”中添加运营商 CGNAT 的公网出口 IP 段,以确保面板自带的 tcping 连通性检测 能够获取真实状态,避免被代理代答。
API 请求技巧
在使用 WebHook 链时POST数据提交表单字符串(如 a=1&b=2)时,请务必手动设置请求头,以避免后端返回 400 错误:
{"Content-Type": "application/x-www-form-urlencoded"}
http://服务器IP:8010adminadminContent type
Image
Digest
sha256:bb44d3fc7…
Size
55.7 MB
Last updated
4 months ago
docker pull bncfbb/natmap-ui