You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
fix(gvisor): skip iptables and route MCP gateway via NO_PROXY (#6401)
* fix(gvisor): skip iptables and route MCP gateway via NO_PROXY
gVisor's isolated userspace netstack is not governed by the host-netns
iptables DNAT/RETURN rules that awf-iptables-init installs, so egress
(including the MCP gateway bypass at 172.30.0.1) silently failed under
gVisor: MCP requests were routed through Squid and rejected with 403,
leaving the agent unable to emit safe outputs.
Add a usesIptables runtime capability (false for gvisor/sbx) that:
- skips the awf-iptables-init container
- sets AWF_SKIP_IPTABLES_INIT=1 so the entrypoint skips the init handshake
- adds the network gateway + host.docker.internal to NO_PROXY so
proxy-aware MCP clients reach the gateway directly
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Copilot-Session: be040aef-5830-42b1-a871-4cade09f4585
* fix(gvisor): alias runsc runtime and clarify egress docs
- container-runtime: canonicalize raw runsc OCI name to gVisor capabilities
via an alias table; add isGvisorRuntime() and use it for the Claude/Bun check.
- compose-generator.test: assert gVisor (networkIsolation:false) omits
iptables-init, keeps the agent, and sets AWF_SKIP_IPTABLES_INIT (gvisor+runsc).
- docs/gvisor-integration: distinguish Squid-routed internet egress from the
direct MCP/host-gateway NO_PROXY exception; clarify the enforced boundary is
topology (strict) / host DOCKER-USER default-deny (legacy), not proxy env.
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Copilot-Session: be040aef-5830-42b1-a871-4cade09f4585
---------
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
0 commit comments