|
| 1 | +| | | |
| 2 | +| ----------------------------- | -------------------------------------------------------------------- | |
| 3 | +| **Description** | A Cisco ASAv connected to two Alpine Linux Hosts | |
| 4 | +| **Components** | [Cisco ASAv][asav], [Multitool Alpine Linux][client] | |
| 5 | +| **Resource requirements**[^1] | :fontawesome-solid-microchip: 1 <br/>:fontawesome-solid-memory: 2 GB | |
| 6 | +| **Topology file** | [asav01.clab.yml][topofile] | |
| 7 | +| **Name** | asav01 | |
| 8 | +| **Version information**[^2] | `asav9-23-1.qcow2`, `docker:24.0.6` | |
| 9 | + |
| 10 | +## Description |
| 11 | + |
| 12 | +This lab consists of one Cisco ASAv firewall connected to two Alpine Linux nodes. |
| 13 | + |
| 14 | +``` |
| 15 | +client1<---->ASAv<---->client2 |
| 16 | +``` |
| 17 | + |
| 18 | +## Configuration |
| 19 | + |
| 20 | +The ASAv node takes about 5-7 minutes to complete its start up. Check using "docker container ls" and "docker logs -f clab-asav01-asav1" until the ASAv container shows up as "healthy". |
| 21 | + |
| 22 | +``` |
| 23 | +# docker container ls |
| 24 | +CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES |
| 25 | +5682d73984d1 vrnetlab/vr-asav:9.23.1 "/launch.py --userna…" 5 minutes ago Up 5 minutes (healthy) 22/tcp, 80/tcp, 443/tcp, 5000/tcp, 10000-10099/tcp clab-asav01-asav1 |
| 26 | +1ebe3dae6846 wbitt/network-multitool:alpine-extra "/bin/sh /docker-ent…" 5 minutes ago Up 5 minutes 80/tcp, 443/tcp, 1180/tcp, 11443/tcp clab-asav01-client1 |
| 27 | +9726c9bb9e21 wbitt/network-multitool:alpine-extra "/bin/sh /docker-ent…" 5 minutes ago Up 5 minutes 80/tcp, 443/tcp, 1180/tcp, 11443/tcp clab-asav01-client2 |
| 28 | +``` |
| 29 | + |
| 30 | +### asav1 |
| 31 | + |
| 32 | +Log into the ASAv node using SSH and add the following configuration. Password is `CiscoAsa1!`. |
| 33 | + |
| 34 | +```bash |
| 35 | +ssh admin@clab-asav01-asav1 |
| 36 | +``` |
| 37 | + |
| 38 | +Optionally configure the ASA with any additional settings as needed. |
| 39 | + |
| 40 | +### client1 |
| 41 | + |
| 42 | +The two clients should be configured with the correct IP addresses and a route to the other client via the ASAv node. |
| 43 | +First attach to the container process `docker exec -it clab-asav01-client1 bash` |
| 44 | + |
| 45 | +``` |
| 46 | +docker exec -it clab-asav01-client1 bash |
| 47 | +
|
| 48 | +# ip -br a show dev eth1 |
| 49 | +eth0@if7 UP 172.20.20.4/24 3fff:172:20:20::4/64 fe80::a4ea:64ff:fe33:c15c/64 |
| 50 | +
|
| 51 | +# ip route |
| 52 | +default via 172.20.20.1 dev eth0 |
| 53 | +172.20.20.0/24 dev eth0 proto kernel scope link src 172.20.20.4 |
| 54 | +
|
| 55 | +# ping 172.20.20.2 |
| 56 | +PING 172.20.20.2 (172.20.20.2) 56(84) bytes of data. |
| 57 | +64 bytes from 172.20.20.2: icmp_seq=1 ttl=64 time=0.163 ms |
| 58 | +64 bytes from 172.20.20.2: icmp_seq=2 ttl=64 time=0.047 ms |
| 59 | +64 bytes from 172.20.20.2: icmp_seq=3 ttl=64 time=0.053 ms |
| 60 | +``` |
| 61 | + |
| 62 | +### client2 |
| 63 | + |
| 64 | +Similarly for client2, verify connectivity: |
| 65 | + |
| 66 | +``` |
| 67 | +docker exec -it clab-asav01-client2 bash |
| 68 | +
|
| 69 | +# ip -br a show dev eth1 |
| 70 | +eth0@if5 UP 172.20.20.2/24 3fff:172:20:20::2/64 fe80::b86b:51ff:fed8:1c85/64 |
| 71 | +
|
| 72 | +# ping 172.20.20.4 |
| 73 | +PING 172.20.20.4 (172.20.20.4) 56(84) bytes of data. |
| 74 | +64 bytes from 172.20.20.4: icmp_seq=1 ttl=64 time=0.055 ms |
| 75 | +64 bytes from 172.20.20.4: icmp_seq=2 ttl=64 time=0.035 ms |
| 76 | +64 bytes from 172.20.20.4: icmp_seq=3 ttl=64 time=0.065 ms |
| 77 | +
|
| 78 | +# ping 172.20.20.6 |
| 79 | +PING 172.20.20.6 (172.20.20.6) 56(84) bytes of data. |
| 80 | +From 172.20.20.2 icmp_seq=1 Destination Host Unreachable |
| 81 | +From 172.20.20.2 icmp_seq=2 Destination Host Unreachable |
| 82 | +From 172.20.20.2 icmp_seq=3 Destination Host Unreachable |
| 83 | +``` |
| 84 | + |
| 85 | +[topofile]: https://github.com/srl-labs/containerlab/tree/main/lab-examples/asav01/asav01.clab.yml |
0 commit comments