快速结论:该报错通常发生在 Dify Agent 智能体(Agent V2)的 skill 文件(脚本)尝试访问同网段私有地址(如 192.168.x.x、10.x.x.x 等内网接口)时。这是 Dify 沙箱的预期安全限制——出站流量经由 SSRF 代理,默认拦截所有私网地址,且 Agent 的代理不支持通过环境变量放行私网 IP/域名。
适用环境:Dify 1.16.1(Docker 自托管,Self Hosted)。Issue 中未明确提及操作系统、Python、CUDA、显卡等环境信息。
最快修复方案:暂无确认的一步修复方案。若使用的是 Workflow 代码节点,可在 .env 中通过 SSRF_PROXY_ALLOW_PRIVATE_DOMAINS 和 SSRF_PROXY_ALLOW_PRIVATE_IPS 配置白名单后重启 ssrf_proxy 容器(Dify 1.15.0 起支持);但若使用的是 Agent V2 skill 文件,则目前没有内置的白名单配置方法,需考虑改用 Workflow、在公网暴露接口(需自行评估安全风险)或等待后续版本支持。
注意事项:仅向同网段的私网地址发起请求会被拦截;访问公网(public internet)流量不受影响。放行私网 IP 属于绕过 SSRF 防护,需自行评估安全风险。Dify 1.15.0 之前的版本行为可能不同。
问题场景
用户在 Dify 1.16.1(Docker 自托管)的 Agent 智能体(Agent V2)中,通过 skill 文件的脚本尝试请求与自身位于同一网段的内部接口(私有 IP 地址),期望将返回数据提供给 skill 文件使用。实际运行中,该请求在沙箱内被阻断,提示沙箱内无法访问(Inaccessible within the sandbox)。用户未在 Issue 中确认使用的是 Agent V2 skill 文件还是 Workflow 代码节点。
报错原文
The agent intelligent employee cannot call external interfaces through skill files,
In the sandboxInaccessible within the sandbox
原因分析
可能原因:Dify 的沙箱环境将所有出站 HTTP 流量路由至基于 Squid 的 SSRF 代理,该代理默认阻止私有/内部网络地址段(RFC-1918)的请求。
针对 Agent V2 skill 文件:local_sandbox 容器经由专用的 agent_ssrf_proxy 转发所有出站流量,该代理仅允许访问内部的 agent_backend /agent-stub/* 与 api /files/* 路径,以及一般公网流量,拒绝所有其他私有网络目标。与 Workflow 沙箱代理不同,Agent 代理目前未提供通过环境变量放行任意私有 IP 或域名的能力。
针对 Workflow 代码节点:ssrf_proxy 自 Dify 1.15.0 起也默认阻止 RFC-1918 地址段,但支持运维人员通过配置例外来放行内部主机/IP。
因此,从 Agent skill 调用本地网段接口会被阻断,且没有内置的绕过方式;这属于沙箱的预期安全设计,并非代码缺陷。
环境排查
- 确认当前使用的是 Agent V2 skill 文件 还是 Workflow 代码节点。
- 确认 Dify 版本是否 ≥ 1.15.0(SSRF 代理策略相关)。Issue 涉及的版本为 1.16.1。
- 确认目标 URL/IP 是否为 RFC-1918 私网地址(如 10.x.x.x、172.16-31.x.x、192.168.x.x),或属于内网域名。
- 检查沙箱日志中是否有更详细的代理阻断/拒绝信息。
解决步骤
- 先区分功能入口:确认当前调用外部接口的脚本,运行在 Agent 的 skill 文件内,还是 Workflow 的代码节点中。
- 若是 Workflow 代码节点(可优先尝试):编辑
.env文件,添加允许访问的私网域名或 IP,例如:SSRF_PROXY_ALLOW_PRIVATE_DOMAINS=your.internal.host SSRF_PROXY_ALLOW_PRIVATE_IPS=10.10.5.42,192.168.1.0/24然后执行
docker compose restart ssrf_proxy使配置生效。 - 若是 Agent V2 skill 文件:目前没有已验证的一步修复方案。可尝试的方案(均未在 Issue 中验证):
- 改用 Workflow 代码节点并以上述白名单方式放行目标地址;
- 将目标接口部署到公网,通过公网地址访问(注意:访问公网流量不受代理限制);
- 关注 Dify 后续版本是否开放 Agent 沙箱代理的私网放行能力。
验证方法
修改配置并重启相关容器后,在 Agent skill / Workflow 代码节点中重新发起对该内部接口的请求。若代码节点能成功收到响应并打印数据,说明代理白名单已生效;若仍被阻断,请检查目标地址是否属于 RFC-1918 范围、白名单格式是否正确,以及重启的是否为正确的容器(ssrf_proxy / agent_ssrf_proxy)。同时留意沙箱日志,确认代理端已放行该请求。
参考来源
AI 工具推荐
想把多个 AI 模型放在一个入口?
GamsGo AI 集成 ChatGPT、DeepSeek、Gemini、Claude、Midjourney、Veo 等常用模型,适合写作、绘图、视频和日常 AI 工作流。
推广链接:通过此链接购买,我可能获得佣金,不影响你的价格。
这个方案解决了吗?
可以继续搜索完整报错,或查看同一工具的其他排查指南。


