Ciao! In post precedente Ho descritto il lavoro del nostro servizio MultiSIM per quanto riguarda la riserva e il bilanciamento dei canali. Come accennato, colleghiamo i clienti alla rete tramite VPN e oggi parlerò un po' di più della VPN e delle nostre capacità in questo ambito.
Innanzitutto, va detto che noi, in qualità di operatore di telecomunicazioni, disponiamo di una vasta rete MPLS, che per i clienti con connessione fissa è suddivisa in due segmenti principali: uno utilizzato direttamente per l'accesso a Internet e l'altro usato per la creazione di reti isolate — ed è proprio attraverso questo segmento MPLS che passa il traffico IPVPN (L3 OSI) e VPLAN (L2 OSI) per i nostri clienti aziendali.

Di solito, il collegamento del cliente avviene nel seguente modo.
Una linea di accesso viene stesa fino all'ufficio del cliente dalla più vicina Point of Presence della rete (nodo MEN, PРL, BССS, FTTB, ecc.) e poi il canale viene registrato sulla rete di trasporto fino al relativo router RE-MPLS, sul quale lo inoltriamo in un VRF creato appositamente per il cliente, tenendo conto del profilo di traffico necessario (le etichette del profilo vengono scelte per ciascuna porta di accesso, basandosi sui valori di ip precedence 0, 1, 3, 5).
Se per qualche motivo non possiamo organizzare adeguatamente l'ultimo miglio per il cliente, ad esempio se l'ufficio del cliente si trova in un business center dove prevale un altro fornitore, o se non ci sono punti di presenza nelle vicinanze, prima i clienti dovevano creare più reti IPVPN presso diversi fornitori (un'architettura non proprio conveniente in termini di costi) o risolvere autonomamente le questioni relative all'accesso al proprio VRF sopra la rete Internet.
Molti lo facevano installando un gateway IPVPN — installavano un router di confine (hardware o una soluzione basata su Linux), collegavano a esso un canale IPVPN su una porta e un canale Internet sull'altra, avviavano il proprio un server VPN e collegavano gli utenti tramite il proprio gateway VPN. Naturalmente, questo schema porta a anche a oneri: tale infrastruttura deve essere in grado di essere costruita e, quel che è più scomodo, di essere gestita e sviluppata.
Per semplificare la vita ai nostri clienti, abbiamo istituito un hub VPN centralizzato e organizzato il supporto per connessioni su internet utilizzando IPSec. Ora i clienti devono solo configurare il proprio router per lavorare con il nostro hub VPN tramite un tunnel IPSec attraverso qualsiasi internet pubblico, e noi gestiremo il traffico di questo cliente nel suo VRF.
A chi può servire
- A chi ha già una grande rete IPVPN e necessita di nuove connessioni in tempi rapidi.
- A chi, per vari motivi, desidera trasferire parte del traffico da internet pubblico a IPVPN, ma in passato ha incontrato limitazioni tecniche legate a più fornitori di servizi.
- A chi attualmente ha diverse reti VPN frammentate con vari operatori di telecomunicazioni. Ci sono clienti con IPVPN organizzate con Beeline, MegaFon, Rostelecom, ecc. Per semplificare, si può mantenere solo il nostro unico VPN, mentre tutti gli altri canali degli altri operatori possono essere reindirizzati su internet, dopo di che ci si può collegare a IPVPN Beeline tramite IPSec e l'internet di questi operatori.
- A chi ha già una rete IPVPN sovrapposta a Internet.
Se si implementa tutto da noi, i clienti ottengono supporto completo per VPN, una seria ridondanza dell'infrastruttura e configurazioni standard che funzioneranno su qualsiasi router di loro uso (sia esso Cisco o Mikrotik, purché supporti correttamente IPSec/IKEv2 con i metodi di autenticazione standardizzati). A proposito di IPSec, attualmente supportiamo solo questo, ma stiamo pianificando di avviare il supporto completo anche per OpenVPN e Wireguard, affinché i clienti possano non dipendere dal protocollo e possano trasferire tutto da noi con maggiore facilità. Vogliamo inoltre iniziare a connettere clienti dai computer e dispositivi mobili (soluzioni integrate nei sistemi operativi, Cisco AnyConnect, strongSwan e simili). Con questo approccio, si può tranquillamente affidare la costruzione dell'infrastruttura all'operatore, mantenendo solo la configurazione del CPE o dell'host.
Come avviene il processo di connessione per la modalità IPSec:
- Il cliente invia una richiesta al proprio manager specificando la velocità di connessione necessaria, il profilo di traffico e i parametri di indirizzamento IP per il tunnel (di default sottorete con maschera /30) e il tipo di instradamento (statico o BGP). Per la trasmissione delle rotte verso le reti locali del cliente negli uffici connessi, vengono utilizzati meccanismi IKEv2 della fase del protocollo IPSec tramite le configurazioni appropriate sul router del cliente, oppure vengono annunciate tramite BGP in MPLS dall'AS BGP privato indicato dal cliente nella richiesta. In questo modo, le informazioni sulle rotte delle reti client sono completamente controllate dal cliente tramite le impostazioni del router del cliente.
- In risposta dal proprio manager, il cliente riceve i dati di accounting per essere inclusi nel proprio VRF del tipo:
- Indirizzo IP del VPN-HUB
- Nome utente
- Password di autenticazione
- Configura CPE, di seguito, per esempio, due varianti di configurazione di base:Opzione per Cisco:
crypto ikev2 keyring BeelineIPsec_keyring
peer Beeline_VPNHub
address 62.141.99.183 – VPN concentratore Beeline
pre-shared-key
!
Per l'opzione con instradamento statico, le rotte verso le reti accessibili tramite il Vpn-hub possono essere specificate nella configurazione IKEv2 e appariranno automaticamente come rotte statiche nella tabella di instradamento CPE. Queste impostazioni possono essere effettuate anche utilizzando il metodo standard per la definizione delle rotte statiche (vedere sotto).crypto ikev2 authorization policy FlexClient-author
La rotta verso le reti oltre il router CPE è un'impostazione obbligatoria in caso di instradamento statico tra CPE e PE. La trasmissione dei dati delle rotte al PE avviene automaticamente al momento dell'attivazione del tunnel attraverso l'interazione IKEv2.
route set remote ipv4 10.1.1.0 255.255.255.0 – Rete locale dell'ufficio
!
crypto ikev2 profile BeelineIPSec_profile
identity local
authentication local pre-share
authentication remote pre-share
keyring local BeelineIPsec_keyring
aaa authorization group psk list group-author-list FlexClient-author
!
crypto ikev2 client flexvpn BeelineIPsec_flex
peer 1 Beeline_VPNHub
client connect Tunnel1
!
crypto ipsec transform-set TRANSFORM1 esp-aes 256 esp-sha256-hmac
mode tunnel
!
crypto ipsec profile default
set transform-set TRANSFORM1
set ikev2-profile BeelineIPSec_profile
!
interface Tunnel1
ip address 10.20.1.2 255.255.255.252 – Indirizzo del tunnel
tunnel source GigabitEthernet0/2 – Interfaccia di accesso a Internet
tunnel mode ipsec ipv4
tunnel destination dynamic
tunnel protection ipsec profile default
!
Le rotte verso le reti private del cliente, accessibili tramite il VPN concentratore Beeline, possono essere definite staticamente.ip route 172.16.0.0 255.255.0.0 Tunnel1
ip route 192.168.0.0 255.255.255.0 Tunnel1Opzione per Huawei (ar160/120):
ike local-name
#
acl name ipsec 3999
regola 1 consenti ip sorgente 10.1.1.0 0.0.0.255 – Rete locale dell'ufficio
#
aaa
schema di servizio IPSEC
imposta rotta acl 3999
#
proposta ipsec ipsec
algoritmo di autenticazione esp sha2-256
algoritmo di crittografia esp aes-256
#
proposta ike predefinita
algoritmo di crittografia aes-256
gruppo dh2
algoritmo di autenticazione sha2-256
metodo di autenticazione pre-condiviso
algoritmo di integrità hmac-sha2-256
prf hmac-sha2-256
#
ike peer ipsec
chiave pre-condivisa semplice
tipo-id locale fqdn
tipo-id remoto ip
indirizzo-remoto 62.141.99.183 – VPN concentratore Beeline
schema di servizio IPSEC
richiesta di scambio di configurazione
imposta accetta scambio di configurazione
imposta invia scambio di configurazione
#
profilo ipsec ipsecprof
peer ike ipsec
proposta ipsec
#
interfaccia Tunnel0/0/0
ip address 10.20.1.2 255.255.255.252 – Indirizzo del tunnel
protocollo tunnel ipsec
sorgente GigabitEthernet0/0/1 – Interfaccia di accesso a Internet
profilo ipsec ipsecprof
#
Le rotte verso le reti private del cliente, disponibili tramite il concentratore VPN Beeline, possono essere impostate staticamenteip route-static 192.168.0.0 255.255.255.0 Tunnel0/0/0
ip route-static 172.16.0.0 255.255.0.0 Tunnel0/0/0
Lo schema di collegamento risultante appare circa in questo modo:

Se il cliente non ha esempi di configurazione di base, di solito aiutiamo a crearli e li rendiamo disponibili a tutti gli altri.
Rimane da collegare il CPE a Internet, effettuare un ping verso la parte risposta del tunnel VPN e verso un host all'interno della VPN, e tutto, si può considerare che la connessione è avvenuta.
Nell'articolo successivo diremo come abbiamo combinato questo schema con IPSec e MultiSIM Backup utilizzando CPE Huawei: installiamo ai clienti il nostro CPE Huawei, in cui possono essere utilizzati non solo il canale internet cablato, ma anche 2 diverse schede SIM, e il CPE ricostruisce automaticamente il tunnel IPSec sia attraverso WAN cablato che tramite radio (LTE#1/LTE#2), realizzando un'alta affidabilità del servizio finale.
Un ringraziamento speciale per la preparazione di questo articolo (e, in effetti, agli autori di queste soluzioni tecniche) ai colleghi del nostro RnD!
Fonte: habr.com
