Pipette
An SDN/NFV coprocessor controller.
Install / Use
/learn @anarkiwi/PipetteREADME
pipette
An SDN/NFV coprocessor controller.
Pipette is a tool that allows users to multiplex SDN coprocessing by implementing transparent L3 NAT. Pipette does this by creating a virtual network behind your coprocessor port and then acting as the SDN controller of that network. Packets are seamlessly switched to their appropriate destination using Ryu.
Usage
- If an OVS container is not already present, start OVS:
docker compose -f docker-compose-ovs.yml up -d. If you have OVS running already (eg, you are running dovesnap), skip this step. - Start pipette:
COPROINT=<ethX> VLANS=<VLANs> NFVIPS=<NFVIPs> OF=<OF TCP port> ID=0 docker compose -p 0 up -d(see Configuration section - exampleCOPROINT=eth1 VLANS=2 NFVIPS=10.10.0.1/16 OF=6699 ID=0 docker compose -p 0 up -d. - Start fake services listening on the NFVIP address assigned to the fake interface (Eg, IP of
fake0.2for VLAN 2 - pipette manages this interface and assigns the NFVIP). Fake services do not have to be in Docker. - When finished,
docker compose down. - If you want to run pipette on multiple interfaces, specify different ID and project number as well as interfaces and NFVIPs (the same VLANs can be coprocessed differently on different interfaces - example
COPROINT=eth2 VLANS=2 NFVIPS=10.20.0.1/16 OF=6799 ID=1 docker compose -p 1 up -d)
Configuration
Required
- COPROINT - the interface that will receive coprocessed packets
- VLANS - Space delimitted list of VLANs to coprocess from, must match a VLAN in FAUCET ACL rule
- NFVIPS - IPs to send coprocessed packets to. Must be a /16 if IPv4, or /96 if IPv6. There must be the same number of IPs in the list as VLANs.
- OF - OpenFlow TCP port for pipette to use
Related Skills
node-connect
352.9kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
111.5kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
352.9kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
qqbot-media
352.9kQQBot 富媒体收发能力。使用 <qqmedia> 标签,系统根据文件扩展名自动识别类型(图片/语音/视频/文件)。
