# Change the IP country of a Codex-controlled browser

The IP a website sees belongs to the machine making the browser request. Before setting up Aluvia for a Codex task, identify that machine.

## Check where the browser runs

These instructions apply when Codex can run commands on the host of the Chrome browser used for the task. Running setup in a repository container does not configure a browser hosted on a different machine.

## Start with setup

```sh
npx aluvia-cli setup
```

First 10 MB free without an account, API key or payment; then 2 USD per GB. Requires Node.js 18 or later, a usable local Chrome or Chromium browser, and command access to its host. No target page URL is required. Initial configuration can restart Chrome. [Quickstart](/docs), [setup changes](/setup), [runtime evidence](/compatibility).

## Check setup before continuing

Read the JSON result. `ready: true` confirms the browser/proxy path and upstream check, not target-site access. Follow `next` if recovery is needed. Successful setup already enables proxy traffic. If `aluvia` is not on PATH, use `npx aluvia-cli` instead.

## Check country availability

Choose the country the task needs from the current list. The command below is an example; substitute an available country or skip selection if the global pool is suitable.

```sh
aluvia geos
```

## Verify the browser task

After setup reports readiness, choose a country and reload the page using the same browser tool. Check the page's regional content, not only the CLI status. If the browser tool is remote and you cannot configure its host, these local setup steps do not apply.

```sh
aluvia proxy-on --geo US
```

## Limits

Aluvia does not change OpenAI model availability or access permissions. It also does not automatically proxy every shell command or built-in web search tool.

## Reload and verify

Reload the target using the same browser tool and check the required content. Run status and follow its `next` field. For a suspected IP refusal, rotate once and reload; stop if it still fails. For a rate limit, wait and reduce requests.

```sh
aluvia status
```

## Undo the IP change

When finished, return to the machine's IP. After setup, this keeps Chrome running.

```sh
aluvia proxy-off
```

## When the trial ends

Show the actual `claim_url` from `payment_required` to the operator. They can claim the account and buy data at 2 USD per GB. Run `aluvia auth login` to wait, inspect the response and retry. Never invent a claim URL or reveal a key. [Payment handoff](/e/payment_required).

---

Source: https://aluvia.io/geo/codex
