Esercizio - Configurare un router personalizzato

Completato

Attenzione

Questo contenuto fa riferimento a CentOS, una distribuzione Linux con stato End Of Life (EOL). Valutare le proprie esigenze e pianificare di conseguenza. Per ulteriori informazioni, consultare la Guida alla fine del ciclo di vita di CentOS.

Usare le istruzioni seguenti per configurare l'infrastruttura per l'FRR e generare la route predefinita:

az network vnet subnet create  -n <NVA-Subnet-name> -g <resource-group-name> --vnet-name <vnet-name>  --address-prefix 10.0.2.0/24

az network nic create -g <resource-group-name> --vnet-name <vnet-name>  --subnet <NVA-Subnet-name> -n <NVA-nic-name>

az vm availability-set create --name <nva-availability-set-name> --resource-group <resource-group-name> --location <your-preferred-azure-region>

az vm create --name <nva-vm-name>  --resource-group <resource-group-name>  --location <your-preferred-azure-region> --image OpenLogic:CentOS:8_5:8.5.2022012100 --size Standard_D1_v2        --availability-set <nva-availability-set-name>  --authentication-type password  --admin-username <vm-admin-user-name>  --admin-password <vm-admin-username-password> --storage-sku Standard_LRS  --nics <NVA-nic-name>

Configurare il routing FRR nell'appliance virtuale di rete

A questo punto, si configurerà il software FRR.

  1. Aggiornare le variabili routeServerSubnetPrefix e bgpNvaSubnetGateway nello script seguente.

    #
    # IP prefix of the RouteServerSubnet in the Firewall VNet. 
    #  
    routeServerSubnetPrefix="<azure-route-server-subnet-prefix>"
    
    #
    # The first IP address of the subnet to which the "eth0" device is attached.
    #
    bgpNvaSubnetGateway="<nva-azure-subnet-first-ip-address>"
    
    # Install FRR
    sudo dnf install frr -y
    
    # Configure FRR to run the bgpd daemon
    sudo sed -i 's/bgpd=no/bgpd=yes/g' /etc/frr/daemons
    sudo touch /etc/frr/bgpd.conf
    sudo chown frr /etc/frr/bgpd.conf
    sudo chmod 640 /etc/frr/bgpd.conf
    
    # Start FRR daemons
    sudo systemctl enable frr --now
    
    
    # Add static routes to ensure reachability for Route Servers (Route Server are not-directly-connected external BGP neighbours).
    
    # Please note that this configuration is transient and will be lost if the VM is rebooted.
    
    # On CentOS VMs, you can add these routes to /etc/sysconfig/network-scripts/route-eth<X> to make them persistent across reboots. 
    
    sudo ip route add $routeServerSubnetPrefix via $bgpNvaSubnetGateway dev eth0
    
  2. Copiare lo script modificato in precedenza.

  3. Accedere alla shell delle macchine virtuali dell'appliance virtuale di rete.

  4. Incollare lo script copiato dagli Appunti come testo non crittografato nella shell dell'appliance virtuale di rete (CTRL-MAIUSC-V).

  5. Eseguire lo script e attendere il completamento dello script entro un minuto.

  6. Verificare che non vengano segnalati errori dopo l'esecuzione.

    Screenshot dell'esecuzione dello script sulla macchina virtuale dell'appliance virtuale di rete. La schermata non mostra alcun errore al termine dell'esecuzione dello script.

  7. Eseguire sudo vtysh

  8. Verificare che FRR sia in esecuzione e che la shell dei comandi sia stata avviata.

    Screenshot del prompt di sudo sulla macchina virtuale dell'appliance virtuale di rete. La schermata mostra l'esecuzione del comando 'sudo vtysh'.

Configurare il BGP adiacente e la rotta predefinita per l'appliance virtuale di rete

