{"version":"2.1.268","anchor":"new-gateway-config-warning-for-empty-access-controlallow-ci","canonical_anchor":"gateway-warns-once-when-a-client-connects-from-a-non-private","heading":"Gateway warns when it may be reachable from outside a trusted network","tier":"notice","area":"Gateway","scope":null,"heads_up":null,"url":"https:\/\/changelogs.core-directive.com\/v\/2.1.268\/e\/new-gateway-config-warning-for-empty-access-controlallow-ci","release_url":"https:\/\/changelogs.core-directive.com\/v\/2.1.268","markdown":"### Gateway warns when it may be reachable from outside a trusted network\n\nThe self-hosted gateway now warns about unrestricted public access and logs how it determines client IPs\n\n**What**\n\n- The gateway checks incoming client IPs against an expanded private-address list (now including `169.254.0.0\/16` and `fe80::\/10` link-local ranges) and, if `access_control.allow_cidrs` is unset and a request arrives from a non-private address, emits a one-time warning that the gateway may be reachable from the public internet, since it can push settings that execute commands on developer machines.\n\n- Gateway config validation separately emits a warning when `access_control.allow_cidrs` is empty and the listener isn't otherwise locally-bound, warning that the gateway will accept any client address.\n\n- Server startup now logs whether client IPs are read from the raw TCP peer address or from the `X-Forwarded-For` header (based on the configured trusted proxies), including how many trusted-proxy entries are configured.\n\n**Why** These changes help operators of a self-hosted gateway notice if it's exposed to the public internet or misconfigured around trusted proxies, which matters because the gateway can push settings that run commands on developer machines.\n\n- Area: Gateway\n- Names: `access_control.allow_cidrs`\n- Tier: You'll notice\n- Useful: 3\/5\n- Signal: 2\/5"}