Skip to content

Commit 91ca9fc

Browse files
authored
Merge pull request #298366 from mbender-ms/lb-uuf-floating-ip-us421776
load balancer | UUF | Maintenance | update load-balancer-floating-ip.md
2 parents 140ea45 + 19b9e68 commit 91ca9fc

File tree

3 files changed

+36
-43
lines changed

3 files changed

+36
-43
lines changed

articles/load-balancer/load-balancer-floating-ip.md

Lines changed: 36 additions & 43 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ services: load-balancer
55
author: mbender-ms
66
ms.service: azure-load-balancer
77
ms.topic: how-to
8-
ms.date: 06/11/2024
8+
ms.date: 04/16/2025
99
ms.author: mbender
1010
ms.custom: template-how-to, engagement-fy23
1111
---
@@ -50,37 +50,32 @@ In order to function, you configure the Guest OS for the virtual machine to rece
5050

5151
For each VM in the backend pool, run the following commands at a Windows Command Prompt on the server.
5252

53-
To get the list of interface names you have on your VM, type this command:
53+
1. To get the list of interface names you have on your VM, enter this command:
5454

55-
```console
56-
netsh interface ipv4 show interface
57-
```
55+
```console
56+
netsh interface ipv4 show interface
57+
```
58+
2. For the VM NIC (Azure managed), enter the following command after replacing **interface-name** with the name of the interface you want to use:
5859

59-
For the VM NIC (Azure managed), type this command.
60+
```console
61+
netsh interface ipv4 set interface <interface-name> weakhostreceive=enabled
62+
```
6063

61-
```console
62-
netsh interface ipv4 set interface <interfacename> weakhostreceive=enabled
63-
```
64-
(replace **"interfacename"** with the name of this interface)
64+
3. For each loopback interface you added, enter these commands after replacing **loopback-interface-name** with the name of the loopback interface and **floating-IP** and **floating-IPnetmask** with the appropriate values that correspond to the load balancer frontend IP:
6565

66-
For each loopback interface you added, repeat these commands:
66+
```console
67+
netsh interface ipv4 add addr <loopback-interface-name> <floating-IP> <floating-IPnetmask>
68+
netsh interface ipv4 set interface <loopback-interface-name> weakhostreceive=enabled weakhostsend=enabled
69+
```
6770

68-
```console
69-
netsh interface ipv4 add addr <loopbackinterfacename> floatingip floatingipnetmask
70-
netsh interface ipv4 set interface <loopbackinterfacename> weakhostreceive=enabled weakhostsend=enabled
71-
```
72-
(replace **loopbackinterfacename** with the name of this loopback interface and **floatingip** and **floatingipnetmask** with the appropriate values that correspond to the load balancer frontend IP)
71+
4. Finally, if the guest host uses a firewall, ensure a rule set up so the traffic can reach the VM on the appropriate ports. This example configuration assumes a load balancer frontend IP configuration of 1.2.3.4 and a load balancing rule for port 80:
7372

74-
Finally, if the guest host uses a firewall, ensure a rule set up so the traffic can reach the VM on the appropriate ports.
75-
76-
This example configuration assumes a load balancer frontend IP configuration of 1.2.3.4 and a load balancing rule for port 80:
77-
78-
```console
79-
netsh int ipv4 set int "Ethernet" weakhostreceive=enabled
80-
netsh int ipv4 add addr "Loopback Pseudo-Interface 1" 1.2.3.4 255.255.255.0
81-
netsh int ipv4 set int "Loopback Pseudo-Interface 1" weakhostreceive=enabled weakhostsend=enabled
82-
netsh advfirewall firewall add rule name="http" protocol=TCP localport=80 dir=in action=allow enable=yes
83-
```
73+
```console
74+
netsh int ipv4 set int "Ethernet" weakhostreceive=enabled
75+
netsh int ipv4 add addr "Loopback Pseudo-Interface 1" 1.2.3.4 255.255.255.0
76+
netsh int ipv4 set int "Loopback Pseudo-Interface 1" weakhostreceive=enabled weakhostsend=enabled
77+
netsh advfirewall firewall add rule name="http" protocol=TCP localport=80 dir=in action=allow enable=yes
78+
```
8479
</details>
8580

