Check Vti To Vti

These scenarios show how to configure and route traffic via VTI (Virtual Tunnel Interface) devices.

../../../_images/vtivti.svg

Test VTI Responder To VTI

Description

A VTI device is configured in each end-point. DUT1 acts as an initiator and DUT0 as a responder.

Scenario

Step 1: Set the following configuration in DUT0:

set vpn ipsec site-to-site peer PEER connection-type respond
set interfaces vti vti0 ipsec PEER
set protocols static route 0.0.0.0/0 interface vti0
set vpn ipsec esp-group CHILD-SA proposal 1 encryption aes256gcm128
set vpn ipsec esp-group CHILD-SA proposal 1 pfs dh-group19
set vpn ipsec ike-group IKE-SA key-exchange ikev2
set vpn ipsec ike-group IKE-SA proposal 1 dh-group 19
set vpn ipsec ike-group IKE-SA proposal 1 encryption aes256gcm128
set vpn ipsec ike-group IKE-SA proposal 1 hash sha256
set vpn ipsec site-to-site peer PEER auth-profile AUTH-SA
set vpn ipsec site-to-site peer PEER default-esp-group CHILD-SA
set vpn ipsec site-to-site peer PEER ike-group IKE-SA
set vpn ipsec site-to-site peer PEER vti
set vpn ipsec auth-profile AUTH-SA local auth pre-shared-secret test
set interfaces ethernet eth0 address 60.0.0.10/24
set interfaces ethernet eth1 address 192.168.10.1/24
set vpn ipsec site-to-site peer PEER remote-address 60.0.0.20
set vpn ipsec site-to-site peer PEER local-address 60.0.0.10

Step 2: Set the following configuration in DUT1:

set interfaces vti vti0 ipsec PEER
set protocols static route 0.0.0.0/0 interface vti0
set vpn ipsec esp-group CHILD-SA proposal 1 encryption aes256gcm128
set vpn ipsec esp-group CHILD-SA proposal 1 pfs dh-group19
set vpn ipsec ike-group IKE-SA key-exchange ikev2
set vpn ipsec ike-group IKE-SA proposal 1 dh-group 19
set vpn ipsec ike-group IKE-SA proposal 1 encryption aes256gcm128
set vpn ipsec ike-group IKE-SA proposal 1 hash sha256
set vpn ipsec site-to-site peer PEER auth-profile AUTH-SA
set vpn ipsec site-to-site peer PEER default-esp-group CHILD-SA
set vpn ipsec site-to-site peer PEER ike-group IKE-SA
set vpn ipsec site-to-site peer PEER vti
set vpn ipsec auth-profile AUTH-SA local auth pre-shared-secret test
set interfaces ethernet eth0 address 60.0.0.20/24
set interfaces ethernet eth1 address 192.168.20.1/24
set vpn ipsec site-to-site peer PEER local-address 60.0.0.20
set vpn ipsec site-to-site peer PEER remote-address 60.0.0.10
set vpn ipsec site-to-site peer PEER connection-type initiate

Step 3: Ping IP address 60.0.0.20 from DUT0:

admin@DUT0$ ping 60.0.0.20 count 1 size 56 timeout 1
Show output
PING 60.0.0.20 (60.0.0.20) 56(84) bytes of data.
64 bytes from 60.0.0.20: icmp_seq=1 ttl=64 time=0.294 ms

--- 60.0.0.20 ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 0.294/0.294/0.294/0.000 ms

Step 4: Run command vpn ipsec show sa at DUT0 and check if output contains the following tokens:

ESTABLISHED
Show output
vpn-peer-PEER: #1, ESTABLISHED, IKEv2, 5a5c9f00f6392c5b_i 7c13a24cd9ea0a6b_r*
  local  '60.0.0.10' @ 60.0.0.10[500]
  remote '60.0.0.20' @ 60.0.0.20[500]
  AES_GCM_16-256/PRF_HMAC_SHA2_256/ECP_256
  established 1s ago, rekeying in 21876s
  peer-PEER-tunnel-VTI: #1, reqid 1, INSTALLED, TUNNEL, ESP:AES_GCM_16-256
    installed 1s ago, rekeying in 3479s, expires in 3959s
    in  c7c0eddf (0x90000000),      0 bytes,     0 packets
    out ce84fa64 (0x90000000),      0 bytes,     0 packets
    local  0.0.0.0/0
    remote 0.0.0.0/0