Questo passaggio configura l'appliance virtuale di rete FRR in modo che il server di route Azure sia il BGP adiacente. Viene aggiunta anche una route predefinita (0.0.0.0/0) nell'appliance virtuale di rete.

  1. Aggiornare le variabili seguenti nello script seguente.

    1. <Indirizzo IP privato del Firewall>
    2. <Indirizzo IP dell'istanza del server di route #0>
    3. <Indirizzo IP dell'istanza del server di route #1>
    conf term
    !
    route-map SET-NEXT-HOP-FW permit 10
    set ip next-hop <Firewall Private IP address>
    exit
    !
    router bgp 65111
    no bgp ebgp-requires-policy
    neighbor <IP address of Route Server instance #0> remote-as 65515  
    neighbor <IP address of Route Server instance #0> ebgp-multihop 2
    neighbor <IP address of Route Server instance #1> remote-as 65515 
    neighbor <IP address of Route Server instance #1> ebgp-multihop 2
    network 0.0.0.0/0
    !
    address-family ipv4 unicast
      neighbor <IP address of Route Server instance #0> route-map SET-NEXT-HOP-FW out
      neighbor <IP address of Route Server instance #1> route-map SET-NEXT-HOP-FW out
    exit-address-family
    !
    exit
    !
    exit
    !
    write file
    !
    
  2. Accedere alla shell FRR.

  3. Incollare lo script con le variabili aggiornate.

  4. Eseguire show ip bgp per verificare che l'appliance virtuale di rete non abbia ancora appreso le route ad eccezione della propria route predefinita.

  5. Eseguire show ip bgp sum per verificare che l'appliance virtuale di rete non abbia ancora stabilito sessioni BGP.

    Screenshot dell'esecuzione del comando sulla macchina virtuale dell’appliance virtuale di rete. La schermata mostra il Server di route Azure come vicino BGP per l'appliance virtuale di rete.

Configurare il peering con il server di route Azure

I passaggi seguenti stabiliscono una relazione peer BGP tra l'FRR dell'appliance virtuale di rete e il server di route Azure.

  1. Eseguire i comandi seguenti al prompt dell'interfaccia della riga di comando di Azure:

    
     az network routeserver peering create  --name <nva-vm-name>  --peer-ip <private-ip-of-nva-vm-name>  --peer-asn <asn-value-other-than-65515-65520>  --routeserver <routeserver-name>  --resource-group <resource-group-name>`
    
     az network routeserver update --name <routeserver-name>  --resource-group <resource-group-name>   --allow-b2b-traffic true`
    
  2. Accedere alla shell FRR.

  3. Eseguire show ip bgp per confermare che l'appliance virtuale di rete ha appreso le rotte dal Server di route Azure.

    Screenshot dell'esecuzione del comando sulla macchina virtuale dell'appliance virtuale di rete. L'immagine mostra il Server di route Azure come next hop per la rete AVS.

  4. Assicurarsi che Firewall di Azure abbia una connettività Internet diretta. Questo può essere tramite il portale Azure, ispezionando la tabella di routing associata alla subnet Firewall di Azure.

    Screenshot del menu del portale Azure. La voce di menu intitolata

A questo punto, è stato configurato il cloud privato di soluzione Azure VMware per implementare una connettività Internet sicura in uscita. È stato distribuito il server di route Azure per uno scambio di route efficace tra soluzione Azure VMware cloud privato e l'appliance virtuale di rete. È stata quindi distribuita Firewall di Azure come punto di uscita per tutto il traffico associato a Internet. Questo è stato seguito usando FRR: un router personalizzato, che inserisce la route predefinita con Firewall di Azure come hop successivo nel cloud privato della soluzione Azure VMware.

Nell'unità successiva si apprenderà come implementare controlli di accesso con granularità fine in Firewall di Azure, che consente/nega il traffico dal cloud privato della soluzione Azure VMware.

Verifica delle conoscenze

1.

Quale servizio di Azure supporta la creazione e l'inserimento di route predefinite?

2.

Quanti indirizzi IP privati vengono assegnati al server di route Azure?