1、 先确认端口
把下面 5236 换成你的达梦实际端口:
nc -zv 10.255.x.x 5236 # 通
sudo tcpdump -i any -nn "host 10.255.x.x and port 5236"
持抓包,另开终端执行
如果抓包 看不到任何 SYN 说明包被本机防火墙拦截; 如果能看到 SYN 重传 3 次后 RST,说明远端或中间设备拒绝。
2、检查 macOS Application Firewall 是否 block 了 java
系统设置 → 网络 → 防火墙 → 选项
搜索 java 、 Eclipse 、 IDEA 、 jcmd 等,如果有 Block 条目,改成 Allow 或直接关掉防火墙做一次对比测试。
命令行快速关防火墙(测试完记得开):
sudo /usr/libexec/ApplicationFirewall/socketfilterfw --setglobalstate off
3. PF 规则也可能丢包
sudo pfctl -sr | grep -i 10.255.x.x
如果你曾装过 Little Snitch / Radio Silence / TripMode ,先把它们 完全退出 再测
4. 强制 IPv4 + 指定源地址(排除 IPv6 或路由表问题
jdbc:dm://10.255.x.x:5236?useIPv4=true
启动时再加 JVM 参数
-Djava.net.preferIPv4Stack=true
5. 用 root 跑一次 Java
如果 sudo 能通、普通用户不通,100 % 是 防火墙按进程签名拦截。