Step 5: Ping IP address 192.168.10.1 from DUT1:

admin@DUT1$ ping 192.168.10.1 local-address 192.168.20.1 count 1 size 56 timeout 1
Show output
PING 192.168.10.1 (192.168.10.1) from 192.168.20.1 : 56(84) bytes of data.
64 bytes from 192.168.10.1: icmp_seq=1 ttl=64 time=0.434 ms

--- 192.168.10.1 ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 0.434/0.434/0.434/0.000 ms

Step 6: Run command vpn ipsec show sa at DUT0 and check if output matches the following regular expressions:

,\s+[^0] packets
Show output
vpn-peer-PEER: #1, ESTABLISHED, IKEv2, 5a5c9f00f6392c5b_i 7c13a24cd9ea0a6b_r*
  local  '60.0.0.10' @ 60.0.0.10[500]
  remote '60.0.0.20' @ 60.0.0.20[500]
  AES_GCM_16-256/PRF_HMAC_SHA2_256/ECP_256
  established 1s ago, rekeying in 21876s
  peer-PEER-tunnel-VTI: #1, reqid 1, INSTALLED, TUNNEL, ESP:AES_GCM_16-256
    installed 1s ago, rekeying in 3479s, expires in 3959s
    in  c7c0eddf (0x90000000),     84 bytes,     1 packets,     0s ago
    out ce84fa64 (0x90000000),     84 bytes,     1 packets,     0s ago
    local  0.0.0.0/0
    remote 0.0.0.0/0

Test VTI On-Demand To VTI

Description

A VTI device is configured in each end-point. In this scenario, DUT0 is configured to only set the tunnel up when the first plaintext IP payload needs to go through the vti tunnel.

Scenario

Step 1: Set the following configuration in DUT0:

set vpn ipsec site-to-site peer PEER connection-type on-demand
set interfaces vti vti0 ipsec PEER
set protocols static route 0.0.0.0/0 interface vti0
set vpn ipsec esp-group CHILD-SA proposal 1 encryption aes256gcm128
set vpn ipsec esp-group CHILD-SA proposal 1 pfs dh-group19
set vpn ipsec ike-group IKE-SA key-exchange ikev2
set vpn ipsec ike-group IKE-SA proposal 1 dh-group 19
set vpn ipsec ike-group IKE-SA proposal 1 encryption aes256gcm128
set vpn ipsec ike-group IKE-SA proposal 1 hash sha256
set vpn ipsec site-to-site peer PEER auth-profile AUTH-SA
set vpn ipsec site-to-site peer PEER default-esp-group CHILD-SA
set vpn ipsec site-to-site peer PEER ike-group IKE-SA
set vpn ipsec site-to-site peer PEER vti
set vpn ipsec auth-profile AUTH-SA local auth pre-shared-secret test
set interfaces ethernet eth0 address 60.0.0.10/24
set interfaces ethernet eth1 address 192.168.10.1/24
set vpn ipsec site-to-site peer PEER remote-address 60.0.0.20
set vpn ipsec site-to-site peer PEER local-address 60.0.0.10

Step 2: Set the following configuration in DUT1:

set interfaces vti vti0 ipsec PEER
set protocols static route 0.0.0.0/0 interface vti0
set vpn ipsec esp-group CHILD-SA proposal 1 encryption aes256gcm128
set vpn ipsec esp-group CHILD-SA proposal 1 pfs dh-group19
set vpn ipsec ike-group IKE-SA key-exchange ikev2
set vpn ipsec ike-group IKE-SA proposal 1 dh-group 19
set vpn ipsec ike-group IKE-SA proposal 1 encryption aes256gcm128
set vpn ipsec ike-group IKE-SA proposal 1 hash sha256
set vpn ipsec site-to-site peer PEER auth-profile AUTH-SA
set vpn ipsec site-to-site peer PEER default-esp-group CHILD-SA
set vpn ipsec site-to-site peer PEER ike-group IKE-SA
set vpn ipsec site-to-site peer PEER vti
set vpn ipsec auth-profile AUTH-SA local auth pre-shared-secret test
set interfaces ethernet eth0 address 60.0.0.20/24
set interfaces ethernet eth1 address 192.168.20.1/24
set vpn ipsec site-to-site peer PEER local-address 60.0.0.20
set vpn ipsec site-to-site peer PEER remote-address 60.0.0.10
set vpn ipsec site-to-site peer PEER connection-type initiate

Step 3: Ping IP address 60.0.0.20 from DUT0:

admin@DUT0$ ping 60.0.0.20 count 1 size 56 timeout 1
Show output
PING 60.0.0.20 (60.0.0.20) 56(84) bytes of data.
64 bytes from 60.0.0.20: icmp_seq=1 ttl=64 time=0.367 ms

--- 60.0.0.20 ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 0.367/0.367/0.367/0.000 ms

Step 4: Run command vpn ipsec show sa at DUT0 and check if output contains the following tokens:

ESTABLISHED
Show output
vpn-peer-PEER: #1, ESTABLISHED, IKEv2, 3a7935821094237e_i c9c88b4dd508cf10_r*
  local  '60.0.0.10' @ 60.0.0.10[500]
  remote '60.0.0.20' @ 60.0.0.20[500]
  AES_GCM_16-256/PRF_HMAC_SHA2_256/ECP_256
  established 0s ago, rekeying in 21299s
  peer-PEER-tunnel-VTI: #2, reqid 1, INSTALLED, TUNNEL, ESP:AES_GCM_16-256
    installed 0s ago, rekeying in 3245s, expires in 3960s
    in  c200f8d2 (0x90000000),      0 bytes,     0 packets
    out c5426c45 (0x90000000),      0 bytes,     0 packets
    local  0.0.0.0/0
    remote 0.0.0.0/0

Step 5: Ping IP address 192.168.10.1 from DUT1:

admin@DUT1$ ping 192.168.10.1 local-address 192.168.20.1 count 1 size 56 timeout 1
Show output
PING 192.168.10.1 (192.168.10.1) from 192.168.20.1 : 56(84) bytes of data.
64 bytes from 192.168.10.1: icmp_seq=1 ttl=64 time=0.432 ms

--- 192.168.10.1 ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 0.432/0.432/0.432/0.000 ms

Step 6: Ping IP address 192.168.20.1 from DUT0:

admin@DUT0$ ping 192.168.20.1 local-address 192.168.10.1 count 1 size 56 timeout 1
Show output
PING 192.168.20.1 (192.168.20.1) from 192.168.10.1 : 56(84) bytes of data.
64 bytes from 192.168.20.1: icmp_seq=1 ttl=64 time=0.367 ms

--- 192.168.20.1 ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 0.367/0.367/0.367/0.000 ms

Step 7: Run command vpn ipsec show sa at DUT0 and check if output matches the following regular expressions:

,\s+[^0] packets
Show output
vpn-peer-PEER: #1, ESTABLISHED, IKEv2, 3a7935821094237e_i c9c88b4dd508cf10_r*
  local  '60.0.0.10' @ 60.0.0.10[500]
  remote '60.0.0.20' @ 60.0.0.20[500]
  AES_GCM_16-256/PRF_HMAC_SHA2_256/ECP_256
  established 1s ago, rekeying in 21298s
  peer-PEER-tunnel-VTI: #2, reqid 1, INSTALLED, TUNNEL, ESP:AES_GCM_16-256
    installed 1s ago, rekeying in 3244s, expires in 3959s
    in  c200f8d2 (0x90000000),    168 bytes,     2 packets,     0s ago
    out c5426c45 (0x90000000),    168 bytes,     2 packets,     0s ago
    local  0.0.0.0/0
    remote 0.0.0.0/0