8681
### Ubuntu
@@ -90,33 +85,31 @@ netsh advfirewall firewall add rule name="http" protocol=TCP localport=80 dir=in
9085

9186
For each VM in the backend pool, run the following commands via an SSH session.
9287

93-
To get the list of interface names you have on your VM, type this command:
88+
1. To get the list of interface names you have on your VM, type this command:
9489

95-
```console
96-
ip addr
97-
```
98-
For each loopback interface, repeat these commands, which assign the floating IP to the loopback alias:
90+
```console
91+
ip addr
92+
```
9993

100-
```console
101-
sudo ip addr add <floatingip>/<floatingipnetmask> dev lo:0
102-
```
103-
(replace **floatingip** and **floatingipnetmask** with the appropriate values that correspond to the load balancer frontend IP)
94+
2. For each loopback interface you added, enter these commands after replacing **loopback-interface-name** with the name of the loopback interface and **floating-IP** and **floating-IPnetmask** with the appropriate values that correspond to the load balancer frontend IP:
10495

105-
Finally, if the guest host uses a firewall, ensure a rule set up so the traffic can reach the VM on the appropriate ports.
96+
```console
97+
sudo ip addr add <floating-IP>/<floating-IPnetmask> dev lo:0
98+
```
10699

107-
This example configuration assumes a load balancer frontend IP configuration of 1.2.3.4 and a load balancing rule for port 80. This example also assumes the use of [UFW (Uncomplicated Firewall)](https://www.wikipedia.org/wiki/Uncomplicated_Firewall) in Ubuntu.
100+
3. Finally, if the guest host uses a firewall, ensure a rule set up so the traffic can reach the VM on the appropriate ports. This example configuration assumes a load balancer frontend IP configuration of 1.2.3.4, a load balancing rule for port 80, and the use of [UFW (Uncomplicated Firewall)](https://www.wikipedia.org/wiki/Uncomplicated_Firewall) in Ubuntu.
108101

109-
```console
110-
sudo ip addr add 1.2.3.4/24 dev lo:0
111-
sudo ufw allow 80/tcp
112-
```
102+
```console
103+
sudo ip addr add 1.2.3.4/24 dev lo:0
104+
sudo ufw allow 80/tcp
105+
```
113106
</details>
114107

115108
## <a name = "limitations"></a>Limitations
116109

117110
- With Floating IP enabled on a load balancing rule, your application must use the primary IP configuration of the network interface for outbound.
118-
- If your application binds to the frontend IP address configured on the loopback interface in the guest OS, Azure's outbound won't rewrite the outbound flow, and the flow fails. Review [outbound scenarios](load-balancer-outbound-connections.md).
119-
- You can't use Floating IP on secondary IP configurations for Load Balancing scenarios. This limitation doesn't apply to Public load balancers where the secondary IP configuration is IPv6 an part of a dual-stack configuration or to architectures that utilize a NAT Gateway for outbound connectivity.
111+
- If your application binds to the frontend IP address configured on the loopback interface in the guest OS, Azure's outbound connection doesn't rewrite the outbound flow, and the flow fails. Review [outbound scenarios](load-balancer-outbound-connections.md).
112+
- You can't use Floating IP on secondary IP configurations for Load Balancing scenarios. This limitation doesn't apply to Public load balancers where the secondary IP configuration is IPv6 and part of a dual-stack configuration, or to architectures that utilize a NAT Gateway for outbound connectivity.
120113

121114
## Next steps
122115

421 Bytes
Loading

0 commit comments

Comments
 (0)