Skip to content

Commit 1feedef

Browse files
author
Pete Crocker
authored
Platform-specific caveats moved into separate documentation pages (#55)
1 parent 9cedd80 commit 1feedef

4 files changed

Lines changed: 166 additions & 106 deletions

File tree

docs/caveats.md

Lines changed: 66 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,66 @@
1+
# Caveats
2+
3+
## Vendor / Image Caveats
4+
5+
### Cisco<a name="cisco"></a>
6+
7+
* It's possible to run Cisco IOSv/CSR under Virtualbox if you build your own Vagrant boxes.
8+
* After building Vagrant boxes, edit **devices** section of **topology-defaults.yml** file to add Virtualbox support for individual network devices.
9+
10+
### Cumulus Linux<a name="cumulus"></a>
11+
12+
#### ContainerLab
13+
14+
* *containerlab* could run Cumulus Linux as a container or as a micro-VM with *firecracker* (default, requires KVM). To run Cumulus VX as a pure container, add **runtime: docker** parameter to node data.
15+
* *netsim-tools* uses Cumulus VX containers created by Michael Kashin and downloaded from his Docker Hub account. Once Nvidia releases an official container image, change the container name with **defaults.providers.clab.devices.cumulus.image.clab** parameter (or by editing the `topology-defaults.yml` file included with *netsim-tools*).
16+
17+
### Fortinet FortiOS<a name="fortinet"></a>
18+
19+
* *FortiOS* VM images by default have a 15 day evaluation license. The VM has [limited capabilities](https://docs.fortinet.com/document/fortigate-private-cloud/6.0.0/fortigate-vm-on-kvm/504166/fortigate-vm-virtual-appliance-evaluation-license) without a license file. It will work for 15 days from first boot, at which point you must install a license file or recreate the vagrant box completely from scratch.
20+
* Ansible automation of FortiOS requires the installation of the [FortiOS Ansible Collection 2.1.3 or greater](https://galaxy.ansible.com/fortinet/fortios) and a FortiOS version > 6.0.
21+
* Ansible configuration of OSPF is currently broken due to a [suspected bug](https://github.com/fortinet-ansible-dev/ansible-galaxy-fortios-collection/issues/150) in the FortiOS Ansible Collection. To work around this issue, you must manually configure a OSPF network statement by logging in to the device after initial provisioning. For example:
22+
23+
```bash
24+
vagrant ssh fw
25+
config router ospf
26+
config network
27+
edit 1
28+
set area 0.0.0.1
29+
set prefix 0.0.0.0/0
30+
end
31+
end
32+
```
33+
34+
### FRR<a name="frr"></a>
35+
36+
* *containerlab* FRR containers run FRR release 7.5.0 -- the latest release that survives FRR daemon restart during the initial configuration process.
37+
* FRR project does not create usable Ubuntu packages. Use Cumulus Linux if you'd like to run FRR within a VM.
38+
39+
### Generic Linux<a name="linux"></a>
40+
41+
* *Generic Linux device* is a Linux VM running Ubuntu 20.04 or an Alpine/Python container. To use any other Linux distribution, add **image** attribute with the name of Vagrant box or Docker container to the node data[^1]; the only requirements are working Python environment (to support Ansible playbooks used in **netlab initial** command) and the presence of **ip** command used in initial device configuration. See also [host routing](#host-routing).
42+
43+
[^1]: You can also set the **defaults.devices.linux.image._provider_** attribute to change the Vagrant box for all Linux hosts in your lab.
44+
45+
#### Host Routing
46+
47+
Generic Linux device is an IP host that does not support IP forwarding or IP routing protocols. It uses static routes set up as follows:
48+
49+
* IPv4 default route points to Vagrant management interface (set by Vagrant/DHCP).
50+
* IPv6 default route points to whichever adjacent device is sending IPv6 Route Advertisement messages (default Linux behavior).
51+
* IPv4 static routes for all IPv4 address pools defined in lab topology point to the first neighbor on the first non-management interface.
52+
53+
**Corollary:** Linux devices SHOULD have a single P2P link to an adjacent network device. If you encounter problems using any other lab topology, please submit a Pull Request fixing it instead of complaining ;)
54+
55+
#### LLDP
56+
57+
* LLDP on Generic Linux is started in Ubuntu VMs but not in Alpine containers.
58+
59+
### Juniper vSRX<a name="juniper_srx"></a>
60+
61+
* It's possible to run Juniper vSRX under Virtualbox if you build your own Vagrant boxes.
62+
* After building Vagrant boxes, edit **devices** section of **topology-defaults.yml** file to add Virtualbox support for individual network devices.
63+
64+
### Mikrotik CHR RouterOS<a name="mikrotik"></a>
65+
66+
* LLDP on Mikrotik CHR RouterOS is enabled on all the interfaces.

docs/index.rst

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -76,5 +76,6 @@ Getting Started
7676
:hidden:
7777

7878
release.rst
79+
caveats.md
7980
contribute.md
8081
..

0 commit comments

Comments
 (0)