The Salacia forwarder
This is packet forwarder with Linux raw socket.
Currently, support only Layer 2, but this will be multi layer switch in future.
- Layer 2 switching
- VLAN tagging(test version)
- support Layer 3 switching (Rounting for connected network)
- support static routing
- support RIPv2 (Dynamic Routing Protocol)
How to use
$ git clone https://github.com/kamaboko123/salacia-forwarder.git
2. Build, Run
$ cd salacia-forwarder/L2SW $ make $ ./bin/l2sw enp3s0 enp4s0
You need to specify interfaces as argument.
The interfaces is need to set promiscuous mode.
$ ifconfig enp3s0 promisc $ ifconfig enp4s0 promisc
L2SW with VLAN(test version)
VLAN function is supported as test implementation.
Currently, configuration is only supported by hardcode.
You need to configuration by edit source code.
$ cd salacia-forwarder/forwarder/test/vlan_switch # Please edit source code for your environment $ vim vlan_switch.cpp $ make $ bin/switch
This forwarder is not tested in except develop enviroment.
Especially, this is not support big endian CPU.
(Probably, this work with intel CPU.)
- CPU : intel J1900
- RAM : DDR3 4GB
- OS : Ubuntu 16.04