Cómo llegar a IPVPN Beeline a través de IPSec. Parte 2

¡Hola! Como prometí, en esta publicación hablaré sobre la combinación de nuestros servicios de Reserva MultiSIM e IPVPN sobre IPSec. Por sí mismos, los servicios IPSec son buenos, el servicio funciona a través de un proveedor de Internet por cable, pero me gustaría reservar de alguna manera la inclusión o brindar el servicio donde no hay Internet por cable, sino solo a través de LTE.











En la versión clásica de MultiSIM Reservation, cuando se brindan servicios IPVPN en dos redes móviles, existen los siguientes problemas:



  1. Para cada cliente, debe crear su propio APN privado, configurar BGP o enrutamiento estático en él, calcular inmediatamente la cantidad requerida de hosts para el plan de direccionamiento IP correcto.
  2. , , .
  3. ().
  4. IPVPN LTE , , — IPVPN LTE «».


Por otro lado, tenemos IPSec, en el que todas las configuraciones de enrutamiento y cliente se abstraen del transporte, ya sea un canal de Internet cableado o LTE de diferentes operadores, y las etiquetas de tráfico también se pueden almacenar dentro del túnel, aunque sin proporcionar SLA, ya que Internet y especialmente LTE / 3G es un medio bastante impredecible para la transmisión de datos.



Por lo tanto, tuvimos una idea: "¿Por qué no usar IPsec sobre LTE también?" Coloque tarjetas SIM estándar con APN creados previamente en los enrutadores y cree IPSEC a través de ellos en nuestro HUB VPN y libere al cliente en su VRF. Y si hay un canal por cable, utilice una conexión por cable como transporte principal y, en caso de accidente, cambie el tráfico a LTE.



Por lo tanto, el diagrama de red comenzó a verse así:





Se puede hacer clic



El cliente obtiene hasta tres canales WAN a la vez, que desempeñarán el papel de "subyacente" para el tráfico IPSec:



  1. Canal de acceso a Internet por cable.
  2. La primera red LTE (principal).
  3. Segunda red LTE (de respaldo) (si es necesario).


Ahora queda seleccionar y configurar un enrutador para esta opción de prestación de servicios.



Configurar un enrutador



Al elegir un enrutador, nos interesaron dos modelos de Huawei: AR161 y AR129. Cuentan con soporte IPSec, un modem LTE con soporte para dos tarjetas SIM, 4 puertos LAN Ethernet + 1 WAN Ethernet, y en el modelo AR129 también hay WiFi, es decir, todo lo que se necesita para que funcione nuestro circuito, e incluso un poco más.



Pero con la configuración, todo resultó mucho más complicado.



Al configurar los enrutadores para la redundancia multisim, enfrentamos el problema de las prioridades entre las redes WAN cableadas y dos LTE para elegir la mejor ruta de tráfico.



El Huawei AR161 / 129 tiene dos herramientas para esto:



  • Funcionalidad de análisis de calidad de red (también conocida como prueba NQA).

    Realiza pruebas básicas con solicitudes icmp al host especificado para determinar su disponibilidad.
  • Open Programmability System (OPS) + funcionalidad Python.

    Una herramienta muy poderosa que permite guardar información en logs y realizar conmutaciones "inteligentes" basadas en estadísticas icmp, pero también de difícil aprendizaje.


Para resolver nuestro problema, elegimos la funcionalidad OPS + Python para habilitar solo dos SIM LTE y el modo mixto para Internet + dos SIM LTE.



Una configuración aproximada en los enrutadores es la siguiente:



En caso de solo conexión 2x ​​Sim LTE



#  IP    WAN  (  DHCP)
interface GigabitEthernet0/0/4
ip address dhcp-alloc

