O conjunto de documentação deste produto faz o possível para usar uma linguagem imparcial. Para os fins deste conjunto de documentação, a imparcialidade é definida como uma linguagem que não implica em discriminação baseada em idade, deficiência, gênero, identidade racial, identidade étnica, orientação sexual, status socioeconômico e interseccionalidade. Pode haver exceções na documentação devido à linguagem codificada nas interfaces de usuário do software do produto, linguagem usada com base na documentação de RFP ou linguagem usada por um produto de terceiros referenciado. Saiba mais sobre como a Cisco está usando a linguagem inclusiva.
A Cisco traduziu este documento com a ajuda de tecnologias de tradução automática e humana para oferecer conteúdo de suporte aos seus usuários no seu próprio idioma, independentemente da localização. Observe que mesmo a melhor tradução automática não será tão precisa quanto as realizadas por um tradutor profissional. A Cisco Systems, Inc. não se responsabiliza pela precisão destas traduções e recomenda que o documento original em inglês (link fornecido) seja sempre consultado.
Este documento descreve o ambiente Flex Virtual Private Network, apresenta seus recursos e explica como configurar cada topologia FlexVPN.
A Cisco recomenda que você tenha conhecimento destes tópicos:
As informações neste documento são baseadas nestas versões de software e hardware:
As informações neste documento foram criadas a partir de dispositivos em um ambiente de laboratório específico. Todos os dispositivos utilizados neste documento foram iniciados com uma configuração (padrão) inicial. Se a rede estiver ativa, certifique-se de que você entenda o impacto potencial de qualquer comando.
O FlexVPN é uma solução VPN versátil e abrangente fornecida pela Cisco, projetada para oferecer uma estrutura unificada para vários tipos de conexões VPN. Desenvolvido com base no protocolo IKEv2 (Internet Key Exchange versão 2), o FlexVPN foi projetado para simplificar a configuração, o gerenciamento e a implantação da VPN, aproveitando um conjunto consistente de ferramentas, os mesmos comandos e etapas de configuração se aplicam a diferentes tipos de VPN (site a site, acesso remoto e assim por diante). Essa consistência ajuda a reduzir erros e torna o processo de implantação mais intuitivo.
O FlexVPN aproveita o IKEv2, que suporta algoritmos criptográficos modernos como AES (Advanced Encryption Standard) e SHA-256 (Secure Hash Algorithm). Esses algoritmos fornecem criptografia forte e integridade de dados, protegendo os dados transmitidos pela VPN contra interceptação ou adulteração.
O IKEv2 oferece mais métodos de autenticação em comparação ao IKEv1. Além da Chave Pré-Compartilhada (PSK) e dos tipos de autenticação híbrida e baseada em certificado, o IKEv2 permite que o respondente utilize o Protocolo de Autenticação Extensível (EAP) para a autenticação do cliente.
No FlexVPN, o EAP é usado para a autenticação do cliente, o roteador atua como um relay, passando mensagens EAP entre o cliente e o servidor EAP de back-end, normalmente um servidor RADIUS. O FlexVPN suporta vários métodos EAP, incluindo EAP-TLS, EAP-PEAP, EAP-PSK e outros, para proteger o processo de autenticação.
A tabela mostra as diferenças entre as funções IKEv1 e IKEv2:
IKEv2 | IKEv1 | |
Mensagens de estabelecimento de protocolo | 4 mensagem | 6 mensagem |
Suporte a EAP | Sim (2 mensagens extras) | No |
Negociação para associações de segurança | 2 mensagens extras | 3 mensagem extra |
Executar sobre UDP 500/4500 | Yes | Yes |
NAT Traversal (NAT-T) | Yes | Yes |
Funções de retransmissão e confirmação | Yes | Yes |
Fornece proteção de identidade, um mecanismo de proteção contra DoS e Perfect Forward Secrecy (PFS) | Yes | Yes |
Suporte a cifras de próxima geração | Yes | No |
A FlexVPN pode ser facilmente expandida de pequenos escritórios para redes de grandes empresas. Isso o torna a escolha ideal para empresas com um número significativo de usuários remotos que exigem acesso seguro e confiável à rede.
Note: O próximo guia fornece mais informações sobre a configuração do balanceamento de carga para a conexão de Hubs.
A funcionalidade de roteamento no FlexVPN foi projetada para aprimorar a escalabilidade e para gerenciar com eficiência várias conexões VPN e permitir uma maneira dinâmica de rotear o tráfego para cada uma delas. Os próximos componentes e mecanismos principais que tornam o roteamento FlexVPN eficiente:
Interface de Modelo Virtual: Este é um modelo de configuração que inclui todas as configurações necessárias para uma conexão VPN, como atribuição de endereço IP, origem do túnel e configurações de IPsec. Nessa interface, é configurado o comandoip unnumbered
para emprestar um endereço IP, normalmente de um loopback, em vez de configurar um endereço IP específico como origem do túnel. Isso permite que o mesmo modelo seja usado por cada spoke, permitindo que cada spoke use seu próprio endereço IP de origem.
Interface de acesso virtual: Essas são interfaces criadas dinamicamente que herdam suas configurações da interface do modelo virtual. Cada vez que uma nova conexão VPN é estabelecida, uma nova interface de acesso virtual é criada com base no modelo virtual. Isso significa que cada sessão VPN tem sua própria interface exclusiva, o que simplifica o gerenciamento e o dimensionamento.
O IKEv2 anuncia rotas permitindo que o servidor FlexVPN envie atributos de rede para o cliente, que instala essas rotas na interface do túnel. O cliente também comunica suas próprias redes ao servidor durante a troca do modo de configuração, permitindo atualizações de rotas em ambas as extremidades.
O NHRP (Next Hop Resolution Protocol) é um protocolo de resolução de endereços dinâmico usado em topologias de hub e spoke para mapear endereços IP públicos para terminais VPN privados. Ele permite que os spokes descubram outros IPs de spokes para comunicação direta.
Uma política de autorização IKEv2 para FlexVPN pode ser configurada para controlar vários aspectos da conexão VPN. Uma política de autorização IKEv2 define a política de autorização local e contém atributos locais e/ou remotos:
Esta tabela fornece uma visão geral dos parâmetros-chave que podem ser configurados sob a política de autorização IKEv2.
Parâmetro | Descrição |
AAA | Integração com servidores AAA para validar credenciais de usuário, autorizar acesso e conta para uso. A política pode especificar se a validação é feita localmente no roteador ou remotamente, por meio de um servidor RADIUS. |
Configuração do Cliente | Envia definições de configuração para o cliente, como valores de tempo limite ocioso, keepalives, atribuição de servidor DNS e WINS, etc. |
Configuração específica do cliente | Permite configurações diferentes para clientes diferentes com base em sua identidade ou associação de grupo. |
Conjunto de rotas | Essa configuração permite que determinado tráfego passe pelo túnel VPN. Isso executa a injeção de rota que é enviada para o cliente VPN em uma conexão bem-sucedida. |
A FlexVPN oferece uma variedade de benefícios que a tornam uma opção atraente para ambientes de rede modernos. Ao fornecer uma estrutura unificada, o FlexVPN simplifica a configuração e o gerenciamento, melhora a segurança, suporta escalabilidade, garante interoperabilidade e reduz a complexidade.
Mapa de Criptografia | DMVPN | FlexVPN | |
Roteamento dinâmico | No | Yes | Yes |
Direto spoke-to-spoke dinâmico | No | Yes | Yes |
VPN de acesso remoto | Yes | No | Yes |
Envio de configuração | No | No | Yes |
Configuração Ponto a Ponto | No | No | Yes |
Qos peer-peer | No | Yes | Yes |
Integração de servidor AAA | No | No | Yes |
O FlexVPN permite a criação de túneis entre dispositivos, estabelecendo a comunicação entre o hub e os spokes. Ele também permite a criação de túneis para comunicação direta entre os spokes e conexão para usuários de VPN de acesso remoto, como mostrado no diagrama.
Diagrama FlexVPN
Note: A configuração da VPN de acesso remoto não é abordada neste guia. Para obter detalhes sobre sua configuração, consulte o guia:
O FlexVPN se caracteriza pela simplicidade de sua configuração. Essa simplicidade é evidente nos blocos de configuração consistentes usados para vários tipos de VPNs. O FlexVPN fornece blocos de configuração diretos que são geralmente aplicáveis, com configurações opcionais ou etapas adicionais disponíveis, dependendo dos recursos ou requisitos específicos da topologia:
Proposta IKEv2: Define os algoritmos usados na negociação da Associação de Segurança (SA) IKEv2. Depois de criada, anexe esta proposta a uma política IKEv2 para que ela seja selecionada durante a negociação.
Política IKEv2: Vincula a proposta a uma instância de Virtual Routing and Forwarding (VRF) ou endereço IP local. O link de política para a proposta IKEv2.
Toque de chave IKEv2: Especifica Chaves pré-compartilhadas (PSKs), que podem ser assimétricas se usadas para autenticação de mesmo nível.
Ponto confiável (opcional): Configura os atributos de identidade e de Autoridade de Certificação (CA) para autenticação de mesmo nível ao usar a infraestrutura de chave pública (PKI) como método de autenticação.
Perfil IKEv2: Armazena parâmetros não negociáveis do SA IKE, como o endereço do par VPN e os métodos de autenticação. Não há perfil IKEv2 padrão, portanto, você deve configurar um e anexá-lo a um perfil IPsec no iniciador. Se a autenticação PSK for usada, o perfil IKEv2 fará referência ao chaveiro IKEv2. Se a autenticação PKI ou o método de autenticação AAA for usado, ele fará referência aqui.
Conjunto de Transformação IPsec: Especifica uma combinação de algoritmos aceitáveis para o SA IPsec.
Perfil IPsec: Consolida as configurações do FlexVPN em um único perfil que pode ser aplicado a uma interface. Este perfil faz referência ao conjunto de transformação IPsec e ao perfil IKEv2.
Note: Os exemplos de configuração utilizam Chaves pré-compartilhadas para fornecer uma demonstração direta da configuração e da simplicidade da FlexVPN. Embora as chaves pré-compartilhadas possam ser empregadas para fácil implantação e pequenas topologias, os métodos AAA ou PKI são mais adequados para topologias maiores.
A topologia site a site do FlexVPN foi projetada para conexões VPN diretas entre dois sites. Cada local é equipado com uma interface de túnel que estabelece um canal seguro sobre o qual o tráfego pode fluir. A configuração explica como estabelecer uma conexão VPN direta entre dois sites, como mostrado no diagrama.
Site_to_Site_Diagram
a. Definir proposta e política de IKEv2.
b. Configure um chaveiro e insira um Pre-Shared Key
que seja usado para autenticar o peer.
c. Crie um IKEv2 profile
e atribua o keyring
.
crypto ikev2 proposal FLEXVPN_PROPOSAL encryption aes-cbc-256 integrity sha256 group 14 ! crypto ikev2 policy FLEXVPN_POLICY proposal FLEXVPN_PROPOSAL
!
crypto ikev2 keyring FLEXVPN_KEYRING
peer FLEVPNPeers
address 192.168.0.20
pre-shared-key local cisco123
pre-shared-key remote cisco123
!
crypto ikev2 profile FLEXVPN_PROFILE
match identity remote address 192.168.0.20
authentication remote pre-share
authentication local pre-share
keyring local FLEXVPN_KEYRING
lifetime 86400
dpd 10 2 on-demand
!
Tip: O recurso IKEv2 Smart Defaults
minimiza a configuração,FlexVPN
cobrindo a maioria dos casos de uso. Você pode personalizar IKEv2 Smart Defaults
para casos de uso específicos, embora a Cisco não recomende essa prática.
d. Crie um Transport Set
e defina os algoritmos de criptografia e hash usados para proteger os dados.
e. Crie um IPsec profile
.
!
crypto ipsec transform-set FLEXVPN_TRANSFORM esp-aes 256 esp-sha-hmac
mode tunnel
!
crypto ipsec profile FLEXVPN_PROFILE
set transform-set FLEXVPN_TRANSFORM
set ikev2-profile FLEXVPN_PROFILE
!
f. Configure a interface do túnel.
!
interface Tunnel0
ip address 10.1.120.10 255.255.255.0
tunnel source GigabitEthernet1
tunnel destination 192.168.0.20
tunnel protection ipsec profile FLEXVPN_PROFILE
!
interface GigabitEthernet1
ip address 192.168.0.10 255.255.255.0
!
g. Configure o roteamento dinâmico para anunciar a interface do túnel. Depois disso, ele pode anunciar outras redes que devem passar pelo túnel.
router eigrp 100
no auto-summary
network 10.1.120.0 0.0.0.255
a. Definir proposta e política de IKEv2.
b. Configure um keyring
e insira um Pre-Shared Key
que seja usado para autenticar o peer.
c. Crie um IKEv2 profile
e atribua o keyring
.
crypto ikev2 proposal FLEXVPN_PROPOSAL encryption aes-cbc-256 integrity sha256 group 14 ! crypto ikev2 policy FLEXVPN_POLICY proposal FLEXVPN_PROPOSAL !
crypto ikev2 keyring FLEXVPN_KEYRING
peer FLEVPNPeers
address 192.168.0.10
pre-shared-key local cisco123
pre-shared-key remote cisco123
!
crypto ikev2 profile FLEXVPN_PROFILE
match identity remote address 192.168.0.10
authentication remote pre-share
authentication local pre-share
keyring local FLEXVPN_KEYRING
lifetime 86400
dpd 10 2 on-demand
!
d. Crie um Transport Set
e defina os algoritmos de criptografia e hash usados para proteger os dados.
e. Crie um IPsec profile
e atribua o perfil IKEv2 e o conjunto de transformações criado anteriormente.
!
crypto ipsec transform-set FLEXVPN_TRANSFORM esp-aes 256 esp-sha-hmac
mode tunnel
!
crypto ipsec profile FLEXVPN_PROFILE
set transform-set FLEXVPN_TRANSFORM
set ikev2-profile FLEXVPN_PROFILE
!
f. Configure o Tunnel interface
.
!
interface Tunnel0
ip address 10.1.120.20 255.255.255.0
tunnel source GigabitEthernet1
tunnel destination 192.168.0.10
tunnel protection ipsec profile FLEXVPN_PROFILE
!
interface GigabitEthernet1
ip address 192.168.0.20 255.255.255.0
!
g. Configure o roteamento dinâmico para anunciar a interface do túnel. Depois disso, ele pode anunciar outras redes que devem passar pelo túnel.
router eigrp 100
no auto-summary
network 10.1.120.0 0.0.0.255
RouterB# show ip interface brief
Interface IP-Address OK? Method Status Protocol
GigabitEthernet1 192.168.0.20 YES NVRAM up up
Tunnel0 10.1.120.11 YES manual up up
RouterB# show crypto ikev2 sa
IPv4 Crypto IKEv2 SA
Tunnel-id Local Remote fvrf/ivrf Status
2 192.168.0.20/500 192.168.0.10/500 none/none READY
Encr: AES-CBC, keysize: 256, PRF: SHA256, Hash: SHA256, DH Grp:14, Auth sign: PSK, Auth verify: PSK
Life/Active Time: 86400/3139 sec
IPv6 Crypto IKEv2 SA
RouterB# show crypto ipsec sa
interface: Tunnel0
Crypto map tag: Tunnel0-head-0, local addr 192.168.0.20
protected vrf: (none)
local ident (addr/mask/prot/port): (192.168.0.20/255.255.255.255/47/0)
remote ident (addr/mask/prot/port): (192.168.0.10/255.255.255.255/47/0)
current_peer 192.168.0.10 port 500
PERMIT, flags={origin_is_acl,}
#pkts encaps: 669, #pkts encrypt: 669, #pkts digest: 669
#pkts decaps: 668, #pkts decrypt: 668, #pkts verify: 668
#pkts compressed: 0, #pkts decompressed: 0
#pkts not compressed: 0, #pkts compr. failed: 0
#pkts not decompressed: 0, #pkts decompress failed: 0
#send errors 0, #recv errors 0
local crypto endpt.: 192.168.0.20, remote crypto endpt.: 192.168.0.10
plaintext mtu 1438, path mtu 1500, ip mtu 1500, ip mtu idb GigabitEthernet1
current outbound spi: 0x93DCB8AE(2480715950)
PFS (Y/N): N, DH group: none
inbound esp sas:
spi: 0x89C141EB(2311143915)
transform: esp-256-aes esp-sha-hmac ,
in use settings ={Tunnel, }
conn id: 5578, flow_id: CSR:3578, sibling_flags FFFFFFFF80000048, crypto map: Tunnel0-head-0
sa timing: remaining key lifetime (k/sec): (4607913/520)
IV size: 16 bytes
replay detection support: Y
Status: ACTIVE(ACTIVE)
inbound ah sas:
inbound pcp sas:
outbound esp sas:
spi: 0x93DCB8AE(2480715950)
transform: esp-256-aes esp-sha-hmac ,
in use settings ={Tunnel, }
conn id: 5577, flow_id: CSR:3577, sibling_flags FFFFFFFF80000048, crypto map: Tunnel0-head-0
sa timing: remaining key lifetime (k/sec): (4607991/3137)
IV size: 16 bytes
replay detection support: Y
Status: ACTIVE(ACTIVE)
outbound ah sas:
outbound pcp sas:
RouterB#show ip eigrp neighbors
EIGRP-IPv4 Neighbors for AS(100)
H Address Interface Hold Uptime SRTT RTO Q Seq
(sec) (ms) Cnt Num
0 10.1.120.10 Tu0 13 00:51:26 3 1470 0 2
Na topologia hub-and-spoke, vários roteadores spoke se conectam a um roteador de hub central. Essa configuração é ideal para cenários em que os spokes se comunicam principalmente com o hub. No FlexVPN, os túneis dinâmicos podem ser configurados para melhorar a eficiência da comunicação. O hub emprega o roteamento IKEv2 para distribuir rotas para roteadores spoke, garantindo conectividade contínua. Como é referenciado no diagrama, a configuração explica a conexão VPN entre um Hub e Spoke e como o Hub é configurado para estabelecer conexão dinâmica com vários Spokes e é capaz de adicionar mais Spokes.
Diagrama_Hub_and_Spoke
a. Definir proposta e política de IKEv2.
b. Configure um keyring
e insira um Pre-Shared Key
que seja usado para autenticar os spokes.
crypto ikev2 proposal FLEXVPN_PROPOSAL encryption aes-cbc-256 integrity sha256 group 14 ! crypto ikev2 policy FLEXVPN_POLICY proposal FLEXVPN_PROPOSAL !
crypto ikev2 keyring FLEXVPN_KEYRING
peer FLEVPNPeers
address 0.0.0.0 0.0.0.0
pre-shared-key local cisco123
pre-shared-key remote cisco123
!
c. Ative os serviços AAA no roteador Hub e, em seguida, defina uma lista de autorização de rede denominadaFlexAuth
que especifique as políticas da configuração do dispositivo local.
!
aaa new-model
aaa authorization network FlexAuth local
!
d. Defina umIP address pool
nomeadoFlexPool
, que contenha os endereços de 10.1.1.2 a 10.1.1.254. Esse pool é usado para atribuir automaticamente um endereço IP à interface de túnel dos spokes.
!
ip local pool FlexPool 10.1.1.2 10.1.1.254
!
e. Defina uma lista de acesso IP padrão que seja nomeadaFlexTraffic
e permita que a rede 10.10.1.0/24. Essa ACL define as redes que são enviadas aos spokes FlexVPN para acessá-las através do túnel.
!
ip access-list standard FlexTraffic
permit 10.10.1.0 0.0.0.255
!
A lista de acesso e o pool de endereços IP são mencionados no IKEv2 Authorization Policy
.
!
crypto ikev2 authorization policy HUBPolicy
pool FlexPool
route set interface
route set access-list FlexTraffic
!
f. Crie um IKEv2 profile
, atribua o grupo de autorização keyring
e AAA.
!
crypto ikev2 profile FLEXVPN_PROFILE
match identity remote address 0.0.0.0
authentication remote pre-share
authentication local pre-share
keyring local FLEXVPN_KEYRING
aaa authorization group psk list FlexAuth HUBPolicy
virtual-template 1
!
g. Crie um Transport Set
, defina os algoritmos de criptografia e hash usados para proteger os dados.
h. Crie um IPsec profile
, atribua o IKEv2 profile
e o Transport Set
criado anteriormente.
!
crypto ipsec transform-set FLEXVPN_TRANSFORM esp-aes 256 esp-sha-hmac
mode tunnel
!
crypto ipsec profile FLEXVPN_PROFILE
set transform-set FLEXVPN_TRANSFORM
set ikev2-profile FLEXVPN_PROFILE
!
i. Configure o virtual-template 1 as type tunnel
. Faça referência à interface como umIP unnumbered address
e aplique o IPsec profile
!
interface virtual-template 1 type tunnel
ip unnumbered loopback1
tunnel protection ipsec profile FLEXVPN_PROFILE
!
interface Loopback1
ip address 10.1.1.1 255.255.255.255
!
a. Definir proposta e política de IKEv2.
b. Configure um chaveiro e insira uma chave pré-compartilhada que é usada para autenticar no hub.
crypto ikev2 proposal FLEXVPN_PROPOSAL encryption aes-cbc-256 integrity sha256 group 14 ! crypto ikev2 policy FLEXVPN_POLICY proposal FLEXVPN_PROPOSAL !
crypto ikev2 keyring FLEXVPN_KEYRING
peer FLEVPNPeers
address 0.0.0.0 0.0.0.0
pre-shared-key local cisco123
pre-shared-key remote cisco123
!
c. Ative os serviços AAA no roteador Hub e defina uma lista de autorização de rede nomeada FlexAuth
que especifique as políticas da configuração do dispositivo local. Em seguida, configure a política de configuração do modo para enviar o endereço IP e as rotas para os spokes FlexVPN.
!
aaa new-model
aaa authorization network FlexAuth local
!
d. Defina uma lista de acesso IP padrão que seja nomeada FlexTraffic
e permita que a rede 10.20.2.0/24. Essa ACL define as redes que são compartilhadas por esse spoke passem pelo túnel.
!
ip access-list standard FlexTraffic
permit 10.20.2.0 0.0.0.255
!
A lista de acesso é atribuída no IKEv2 Authorization Policy
.
!
crypto ikev2 authorization policy SpokePolicy
route set interface
route set access-list FlexTraffic
!
e. Crie um IKEv2 profile
, atribua o grupo de autorização keyring
e AAA.
!
crypto ikev2 profile FLEXVPN_PROFILE
match identity remote address 0.0.0.0
authentication remote pre-share
authentication local pre-share
keyring local FLEXVPN_KEYRING
aaa authorization group psk list FlexAuth SpokePolicy
!
f. Crie um conjunto de transporte e defina os algoritmos de criptografia e hash usados para proteger os dados.
g. Crie um perfil IPsec, atribua o perfil IKEv2 e o conjunto de transporte criado anteriormente.
!
crypto ipsec transform-set FLEXVPN_TRANSFORM esp-aes 256 esp-sha-hmac
mode tunnel
!
crypto ipsec profile FLEXVPN_PROFILE
set transform-set FLEXVPN_TRANSFORM
set ikev2-profile FLEXVPN_PROFILE
!
h. Configure a interface túnel com a propriedade de endereço IP negociado, que é obtida do pool que ele configurou no hub.
!
interface tunnel 0
ip address negotiated
tunnel source GigabitEthernet1
tunnel destination 192.168.0.10
tunnel protection ipsec profile FLEXVPN_PROFILE
!
interface GigabitEthernet1
ip address 192.168.0.20 255.255.255.0
!
Use o comando show ip interface brief para revisar o status do túnel, do modelo virtual e do acesso virtual:
FlexVPN_HUB#show ip interface brief
Interface IP-Address OK? Method Status Protocol
GigabitEthernet1 192.168.0.10 YES NVRAM up up
GigabitEthernet2 10.10.1.10 YES manual up up
Loopback1 10.1.1.1 YES manual up up
Virtual-Access1 10.1.1.1 YES unset up up <<<<<<< This Virtual-Access has been created and is up/up
Virtual-Template1 10.1.1.1 YES unset up
FlexVPN_Spoke#show ip interface brief
Interface IP-Address OK? Method Status Protocol
GigabitEthernet1 192.168.0.20 YES NVRAM up up
GigabitEthernet2 10.20.2.20 YES manual up up
Tunnel0 10.1.1.8 YES manual up up <<<<<< The tunnel interface received an IP address from pool defined
FlexVPN_HUB#show crypto ikev2 sa
IPv4 Crypto IKEv2 SA
Tunnel-id Local Remote fvrf/ivrf Status
1 192.168.0.10/500 192.168.0.20/500 none/none READY
Encr: AES-CBC, keysize: 256, PRF: SHA256, Hash: SHA256, DH Grp:14, Auth sign: PSK, Auth verify: PSK
Life/Active Time: 86400/587 sec
IPv6 Crypto IKEv2 SA
FlexVPN_HUB#show crypto ipsec sa
interface: Virtual-Access1
Crypto map tag: Virtual-Access1-head-0, local addr 192.168.0.10
protected vrf: (none)
local ident (addr/mask/prot/port): (192.168.0.10/255.255.255.255/47/0)
remote ident (addr/mask/prot/port): (192.168.0.20/255.255.255.255/47/0)
current_peer 192.168.0.20 port 500
PERMIT, flags={origin_is_acl,}
#pkts encaps: 10, #pkts encrypt: 10, #pkts digest: 10
#pkts decaps: 10, #pkts decrypt: 10, #pkts verify: 10
#pkts compressed: 0, #pkts decompressed: 0
#pkts not compressed: 0, #pkts compr. failed: 0
#pkts not decompressed: 0, #pkts decompress failed: 0
#send errors 0, #recv errors 0
local crypto endpt.: 192.168.0.10, remote crypto endpt.: 192.168.0.20
plaintext mtu 1438, path mtu 1500, ip mtu 1500, ip mtu idb GigabitEthernet1
current outbound spi: 0xAFC2F841(2948790337)
PFS (Y/N): N, DH group: none
inbound esp sas:
spi: 0x7E780336(2121794358)
transform: esp-256-aes esp-sha-hmac ,
in use settings ={Tunnel, }
conn id: 5581, flow_id: CSR:3581, sibling_flags FFFFFFFF80000048, crypto map: Virtual-Access1-head-0
sa timing: remaining key lifetime (k/sec): (4607998/3010)
IV size: 16 bytes
replay detection support: Y
Status: ACTIVE(ACTIVE)
inbound ah sas:
inbound pcp sas:
outbound esp sas:
spi: 0xAFC2F841(2948790337)
transform: esp-256-aes esp-sha-hmac ,
in use settings ={Tunnel, }
conn id: 5582, flow_id: CSR:3582, sibling_flags FFFFFFFF80000048, crypto map: Virtual-Access1-head-0
sa timing: remaining key lifetime (k/sec): (4607998/3010)
IV size: 16 bytes
replay detection support: Y
Status: ACTIVE(ACTIVE)
outbound ah sas:
outbound pcp sas:
FlexVPN_Spoke#show ip route
<<< Omitted >>>
Gateway of last resort is 192.168.0.1 to network 0.0.0.0
S* 0.0.0.0/0 [1/0] via 192.168.0.1
10.0.0.0/8 is variably subnetted, 4 subnets, 2 masks
S 10.1.1.1/32 is directly connected, Tunnel0 <<<<<<<
C 10.1.1.8/32 is directly connected, Tunnel0
S 10.10.1.0/24 is directly connected, Tunnel0 <<<<<<<
C 10.20.2.20/32 is directly connected, GigabitEthernet2
192.168.0.0/24 is variably subnetted, 2 subnets, 2 masks
C 192.168.0.0/24 is directly connected, GigabitEthernet1
L 192.168.0.20/32 is directly connected, GigabitEthernet1
FlexVPN_HUB#ping 10.20.2.20
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 10.20.2.20, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 1/1/1 ms
FlexVPN_Spoke#ping 10.10.1.10
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 10.10.1.10, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 1/1/2 ms
A FlexVPN em uma topologia Hub and Spoke com conectividade Spoke to Spoke permite comunicação VPN dinâmica, escalável e segura. O hub atua como um ponto de controle centralizado onde o NHRP permite que os spokes consultem o hub quanto a outros endereços IP de spokes, permitindo túneis IPsec de spoke a spoke para comunicação eficiente e latência reduzida.
ip nhrp redirect
No hub, o comando é usado para notificar os spokes de que a comunicação direta entre spoke e spoke é possível, otimizando o fluxo de tráfego, ignorando o hub para o tráfego do plano de dados. ip nhrp shortcut
Nos spokes, o comando permite que eles estabeleçam dinamicamente túneis diretos com outros spokes após receberem o redirecionamento do hub. O diagrama faz referência ao tráfego entre o hub e o spoke e a comunicação spoke para spoke.
Spoke_to_Spoke_Diagram
a. Defina políticas e perfis de IKEv2.
b. Configure um keyring
e insira um Pre-Shared Key
que seja usado para autenticar os spokes.
crypto ikev2 proposal FLEXVPN_PROPOSAL encryption aes-cbc-256 integrity sha256 group 14 ! crypto ikev2 policy FLEXVPN_POLICY proposal FLEXVPN_PROPOSAL !
crypto ikev2 keyring FLEXVPN_KEYRING
peer FLEVPNPeers
address 0.0.0.0 0.0.0.0
pre-shared-key local cisco123
pre-shared-key remote cisco123
!
c. Ative os serviços AAA no roteador Hub, defina uma lista de autorização de rede nomeada FlexAuth
que especifique políticas da configuração do dispositivo local e configure a política de configuração do modo para enviar o endereço IP e as rotas para os spokes FlexVPN.
!
aaa new-model
aaa authorization network FlexAuth local
!
d. Defina umIP address pool
nome FlexPool,
que contenha os endereços 10.1.1.2 a 10.1.1.254. Esse pool é usado para atribuir automaticamente um endereço IP à interface de túnel dos spokes.
!
ip local pool FlexPool 10.1.1.2 10.1.1.254
!
e. Defina uma lista de acesso IP padrão que seja nomeadaFlexTraffic
e permita a rede 10.0.0.0/8. Essa ACL define as redes que são enviadas aos spokes FlexVPN, incluindo as redes para outros spokes conectados ao Hub, para que os spokes saibam que essas redes são alcançadas primeiro pelo Hub.
!
ip access-list standard FlexTraffic
permit 10.0.0.0 0.255.255.255
!
As listas de acesso e IP address pool
os são atribuídos no IKEv2 Authorization Policy
.
!
crypto ikev2 authorization policy HUBPolicy
pool FlexPool
route set interface
route set access-list FlexTraffic
!
f. Crie um IKEv2 profile
, atribua o grupo de autorização keyring
e AAA.
!
crypto ikev2 profile FLEXVPN_PROFILE
match identity remote address 0.0.0.0
authentication remote pre-share
authentication local pre-share
keyring local FLEXVPN_KEYRING
aaa authorization group psk list FlexAuth HUBPolicy
virtual-template 1
!
g. Crie um Transport Set
e defina os algoritmos de criptografia e hash usados para proteger os dados.
h. Crie um IPsec profile
, atribua o IKEv2 profile
e o Transport Set
criado anteriormente.
!
crypto ipsec transform-set FLEXVPN_TRANSFORM esp-aes 256 esp-sha-hmac
mode tunnel
!
crypto ipsec profile FLEXVPN_PROFILE
set transform-set FLEXVPN_TRANSFORM
set ikev2-profile FLEXVPN_PROFILE
!
i. Configure o virtual-template 1 as type tunnel
. Faça referência à interface como um IP unnumbered address
e aplique o IPsec profile
.
O comando ip nhrp redirect
é configurado no Modelo virtual para informar aos spokes para estabelecer uma conexão direta com outros spokes para acessar suas redes.
!
interface virtual-template 1 type tunnel
ip unnumbered loopback1
ip nhrp network-id 1
ip nhrp redirect
tunnel protection ipsec profile FLEXVPN_PROFILE
!
interface Loopback1
ip address 10.1.1.1 255.255.255.255
!
a. Defina políticas e perfis de IKEv2.
b. Configure um keyring
e insira um Pre-Shared Key
que seja usado para autenticar os spokes.
crypto ikev2 proposal FLEXVPN_PROPOSAL encryption aes-cbc-256 integrity sha256 group 14 ! crypto ikev2 policy FLEXVPN_POLICY proposal FLEXVPN_PROPOSAL !
crypto ikev2 keyring FLEXVPN_KEYRING
peer FLEVPNPeers
address 0.0.0.0 0.0.0.0
pre-shared-key local cisco123
pre-shared-key remote cisco123
!
c. Ative os serviços AAA no roteador Hub e defina uma lista de autorização de rede nomeada FlexAuth
que especifique as políticas da configuração do dispositivo local. Em seguida, configure a política de configuração do modo para enviar o endereço IP e as rotas para os spokes FlexVPN.
!
aaa new-model
aaa authorization network FlexAuth local
!
d. Defina uma lista de acesso IP padrão que seja nomeada FlexTraffic
e permita que a rede 10.20.2.0/24. Essa ACL define as redes que são compartilhadas por esse spoke passem pelo túnel.
!
ip access-list standard FlexTraffic
permit 10.20.2.0 0.0.0.255
!
A lista de acesso é atribuída na IKEv2 Authorization Policy.
!
crypto ikev2 authorization policy SpokePolicy
route set interface
route set access-list FlexTraffic
!
e. Crie um IKEv2 profile
, atribua o grupo de autorização keyring
e AAA.
!
crypto ikev2 profile FLEXVPN_PROFILE
match identity remote address 0.0.0.0
authentication remote pre-share
authentication local pre-share
keyring local FLEXVPN_KEYRING
aaa authorization group psk list FlexAuth SpokePolicy
virtual-template 1
!
f. Crie um Transport Set
e defina os algoritmos de criptografia e hash usados para proteger os dados.
g. Crie um perfil IPsec, atribua o perfil IKEv2 e o conjunto de transporte criado anteriormente.
!
crypto ipsec transform-set FLEXVPN_TRANSFORM esp-aes 256 esp-sha-hmac
mode tunnel
!
crypto ipsec profile FLEXVPN_PROFILE
set transform-set FLEXVPN_TRANSFORM
set ikev2-profile FLEXVPN_PROFILE
!
h. Configure a interface de túnel e o modelo virtual. Especifique Virtual-Template1
para dVTIs que são criados para oferecer suporte a NHRP shortcuts
. Além disso, definatunnel0
como um endereço não numerado novirtual-template
.
O ip nhrp shortcut
comando é configurado nos Spokes para permitir que eles estabeleçam dinamicamente túneis diretos para outros spokes com base nas mensagens de redirecionamento NHRP do hub.
!
interface tunnel 0
ip address negotiated
ip nhrp network-id 1
ip nhrp shortcut virtual-template 1
tunnel source GigabitEthernet1
tunnel destination 192.168.0.10
tunnel protection ipsec profile FLEXVPN_PROFILE
!
interface virtual-template 1 type tunnel
ip unnumbered tunnel0
ip nhrp network-id 1
ip nhrp shortcut virtual-template 1
tunnel source GigabitEthernet1
tunnel protection ipsec profile FLEXVPN_PROFILE
!
interface GigabitEthernet1
ip address 192.168.0.20 255.255.255.0
!
a. Defina políticas e perfis de IKEv2.
b. Configure um keyring
e insira um Pre-Shared Key
que seja usado para autenticar os spokes.
crypto ikev2 proposal FLEXVPN_PROPOSAL encryption aes-cbc-256 integrity sha256 group 14 ! crypto ikev2 policy FLEXVPN_POLICY proposal FLEXVPN_PROPOSAL !
crypto ikev2 keyring FLEXVPN_KEYRING
peer FLEVPNPeers
address 0.0.0.0 0.0.0.0
pre-shared-key local cisco123
pre-shared-key remote cisco123
!
c. Ative os serviços AAA no roteador Hub, defina uma lista de autorização de rede nomeada FlexAuth
que especifique políticas da configuração do dispositivo local e configure a política de configuração do modo para enviar o endereço IP e as rotas para os spokes FlexVPN.
!
aaa new-model
aaa authorization network FlexAuth local
!
d. Defina uma lista de acesso IP padrão nomeada FlexTraffic
e que permita que a rede 10.30.3.0/24. Essa ACL define as redes que são compartilhadas por esse spoke passem pelo túnel.
!
ip access-list standard FlexTraffic
permit 10.30.3.0 0.0.0.255
!
A lista de acesso é referenciada no IKEv2 Authorization Policy.
!
crypto ikev2 authorization policy SpokePolicy
route set interface
route set access-list FlexTraffic
!
e. Crie um IKEv2 profile
, atribua o grupo de autorização keyring
e AAA.
!
crypto ikev2 profile FLEXVPN_PROFILE
match identity remote address 0.0.0.0
authentication remote pre-share
authentication local pre-share
keyring local FLEXVPN_KEYRING
aaa authorization group psk list FlexAuth SpokePolicy
virtual-template 1
!
f. Crie um Transport Set
e defina os algoritmos de criptografia e hash usados para proteger os dados.
g. Crie um IPsec profile
, atribua o IKEv2 profile
e o Transport Set
criado anteriormente.
!
crypto ipsec transform-set FLEXVPN_TRANSFORM esp-aes 256 esp-sha-hmac
mode tunnel
!
crypto ipsec profile FLEXVPN_PROFILE
set transform-set FLEXVPN_TRANSFORM
set ikev2-profile FLEXVPN_PROFILE
!
h. Configure o tunnel interface
e o virtual template
. Especifique Virtual-Template1
para dVTIs que são criados para oferecer suporte a NHRP shortcuts
. Além disso, definatunnel0
como um endereço não numerado novirtual-template
.
O ip nhrp shortcut
comando é configurado nos Spokes para permitir que eles estabeleçam dinamicamente túneis diretos para outros spokes com base nas mensagens de redirecionamento NHRP do hub.
!
interface tunnel 0
ip address negotiated
ip nhrp network-id 1
ip nhrp shortcut virtual-template 1
tunnel source GigabitEthernet1
tunnel destination 192.168.0.10
tunnel protection ipsec profile FLEXVPN_PROFILE
!
interface virtual-template 1 type tunnel
ip unnumbered tunnel0
ip nhrp network-id 1
ip nhrp shortcut virtual-template 1
tunnel source GigabitEthernet1
tunnel protection ipsec profile FLEXVPN_PROFILE
!
interface GigabitEthernet1
ip address 192.168.0.30 255.255.255.0
!
Use o comando show ip interface brief para revisar o status do túnel, do modelo virtual e do acesso virtual. Agora, é uma conexão direta de spoke para spoke:
FlexVPN_Spoke#show ip interface brief
Interface IP-Address OK? Method Status Protocol
GigabitEthernet1 192.168.0.30 YES NVRAM up up
GigabitEthernet2 10.20.2.20 YES manual up up
Tunnel0 10.1.1.12 YES manual up up
Virtual-Access1 10.1.1.12 YES unset up up
Virtual-Template1 10.1.1.12 YES unset up down
FlexVPN_Spoke#show ip nhrp
10.1.1.10/32 via 10.1.1.10
Virtual-Access1 created 00:00:13, expire 00:09:46
Type: dynamic, Flags: router nhop rib nho
NBMA address: 192.168.0.30
10.30.3.0/24 via 10.1.1.10
Virtual-Access1 created 00:00:13, expire 00:09:46
Type: dynamic, Flags: router rib nho
NBMA address: 192.168.0.30
Use o comando show ip route para verificar se as rotas foram enviadas para o spoke:
FlexVPN_Spoke#sh ip route
<<<< Omitted >>>>
Gateway of last resort is 192.168.0.1 to network 0.0.0.0
S* 0.0.0.0/0 [1/0] via 192.168.0.1
10.0.0.0/8 is variably subnetted, 6 subnets, 3 masks
S 10.0.0.0/8 is directly connected, Tunnel0
S 10.1.1.1/32 is directly connected, Tunnel0
S % 10.1.1.10/32 is directly connected, Virtual-Access1
C 10.1.1.12/32 is directly connected, Tunnel0
C 10.20.2.20/32 is directly connected, GigabitEthernet2
S % 10.30.3.0/24 is directly connected, Virtual-Access1
192.168.0.0/24 is variably subnetted, 2 subnets, 2 masks
C 192.168.0.0/24 is directly connected, GigabitEthernet1
L 192.168.0.30/32 is directly connected, GigabitEthernet1
FlexVPN_Spoke#ping 10.30.3.30
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 10.30.3.30, timeout is 2 seconds:
.!!!!
Success rate is 80 percent (4/5), round-trip min/avg/max = 1/1/1 ms
Esta seção fornece informações que podem ser usadas para o troubleshooting da sua configuração. Use estes comandos para depurar o processo de negociação do túnel:
debug crypto interface
debug crypto ikev2 debug crypto ikev2 client flexvpn
debug crypto ikev2 error
debug crypto ikev2 internal
debug crypto ikev2 packet
debug crypto ipsec
debug crypto ipsec error
debug crypto ipsec message
debug crypto ipsec states
As depurações de NHRP podem ajudar na solução de problemas das conexões spoke-to-spoke.
debug nhrp
debug nhrp detail
debug nhrp event
debug nhrp error
debug nhrp packet
debug nhrp routing
Revisão | Data de publicação | Comentários |
---|---|---|
1.0 |
01-Aug-2025 |
Versão inicial |