Skip to content

fix(openclaw): bind gateway to loopback interface#1857

Open
felipevicens wants to merge 6 commits into
kagent-dev:mainfrom
felipevicens:fix/openclaw-gateway-loopback-bind
Open

fix(openclaw): bind gateway to loopback interface#1857
felipevicens wants to merge 6 commits into
kagent-dev:mainfrom
felipevicens:fix/openclaw-gateway-loopback-bind

Conversation

@felipevicens
Copy link
Copy Markdown

Add Bind: loopback to the openclaw gateway bootstrap configuration
so the local gateway only listens on the loopback interface rather
than all network interfaces.

Without this setting, OpenClaw defaults to 0.0.0.0. However, the sandbox iptables rules block all non-proxy traffic, so the TUI can only reach the gateway through loopback inside the sandbox network namespace. As a result, binding to 0.0.0.0 makes the gateway unreachable from the TUI (not connected to gateway).

Setting "bind": "loopback" fixes the issue at the source in the generated config, instead of requiring a manual post-creation patch to openclaw.json.

   Add Bind: loopback to the openclaw gateway bootstrap configuration
   so the local gateway only listens on the loopback interface rather
   than all network interfaces.

Signed-off-by: Felipe Vicens <felipejose.vicensgonzalez@telefonica.com>
@github-actions github-actions Bot added the bug Something isn't working label May 12, 2026
@peterj
Copy link
Copy Markdown
Collaborator

peterj commented May 12, 2026

thanks for the PR! Could you also just update the unit test here, so it also check the bind value being set correctly?

@peterj peterj marked this pull request as ready for review May 13, 2026 18:37
Copilot AI review requested due to automatic review settings May 13, 2026 18:37
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds a Bind: "loopback" field to the openclaw gateway bootstrap config so the local gateway listens only on the loopback interface, matching the sandbox's iptables restrictions and making the gateway reachable from the TUI inside the sandbox network namespace.

Changes:

  • Add Bind field to gatewaySection struct, serialized as JSON bind.
  • Set Bind: "loopback" when building the core bootstrap document.
  • Extend test to assert the generated gateway config contains "bind": "loopback".

Reviewed changes

Copilot reviewed 3 out of 3 changed files in this pull request and generated no comments.

File Description
go/core/pkg/sandboxbackend/openshell/openclaw/types.go Adds Bind field to gatewaySection.
go/core/pkg/sandboxbackend/openshell/openclaw/bootstrap.go Sets Bind: "loopback" in generated bootstrap.
go/core/pkg/sandboxbackend/openshell/openclaw/bootstrap_test.go Asserts bind value in generated JSON.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@peterj peterj enabled auto-merge (squash) May 14, 2026 01:34
@peterj peterj disabled auto-merge May 14, 2026 02:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug Something isn't working

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants