Skip to content

Commit 6292270

Browse files
committed
Migrate NVA from Windows/RRAS to Linux/FRR in peer-route-server-with-virtual-appliance.md
1 parent f840cb3 commit 6292270

1 file changed

Lines changed: 45 additions & 72 deletions

File tree

articles/route-server/peer-route-server-with-virtual-appliance.md

Lines changed: 45 additions & 72 deletions
Original file line numberDiff line numberDiff line change
@@ -5,23 +5,22 @@ author: duongau
55
ms.author: duau
66
ms.service: azure-route-server
77
ms.topic: tutorial
8-
ms.date: 07/11/2025
8+
ms.date: 03/03/2026
99
ms.custom: sfi-image-nochange
1010

1111
---
1212

1313
# Tutorial: Configure BGP peering between Azure Route Server and network virtual appliance (NVA)
1414

15-
This tutorial shows you how to deploy Azure Route Server and configure BGP peering with a Windows Server network virtual appliance (NVA). You learn the complete process from deployment through route verification, providing hands-on experience with dynamic routing in Azure virtual networks.
15+
This tutorial shows you how to deploy Azure Route Server and configure BGP peering with a Linux-based network virtual appliance (NVA). You learn the complete process from deployment through route verification, providing hands-on experience with dynamic routing in Azure virtual networks.
1616

1717
By the end of this tutorial, you have a working Azure Route Server environment that demonstrates automatic route exchange between Azure's software-defined network and a network virtual appliance.
1818

1919
In this tutorial, you learn how to:
2020

2121
> [!div class="checklist"]
2222
> * Deploy an Azure Route Server in a virtual network
23-
> * Create and configure a Windows Server virtual machine as an NVA
24-
> * Deploy Azure Bastion for secure VM access
23+
> * Create and configure a Linux virtual machine as an NVA
2524
> * Configure BGP routing on the network virtual appliance
2625
> * Establish BGP peering between Route Server and the NVA
2726
> * Verify route learning and propagation
@@ -83,11 +82,11 @@ In this section, you create an Azure Route Server that establishes BGP peering w
8382
8483
## Create a network virtual appliance (NVA)
8584

86-
In this section, you create a Windows Server virtual machine that functions as a network virtual appliance and establish BGP communication with the Route Server.
85+
In this section, you create a Linux virtual machine that functions as a network virtual appliance and establish BGP communication with the Route Server.
8786

8887
### Create a virtual machine
8988

90-
Create a Windows Server VM in the virtual network you created earlier to act as a network virtual appliance.
89+
Create a Linux VM in the virtual network you created earlier to act as a network virtual appliance.
9190

9291
1. In the search box at the top of the portal, enter **virtual machine**, and select **Virtual machines** from the search results.
9392

@@ -105,12 +104,13 @@ Create a Windows Server VM in the virtual network you created earlier to act as
105104
| Region | Select **(US) East US**. |
106105
| Availability options | Select **No infrastructure required**. |
107106
| Security type | Select a security type. This tutorial uses **Standard**. |
108-
| Image | Select a **Windows Server** image. This tutorial uses **Windows Server 2022 Datacenter: Azure Edition - x64 Gen2** image. |
107+
| Image | Select **Ubuntu Server 24.04 LTS - x64 Gen2**. |
109108
| Size | Choose a size or leave the default setting. |
110109
| **Administrator account** | |
110+
| Authentication type | Select **SSH public key**. |
111111
| Username | Enter a username. |
112-
| Password | Enter a password. |
113-
| Confirm password | Reenter the password. |
112+
| SSH public key source | Select **Generate new key pair**. |
113+
| Key pair name | Enter **myNVA-key**. |
114114

115115
1. Select the **Networking** tab or **Next: Disks >** then **Next: Networking >**.
116116

@@ -126,80 +126,53 @@ Create a Windows Server VM in the virtual network you created earlier to act as
126126

127127
1. Select **Review + create** and then **Create** after validation passes.
128128

129-
### Deploy Azure Bastion
130-
131-
Azure Bastion uses your browser to connect to VMs in your virtual network over Secure Shell (SSH) or Remote Desktop Protocol (RDP) by using their private IP addresses. The VMs don't need public IP addresses, client software, or special configuration. For more information about Azure Bastion, see [Azure Bastion](../bastion/bastion-overview.md?toc=/azure/route-server/toc.json).
132-
133-
>[!NOTE]
134-
>[!INCLUDE [Pricing](~/reusable-content/ce-skilling/azure/includes/bastion-pricing.md)]
135-
136-
1. In the search box at the top of the portal, enter **Bastion**. Select **Bastions** in the search results.
137-
138-
1. Select **+ Create**.
139-
140-
1. In the **Basics** tab of **Create a Bastion**, enter, or select the following information:
141-
142-
| Setting | Value |
143-
|---|---|
144-
| **Project details** | |
145-
| Subscription | Select your subscription. |
146-
| Resource group | Select **myResourceGroup**. |
147-
| **Instance details** | |
148-
| Name | Enter **bastion**. |
149-
| Region | Select **East US**. |
150-
| Tier | Select **Developer**. |
151-
| **Configure virtual networks** | |
152-
| Virtual network | Select **myVirtualNetwork**. |
153-
154-
1. Select **Review + create**.
155-
156-
1. Select **Create**.
129+
> [!NOTE]
130+
> The network security group rules block inbound SSH access from the internet. To run commands on the virtual machine, use the **Run command** feature in the Azure portal or deploy Azure Bastion. For more information about Azure Bastion, see [Quickstart: Deploy Azure Bastion with default settings](../bastion/quickstart-host-portal.md).
157131
158132
### Configure BGP on the virtual machine
159133

