---
layout: docs
page_title: network Stanza - Job Specification
sidebar_title: network
description: |-
The "network" stanza specifies the networking requirements for the task,
including the minimum bandwidth and port allocations. The network stanza
can be specified at the task group level to enable all tasks in the task
group to share the same network namespace.
---
# `network` Stanza
The `network` stanza specifies the networking requirements for the task,
including the minimum bandwidth and port allocations. When scheduling jobs in
Nomad they are provisioned across your fleet of machines along with other jobs
and services. Because you don't know in advance what host your job will be
provisioned on, Nomad will provide your tasks with network configuration when
they start up.
Nomad 0.10 enables support for the `network` stanza at the task group level. When
the `network` stanza is defined at the group level with `bridge` as the networking mode,
all tasks in the task group share the same network namespace. This is a prerequisite for
[Consul Connect](/guides/integrations/consul-connect). Tasks running within a
network namespace are not visible to applications outside the namespace on the same host.
This allows [Connect][] enabled applications to bind only to localhost within the shared network stack,
and use the proxy for ingress and egress traffic.
Note that this document only applies to services that want to _listen_ on a
port. Batch jobs or services that only make outbound connections do not need to
allocate ports, since they will use any available interface to make an outbound
connection.
```hcl
job "docs" {
group "example" {
task "server" {
resources {
network {
mbits = 200
port "http" {}
port "https" {}
port "lb" {
static = "8889"
}
}
}
}
}
}
```
## `network` Parameters
- `mbits` `(int: 10)` - Specifies the bandwidth required in MBits.
- `port` ([Port](#port-parameters): nil) - Specifies a TCP/UDP port
allocation and can be used to specify both dynamic ports and reserved ports.
- `mode` `(string: "host")` - Mode of the network. The following modes are available:
- `none` - Task group will have an isolated network without any network interfaces.
- `bridge` - Task group will have an isolated network namespace with an interface
that is bridged with the host. Note that bridge networking is only
currently supported for the `docker`, `exec`, `raw_exec`, and `java` task
drivers.
- `host` - Each task will join the host network namespace and a shared network
namespace is not created. This matches the current behavior in Nomad 0.9.
### `port` Parameters
- `static` `(int: nil)` - Specifies the static TCP/UDP port to allocate. If omitted, a dynamic port is chosen. We **do not recommend** using static ports, except
for `system` or specialized jobs like load balancers.
- `to` `(string:nil)` - Applicable when using "bridge" mode to configure port
to map to inside the task's network namespace. `-1` sets the mapped port equal to the dynamic port allocated by the scheduler. The `NOMAD_PORT_