Skip to content

Example: icmptunnel over loopback

Alt text

r1

hostname r1
vrf def v1
 rd 1:1
 exit
int eth1
 vrf for v1
 ipv4 addr 1.1.1.1 255.255.255.252
 exit
int lo0
 vrf for v1
 ipv4 addr 1.1.1.101 255.255.255.255
 exit
ipv4 route v1 1.1.1.102 255.255.255.255 1.1.1.2
int tun1
 tunnel vrf v1
 tunnel mode icmp
 tunnel source lo0
 tunnel destination 1.1.1.102
 vrf for v1
 ipv4 addr 2.2.2.1 255.255.255.0
 ipv6 addr 4321::1 ffff::
 exit

r2

hostname r2
vrf def v1
 rd 1:1
 exit
int eth1
 vrf for v1
 ipv4 addr 1.1.1.2 255.255.255.252
 exit
int lo0
 vrf for v1
 ipv4 addr 1.1.1.102 255.255.255.255
 exit
ipv4 route v1 1.1.1.101 255.255.255.255 1.1.1.1
int tun1
 tunnel vrf v1
 tunnel mode icmp
 tunnel source lo0
 tunnel destination 1.1.1.101
 vrf for v1
 ipv4 addr 2.2.2.2 255.255.255.0
 ipv6 addr 4321::2 ffff::
 exit
r1 tping 100 5 2.2.2.2 vrf v1
r2 tping 100 5 2.2.2.1 vrf v1
r1 tping 100 5 4321::2 vrf v1
r2 tping 100 5 4321::1 vrf v1
  1. Install ContainerLab as described here
  2. Fetch conn-icmp04 file
  3. Launch ContainerLab conn-icmp04.yml topology:

   containerlab deploy --topo conn-icmp04.yml  
4. Destroy ContainerLab conn-icmp04.yml topology:

   containerlab destroy --topo conn-icmp04.yml  
5. Copy-paste configuration for each node in the lab topology

  1. Fetch or compile freeRtr rtr.jar file.
    You can grab it here
  2. Fetch conn-icmp04.tst file here
  3. Launch conn-icmp04.tst test:

   java -jar ../../rtr.jar test tester conn-icmp04 path ./ temp ./ wait
4. Destroy freeRtr conn-icmp04.tst test:

   Ctrl-C (In freeRtr test window)