--- title: "Create a Network Load Balancer" description: "Create an E2E Network Load Balancer in MyAccount that forwards TCP connections, with a backend group and listening port for each service." content_type: "how-to" product: "load-balancer" platform: "MyAccount" url: "/myaccount/load-balancer/how-to/create-a-network-load-balancer/" topic: ["create"] relationships: {"requires":["/myaccount/node/how-to/create-a-node/"]} --- # Create a Network Load Balancer Create a Network Load Balancer (NLB) to forward TCP connections to your servers. Each backend group listens on its own port, so one NLB can carry several services, such as a mail server on one port and a message queue on another. An NLB forwards TCP connections as they arrive. It passes encrypted traffic through to your servers as it is, and it checks each server by opening a connection to its port. For HTTP or HTTPS with an SSL certificate on the load balancer, ACL rules, or a scale group, create an Application Load Balancer instead; see [Create an Application Load Balancer](/myaccount/load-balancer/how-to/create-an-application-load-balancer/). ## Before you begin - You are working in Delhi or Chennai, in the project where the load balancer will live. - You have the nodes that run your service, and you know the TCP port it listens on in each. See [Create a node](/myaccount/node/how-to/create-a-node/). - You have chosen the port clients will connect to on the load balancer for each service: 443, or a port from 1024 to 65535, other than 8080, 10050, and 9101. - Each server's security group lets the load balancer in on the port your service uses. See [Manage a load balancer's network and security groups](/myaccount/load-balancer/how-to/manage-network-and-security-groups/#allow-traffic-from-the-load-balancer-to-your-servers). - For an internal load balancer, you have a VPC ready in the **Active** state. See [Create a VPC](/myaccount/vpc/how-to/create-a-vpc/). - You have the create permission for **Load Balancers** in the project, and enough balance or infra credits to pay for the plan. ## Choose the plan and the type 1. In MyAccount, under **Compute**, click **Load Balancers**. Click **+**, or **Get Started** if you have no load balancer yet. 2. On **Plan**, click a plan, choose **Hourly Billed** or a committed option under **---Choose Hourly / Committed LB---**, and click **Next**. The plans run from **E2E-LB-2**, with 4 vCPU and 6 GB RAM, to **E2E-LB-5**, with 24 vCPU and 48 GB RAM. For the plan table and the committed options, see [Create an Application Load Balancer: Choose the plan](/myaccount/load-balancer/how-to/create-an-application-load-balancer/#choose-the-plan). When you work in Delhi with an account created on or after May 15, 2026, every plan offers **Request** in place of **Select**, unless E2E has exempted your account. Click **Request** to ask E2E for the load balancer, and **We have accepted your request, will contact you shortly.** confirms it. 3. On **Type**, click **Network Load Balancer (NLB)**. The type is fixed once the load balancer is created. ## Fill in the details 1. Keep the suggested **Name**, or enter your own, up to 50 characters, using letters, digits, underscores, and hyphens. 2. Under **Type**, choose **External (with public IP) - Distributes traffic from external sources** for clients on the internet, or **Internal (without public IP) - Distributes traffic within private VPC networks** for clients inside your VPCs. 3. Click **Next**. ## Set up a backend group for each port On **Target Mapping**, you set up one backend group: one listening port on the load balancer with the servers behind it. 1. Keep the suggested **Backend Group** name, or type your own: up to 50 letters, digits, underscores, and hyphens. 2. Under **Routing Policy**, keep **Least Connection** for long-lived connections, or choose **Round Robin** to take the servers in turn, or **Source IP Hash** to keep each client on one server. See [Choose a routing policy](/myaccount/load-balancer/how-to/manage-backend-groups/#choose-a-routing-policy). 3. In **LB Listening Port**, enter the port clients connect to on the load balancer: 443, or a port from 1024 to 65535, other than 8080, 10050, and 9101. Each group needs a port of its own. Port 80 is also accepted, but keep NLB groups off it: about half of the connections to a group there get **503 Service Unavailable**. 4. Beside **Backend Servers**, click **Add Server** for each server. Fill in **Server Name**, **Server IP**, and **Server Port**, the port your service listens on in that server, and click **Submit**. Typing a node's name in **Server Name** lets you pick it and fills in its IP. If you attach a VPC on the next step, give the node's address in that VPC; otherwise, its private IP. Each group needs at least one server, and server names within a group must differ. **LB Listening Port** and **Server Port** are separate, so they can differ. For example, clients can connect to port 5432 on the load balancer while your servers listen on 15432. To carry another service, add a group on **Backend Mapping** with **Add Backend Group**, each with its own listening port; see [Manage backend groups and servers](/myaccount/load-balancer/how-to/manage-backend-groups/). Click **Next**. ## Choose the Peak Performance Features The options are the same as on an Application Load Balancer, and are explained in [Create an Application Load Balancer: Choose the Peak Performance Features](/myaccount/load-balancer/how-to/create-an-application-load-balancer/#choose-the-peak-performance-features). Two of them need your attention: - For an internal load balancer, pick at least one VPC under **VPC**. - Under **Choose Security Group**, keep the default group or choose another. Check that it allows inbound TCP on each **LB Listening Port** from your clients. The rest are optional: a reserved IP under **IPV4**, **Bitninja**, the timeouts, and **Enable Encryption**. Encryption, and a reserved IP as the public IP, can be chosen only at this step. Of the timeouts, an NLB uses **Connection Timeout**, **Client Timeout**, and **Server Timeout**. Click **Next**. ## Launch the load balancer On **Summary**, check your choices, and click **Launch Load Balancer**. MyAccount takes you back to the **Load Balancers** list, where the new NLB reads **Creating**. It reads **Running** about four to seven minutes after you launch it. For what can stop a launch, see [Create an Application Load Balancer: Launch the load balancer](/myaccount/load-balancer/how-to/create-an-application-load-balancer/#launch-the-load-balancer). ## Check that the load balancer is running Wait until the load balancer reads **Running**. Its **Mode** in the list reads **TCP**, and its **Info** tab shows the first group's **LB Listening Port**. Connect a client to a listening port, where `` is the load balancer's address and `` the port: ```bash nc -zv -w 5 ``` For an external load balancer, use the address in the **Public IP** column. For an internal one, run the command from a machine in the same VPC, with the VPC address shown under **Private IP**. A line that says the connection succeeded means the load balancer accepted it on that port. When no server in the group passes its check, the NLB accepts the connection and closes it without sending any data. To see whether each server passes its check, click the load balancer and open its **Backend Mapping** tab. To add services or servers later, see [Manage backend groups and servers](/myaccount/load-balancer/how-to/manage-backend-groups/). If it reads **Backend Connection Failure** or a port is refused, see [Troubleshooting Load Balancer](/myaccount/load-balancer/troubleshooting/load-balancer/).