160-
In this section, you configure BGP settings on the VM so it can function as an NVA and exchange routes with the Route Server.
134+
In this section, you install FRRouting (FRR) on the VM and configure BGP so it can function as an NVA and exchange routes with the Route Server.
161135

162136
> [!IMPORTANT]
163-
> The Routing and Remote Access Service (RRAS) isn't supported in Azure for production use. However, in this tutorial, it's used to simulate an NVA and demonstrate how to establish BGP peering with Route Server. For production environments, use supported network virtual appliances from Azure Marketplace. For more information, see [Remote access overview](/windows-server/remote/remote-access/remote-access).
137+
> FRRouting is used in this tutorial to simulate an NVA and demonstrate how to establish BGP peering with Route Server. For production environments, use supported network virtual appliances from Azure Marketplace.
138+
164139
1. In the search box at the top of the portal, enter **Virtual machine**. Select **Virtual machines** in the search results.
165140

166141
1. Select **myNVA**.
167142

168-
1. Select **Connect** then **Connect via Bastion** in the **Overview** section.
169-
170-
1. In the **Bastion** connection page, enter or select the following information:
171-
172-
| Setting | Value |
173-
| ------- | ----- |
174-
| Authentication Type | Select **Password**. |
175-
| Username | Enter the username you created. |
176-
| Password | Enter the password you created. |
177-
178-
1. Select **Connect**.
179-
180-
1. Run PowerShell as an administrator.
181-
182-
1. In PowerShell, execute the following cmdlets:
183-
184-
```powershell
185-
# Install required Windows features.
186-
Install-WindowsFeature RemoteAccess
187-
Install-WindowsFeature RSAT-RemoteAccess-PowerShell
188-
Install-WindowsFeature Routing
189-
Install-RemoteAccess -VpnType RoutingOnly
190-
191-
# Configure BGP & Router ID on the Windows Server
192-
Add-BgpRouter -BgpIdentifier 10.0.0.4 -LocalASN 65001
193-
194-
# Configure Azure Route Server as a BGP Peer.
195-
Add-BgpPeer -LocalIPAddress 10.0.0.4 -PeerIPAddress 10.0.1.4 -PeerASN 65515 -Name RS_IP1
196-
Add-BgpPeer -LocalIPAddress 10.0.0.4 -PeerIPAddress 10.0.1.5 -PeerASN 65515 -Name RS_IP2
197-
198-
# Originate and announce BGP routes.
199-
Add-BgpCustomRoute -network 172.16.1.0/24
200-
Add-BgpCustomRoute -network 172.16.2.0/24
143+
1. In **Operations**, select **Run command** then **RunShellScript**.
144+
145+
1. Enter the following script in the **Run Command Script** window, then select **Run**:
146+
147+
```bash
148+
#!/bin/bash
149+
# Install FRRouting
150+
sudo apt-get update && sudo apt-get install -y frr
151+
152+
# Enable BGP daemon
153+
sudo sed -i 's/bgpd=no/bgpd=yes/' /etc/frr/daemons
154+
155+
# Write BGP configuration
156+
sudo tee /etc/frr/frr.conf > /dev/null << 'EOF'
157+
frr version 8.1
158+
frr defaults traditional
159+
hostname myNVA
160+
router bgp 65001
161+
bgp router-id 10.0.0.4
162+
neighbor 10.0.1.4 remote-as 65515
163+
neighbor 10.0.1.5 remote-as 65515
164+
address-family ipv4 unicast
165+
network 172.16.1.0/24
166+
network 172.16.2.0/24
167+
exit-address-family
168+
EOF
169+
170+
# Restart FRR to apply configuration
171+
sudo systemctl restart frr
201172
```
202173
174+
1. Wait for the script to complete. The output confirms the FRR installation and BGP configuration.
175+
203176
## Configure Route Server peering
204177
205178
Now that you have configured BGP on the virtual machine, you need to add the NVA as a BGP peer in the Route Server configuration.

0 commit comments

Comments
 (0)