Every other blue moon I get a question along the lines of “how could I contribute to netlab”. The process is pretty streamlined and reasonably (I hope) documented in Contributor Guidelines; if you want to get started with an easy task, try implementing OSPFv3 for one of almost a dozen devices (vSRX implementation by Stefano Sasso is a picture-perfect example):
- Check the list of supported device platforms to see if it contains a device that you’re familiar with (adding a new device is a totally different can of worms).
- Check the list of devices for which we already implemented OSPFv3.
- If you don’t have a running netlab environment, start with the installation instructions.. You will probably have to build a Vagrant box for your device: follow VirtualBox or libvirt box building instructions.
- Read the OSPF developer documentation to figure out how to create OSPFv3 configuration template.
- Fork the netlab repository.
- Write a comment in OSPFv3 support GitHub issue to let everyone know you’re working on a new device.
- Get the job done.
- Run tests – between two instances of your device, and between your device and some other device.
- Submit a PR.
When testing your implementation, please test:
- P2P, LAN and stub links
- Numbered and unnumbered IPv6 links
- Different network types
- Multiple OSPF areas and OSPF costs
Finally a word of caution: we follow the you wrote it, you own it principle, so be ready to fix the bugs if needed.
- Added a link to a sample commit (OSPFv3 on vSRX)