neutron-bsdbridge
Neutron ML2 mechanism driver, L2 agent, and DHCP agent for FreeBSD based on if_bridge(4) and pf(4).
Status
Features
- ML2 mechanism driver that binds ports with
vif_type=bridgeand publishes to Nova - Implements one bridge per Neutron segment for vlan, flat and local networks.
- L2 agent to manage bridge, taps and security group rules
- Port security
- DHCP agent running one dnsmasq per network inside separate VNET jails
Roadmap
- L3 agent for gateway and NAT support
- vxlan segments
- IPv6 tcp and udp security group rules
- metadata agent
Limitations
- IPv6 tcp and udp rules are skipped and this traffic stays blocked
- ARP is not inspected
- Only IPv4 subnets are served by the DHCP agent
Host requirements
Make sure to configure net.link.bridge.pfil_member=1 on the host.
Add to the host pf.conf:
set state-policy if-bound
ether anchor "l2-neutron/port/*"
anchor "l2-neutron/port/*"
Configuration
neutron-server (ml2_conf.ini):
[ml2]
mechanism_drivers = bsdbridge
The agents (bsdbridge_agent.ini, a full sample is in etc/):
[bsdbridge]
physical_interface_mappings = physnet1:ix0
Release files for neutron-bsdbridge 0.9.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| neutron_bsdbridge-0.9.1.tar.gz | 26.7 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| neutron_bsdbridge-0.9.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 61.8 kB
Release files / neutron_bsdbridge-0.9.1.tar.gz
| Download URL | neutron_bsdbridge-0.9.1.tar.gz |
|---|---|
| Size | 26.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
4aa2d0a235b0c3a90404aa4bb22f32c945d7fad9cc209587c7dd797254f87ecf
|
|
BLAKE2b-256 checksum How to use checksums |
51e35049bff98b68df86a8a1f75a8249d5c6a25c33e7dc35f067f37a56bebed7
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.12.10 {"installer":{"name":"uv","version":"0.12.10","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / neutron_bsdbridge-0.9.1-py3-none-any.whl
| Download URL | neutron_bsdbridge-0.9.1-py3-none-any.whl |
|---|---|
| Size | 35.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
fa8b5410487b260cdc6a350e0de2207771122e9efd45a5ba7fcbbff792c46860
|
|
BLAKE2b-256 checksum How to use checksums |
0d422172f29ed3b68cf33daba2a2017c78d66a2766a019f317490a3d29df2b46
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.12.10 {"installer":{"name":"uv","version":"0.12.10","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|