> For the complete documentation index, see [llms.txt](https://docs.ionos.com/cloud/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.ionos.com/cloud/tools-cli/subcommands/network-load-balancer/create.md).

# create

## Usage

```
ionosctl compute networkloadbalancer create [flags]
```

## Aliases

For `networkloadbalancer` command:

```
[nlb]
```

For `create` command:

```
[c]
```

## Description

Use this command to create a Network Load Balancer (NLB) in a Virtual Data Center. An NLB is a layer-4 (TCP) load balancer that bridges a listener LAN (where clients connect) and a target LAN (the private network of the backend VMs it balances).

After creation the NLB has no forwarding rules yet - it will not forward any traffic until you add at least one rule with `nlb rule create` and attach targets with `nlb rule target add`.

Networking flags: --listener-lan: LAN clients connect through (inbound). Defaults to 2. --target-lan: private LAN of the balanced backend VMs (outbound). Defaults to 1. --ips: the NLB's own IP addresses on the listener LAN. For a PUBLIC NLB these must be customer-reserved public IPs; for a PRIVATE NLB they are private IPs. These are also the IPs a forwarding rule listens on. --private-ips: the NLB's private IPs (with subnet mask, e.g. 10.0.0.5/24) on the target LAN, used to reach the backends. If omitted, the system assigns one with a /24 mask.

Use `--wait` (`-w`) to wait for the resource to reach AVAILABLE state.

Required values to run command:

* Data Center Id

## Options

```
  -u, --api-url string         Override default host URL. Preferred over the config file override 'cloud' and env var 'IONOS_API_URL' (default "https://api.ionos.com")
      --cols strings           Set of columns to be printed on output 
                               Available columns: [NetworkLoadBalancerId Name ListenerLan Ips TargetLan LbPrivateIps State DatacenterId]
  -c, --config string          Configuration file used for authentication (default "$XDG_CONFIG_HOME/ionosctl/config.yaml")
      --datacenter-id string   The unique Data Center Id (required)
  -D, --depth int              Level of detail for response objects (default 1)
  -F, --filters strings        Limit results to results containing the specified filter:KEY1=VALUE1,KEY2=VALUE2
  -f, --force                  Force command to execute without user input
  -h, --help                   Print usage
      --ips strings            IP addresses of the NLB on the listener LAN, also used as forwarding-rule listener IPs. Must be customer-reserved public IPs for a public NLB, or private IPs for a private NLB
      --limit int              Maximum number of items to return per request (default 50)
      --listener-lan int       ID of the listener LAN (inbound) where clients connect to the NLB (default 2)
  -n, --name string            Name of the Network Load Balancer (default "Network Load Balancer")
      --no-headers             Don't print table headers when table output is used
      --offset int             Number of items to skip before starting to collect the results
      --order-by string        Property to order the results by
  -o, --output string          Desired output format [text|json|api-json] (default "text")
      --private-ips strings    Private IP addresses (with subnet mask, e.g. 10.0.0.5/24) the NLB uses on the target LAN to reach backends. If omitted, an IP with a /24 mask is generated
      --query string           JMESPath query string to filter the output
  -q, --quiet                  Quiet output
      --target-lan int         ID of the private target LAN (outbound) hosting the backend VMs the NLB balances (default 1)
  -t, --timeout int            Timeout in seconds for --wait and other wait operations (default 600)
  -v, --verbose count          Increase verbosity level [-v, -vv, -vvv]
  -w, --wait                   Wait for the resource to reach AVAILABLE state after the command completes. No-op for list commands
```

## Examples

```
# Create an NLB with the default listener/target LANs
ionosctl compute networkloadbalancer create --datacenter-id DATACENTER_ID --name "web-nlb"

# Create a public NLB, pinning the LANs and giving it a reserved public listener IP
ionosctl compute networkloadbalancer create --datacenter-id DATACENTER_ID --name "prod-nlb" --listener-lan 2 --target-lan 1 --ips 203.0.113.10 --private-ips 10.0.0.5/24
```


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.ionos.com/cloud/tools-cli/subcommands/network-load-balancer/create.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