# APN , Cellular0/0/0 
apn profile [APN #1]
 apn [APN 1 NAME]
apn profile [APN #2]
 apn [APN 2 NAME]
 sim-id 2

# Cellular0/0/0 
interface Cellular0/0/0
dialer enable-circular
 apn-profile [APN #1] priority 120
 apn-profile [APN #2]
 dialer timer autodial 60
 profile create lte-default [APN #1] sim-id 1 
 profile create lte-default [APN #2] sim-id 2
 ip address negotiate
modem reboot

# IPSec 
ipsec authentication sha2 compatible enable
ike local-name [IPSEC_LOGIN]

#   IPSec 
ipsec proposal ipsec
 esp authentication-algorithm sha2-256
 esp encryption-algorithm aes-256
ike proposal 1
 encryption-algorithm aes-256
 dh group2
 authentication-algorithm sha2-256
 authentication-method pre-share
 integrity-algorithm hmac-sha2-256
 prf hmac-sha2-256  	                  

#  IPSec 
ike peer ipsec_1
 pre-shared-key simple [IPSEC_PASSWORD]
 ike-proposal 1
 local-id-type fqdn
 remote-id-type ip
 dpd type periodic
 dpd idle-time 10
 dpd retransmit-interval 2
 remote-address 100.64.0.100
 route accept
 config-exchange request
 config-exchange set accept
 config-exchange set send
ipsec profile ipsecprof_1
 ike-peer ipsec_1
 proposal ipsec 

# IPSec -
interface Tunnel0/0/0
tunnel-protocol ipsec
 ip address [ IP   - Huawei]  255.255.255.252
source Cellular0/0/0
ipsec profile ipsecprof_1 

# 
ip route-static 0.0.0.0 0.0.0.0 Tunnel0/0/0
ip route-static [VPN HUB INTERNAL ADDRESS] 255.255.0.0 Cellular0/0/0 


En caso de inclusión de Internet + 2x Sim LTE



#  IP    WAN  (  DHCP)
interface GigabitEthernet0/0/4
ip address dhcp-alloc

# APN , Cellular0/0/0 
apn profile [APN #1]
 apn [APN 1 NAME]
apn profile [APN #2]
 apn [APN 2 NAME]
 sim-id 2

# Cellular0/0/0 
interface Cellular0/0/0
dialer enable-circular
 apn-profile [APN #1] priority 120
 apn-profile [APN #2]
 dialer timer autodial 60
 profile create lte-default [APN #1] sim-id 1 
 profile create lte-default [APN #2] sim-id 2
 ip address negotiate
modem reboot

# IPSec 
ipsec authentication sha2 compatible enable
ike local-name [IPSEC_LOGIN]

#   IPSec 
ipsec proposal ipsec
 esp authentication-algorithm sha2-256
 esp encryption-algorithm aes-256
ike proposal 1
 encryption-algorithm aes-256
 dh group2
 authentication-algorithm sha2-256
 authentication-method pre-share
 integrity-algorithm hmac-sha2-256
 prf hmac-sha2-256  	                  

#  IPSec 
ike peer ipsec_1
 pre-shared-key simple [IPSEC_PASSWORD]
 ike-proposal 1
 local-id-type fqdn
 remote-id-type ip
 dpd type periodic
 dpd idle-time 10
 dpd retransmit-interval 2
 remote-address 81.211.80.50
 route accept
 config-exchange request
 config-exchange set accept
 config-exchange set send
ipsec profile ipsecprof_1
 ike-peer ipsec_1
 proposal ipsec
 
ike peer ipsec_2
 pre-shared-key simple [IPSEC_PASSWORD]
 ike-proposal 1
 local-id-type fqdn
 remote-id-type ip
 dpd type periodic
 dpd idle-time 10
 dpd retransmit-interval 2
 remote-address [VPN HUB INTERNAL ADDRESS]
 route accept
 config-exchange request
 config-exchange set accept
 config-exchange set send
ipsec profile ipsecprof_2
 ike-peer ipsec_2
 proposal ipsec

# IPSec-
interface LoopBack32
 ip address [ IP   - Huawei]  255.255.255.252
 
interface Tunnel0/0/0
ip address unnumbered interface LoopBack32
tunnel-protocol ipsec
 source GigabitEthernet0/0/1
 ipsec profile ipsecprof_1

interface Tunnel0/0/1
ip address unnumbered interface LoopBack32
tunnel-protocol ipsec
 source Cellular0/0/0
 ipsec profile ipsecprof_2

#   (   )
nqa test-instance [username] inet
 test-type icmp
 destination-address ipv4 81.211.80.50
 source-interface GigabitEthernet0/0/4
 frequency 16
 probe-count 2
 start now

# 
ip route-static 81.211.80.50 255.255.255.255 GigabitEthernet 0/0/4 dhcp track nqa [username] inet
ip route-static [VPN HUB INTERNAL ADDRESS] 255.255.255.255 NULL0 track nqa [username] inet
ip route-static [VPN HUB INTERNAL ADDRESS] 255.255.0.0 Cellular0/0/0 preference 70
ip route-static 80.240.216.155 255.255.255.255 GigabitEthernet 0/0/4 dhcp
ip route-static 194.67.0.206 255.255.255.255 GigabitEthernet 0/0/4 dhcp




Todo, el enrutador configurado se puede instalar al cliente.



Planes



De los planes para desarrollar esta solución:



  1. Haga lo mismo, pero en routers Cisco / Mikrotik.
  2. Traducir toda la lógica de conmutación a OPS + Python solamente


En los siguientes artículos, le diremos cómo nos hicimos amigos de los servicios de Reserva Multisim con nuestro Cloud PBX , hicimos el modo L2-over-L3 en el mismo huave usando x-connect, diseñaremos scripts para cambiar tarjetas SIM en Python e informaremos sobre la implementación de USB en los enrutadores.



Gracias a mis colegas de RnD, especialmente a Denis Zinchenko (Dzinch) y Andrey Voronov en la preparación de estas soluciones técnicas y en ayudar a escribir el artículo.



PD: La primera parte de la publicación está aquí .



All Articles