TCP/UDP 调试台 · 使用说明
两种用法:① 本站当服务端开一个公网端口,设备当客户端连过来,实时看收发字节、可手动回发;② 本站当客户端外拨你指定的 host:port,看响应。TCP / UDP、IPv4 / IPv6 都支持。
① 本站当服务端(监听)
- 点开一个监听端口 → 拿到
tcp://120.79.19.193:<port>和udp://120.79.19.193:<port>(同一端口号,TCP/UDP 都收)。 - 把设备 / 客户端指向它;右边实时看每一段字节(↓收 / ↑发、来源 IP、大小、预览,二进制转 hex)。
- 左边配置怎么回:原样回显 / 回固定内容 / 只记不回;也可主动回发字节(TCP 广播给所有连接 + 最近的 UDP 对端)。
echo hello | nc 120.79.19.193 <port> # TCP,默认原样回显
echo hi | nc -u 120.79.19.193 <port> # UDP
socat - TCP:120.79.19.193:<port> # 交互式⚠️ 池端口公网可枚举、无鉴权——这是临时调试沙箱,不是安全通道。会话 2 小时空闲自动回收、归还端口。别往里发敏感数据。
② 本站当客户端(外拨)
- 选 TCP / UDP,填目标主机 + 端口,可选填要发的内容(文本 / Hex),设等响应时长。
- 点外拨 → 本站去连这个目标、发内容、把响应抓回来显示。用来测你的设备 / 服务的 TCP/UDP 服务端。
SSRF 护栏(为什么有些目标连不了)
本站跑在共享生产机上,外拨能力被严格限制为只能连公网目标:
- 拒绝环回(
127.0.0.1)、私网(10/8、172.16/12、192.168/16)、链路本地、多播、保留段。 - 拒绝云元数据地址(
100.100.100.200、169.254.169.254)。 - 域名解析后复核所有解析到的 IP,任一落在禁止段就整体拒绝(防 DNS 重绑定);按解析结果直连。
- 单连接、内容 ≤ 64KB、抓回 ≤ 256KB、超时 ≤ 10s、每 IP 每分钟 ≤ 20 次。systemd 再加内核层
IPAddressDeny兜底。
IPv4 / IPv6
监听端口用双栈套接字(IPV6_V6ONLY=0),IPv4 和 IPv6 客户端连同一端口都收。外拨按目标解析到的地址族自动选 v4 / v6。
设备侧示例(ESP32 TCP 客户端连本站监听口)
WiFiClient c;
c.connect("120.79.19.193", <port>); // 连本站监听口
c.print("hello from device"); // 网页右边实时看到这段
// c.read() 读回显常见问题
- 设备连不上监听口?
- 需要在阿里云安全组放行该端口段(TCP+UDP 20000-20031)。若仍不通,确认设备能访问公网 IP
120.79.19.193。 - 外拨报「目标被护栏拒绝」?
- 目标解析到了非公网地址(内网 / 环回 / 云元数据)。外拨只支持公网目标,这是有意为之的安全边界。
- 发了字节但没回?
- 看左边「回显模式」——「只记不回」不会回;要回用「原样回显」或「主动回发」。
想要别的功能?右下角「意见反馈」告诉我,或邮件 linsuwei_mic@outlook.com。