Network
The Network Aether is IP address management in Aethers — routing contexts, layer-2 segments, and the layer-3 address space — plus a visual designer that draws over the same data.
public/screenshots/network-prefixes.pngHow it fits together
Section titled “How it fits together”- ASNs and Route Targets are the routing identifiers used to define VRFs.
- VRFs scope everything below them — prefixes and addresses live inside a routing context.
- VLAN Groups → VLANs model layer 2; a VLAN carries a VID (
1–4094) and can be scoped to a group and site. - Prefixes → IP Addresses model layer 3; an address belongs to a prefix and can be assigned to a device or VM interface.
Modules
Section titled “Modules”Virtual routing and forwarding contexts — the scope every prefix and address lives within, so overlapping address space can coexist. A VRF references no parent; prefixes and addresses point back at it.
Fields
| Field | Type | Notes |
|---|---|---|
name | string · required | Display name. |
rd | string | Route Distinguisher — unique across VRFs. |
description | string | Free-form notes. |
API — GET/POST /api/vrfs, GET/PATCH/DELETE /api/vrfs/{id}.
Route Targets
Section titled “Route Targets”Route-target records used to import and export routes between VRFs. A thin identifier record — name and notes only.
Fields
| Field | Type | Notes |
|---|---|---|
name | string · required | Display name (e.g. the RT value 65000:100). |
description | string | Free-form notes. |
API — GET/POST /api/route-targets, GET/PATCH/DELETE /api/route-targets/{id}.
Autonomous system numbers — the routing identifiers that anchor VRFs and external peering, optionally tagged with the issuing registry.
Fields
| Field | Type | Notes |
|---|---|---|
name | string · required | Display name. |
asn | integer · required | Autonomous system number. |
rir | string | Regional internet registry (e.g. ARIN, RIPE). |
description | string | Free-form notes. |
API — GET/POST /api/asns, GET/PATCH/DELETE /api/asns/{id}.
VLAN Groups
Section titled “VLAN Groups”A grouping for VLANs, typically by site or domain, that bounds VID uniqueness. VLANs reference a group; the group itself stands alone.
Fields
| Field | Type | Notes |
|---|---|---|
name | string · required | Display name. |
slug | string | URL-friendly key — unique across groups. |
description | string | Free-form notes. |
API — GET/POST /api/vlan-groups, GET/PATCH/DELETE /api/vlan-groups/{id}.
Layer-2 segments. Each carries a 12-bit VID and can be scoped to a group and a site.
Fields
| Field | Type | Notes |
|---|---|---|
vid | integer · required | VLAN ID, 1–4094. |
name | string · required | Display name. |
groupId | uuid → VLAN Group | Optional grouping. |
siteId | uuid → Site | Optional site scope. |
status | string | Default active. |
description | string | Free-form notes. |
API — GET/POST /api/vlans, GET/PATCH/DELETE /api/vlans/{id}.
public/screenshots/network-vlans.pngPrefixes
Section titled “Prefixes”IP prefixes (subnets), organised within a VRF — the layer-3 building block that addresses are carved from. Optionally tied to a site and a VLAN.
Fields
| Field | Type | Notes |
|---|---|---|
prefix | string · required | CIDR, e.g. 192.168.1.0/24. |
vrfId | uuid → VRF | Optional routing context. |
siteId | uuid → Site | Optional site scope. |
vlanId | uuid → VLAN | Optional VLAN association. |
status | enum | active·container·reserved·deprecated; default active. |
isPool | boolean | Marks the prefix as an allocation pool; default false. |
description | string | Free-form notes. |
API — GET/POST /api/prefixes, GET/PATCH/DELETE /api/prefixes/{id}.
Notes — isPool flags a prefix whose addresses are handed out from a pool
rather than statically assigned.
IP Addresses
Section titled “IP Addresses”Individual addresses belonging to a prefix, assignable to a device and to a precise interface. Supports bulk creation and scoping by device or interface.
Fields
| Field | Type | Notes |
|---|---|---|
address | string · required | Address with mask, e.g. 192.168.1.1/24. |
vrfId | uuid → VRF | Optional routing context. |
deviceId | uuid → Device | Denormalised device rollup; kept in sync from interfaceId. |
interfaceId | uuid → Device Port | The exact interface this address lives on. |
status | enum | active·reserved·deprecated·dhcp; default active. |
role | string | Free-text — e.g. loopback, mgmt, peering, vip, secondary. |
family | integer | 4 or 6 — denormalised for the IP Addresses tab. |
dnsName | string | Associated DNS name. |
description | string | Free-form notes. |
API — GET/POST /api/ip-addresses, GET/PATCH/DELETE /api/ip-addresses/{id},
POST /api/ip-addresses/bulk. The list endpoint also accepts deviceId and
interfaceId filters (a UUID, or the literal none for unassigned).
Notes
- Assigning an IP to an interface homes it to that interface’s device.
Set
interfaceIdand Aethers resolves and stores the parentdeviceIdautomatically; re-assigning the interface re-homes the device.interfaceIdis precise,deviceIddenormalised for the device-level rollup. POST /bulkaccepts anitems[]array (max 5000 per request) and returns{ data, requested, inserted, skipped }. Rows missing anaddressare skipped, not rejected. Bulk inserts do not run the interface→device sync.
public/screenshots/network-ip-addresses.pngDesigner
Section titled “Designer”The network diagram designer — a visual canvas over the same data, where the
diagrams you build are saved and reloaded. Diagrams persist via /api/diagrams
(the infrastructure_diagrams table) rather than the IPAM tables above.
public/screenshots/network-designer.pngGood to know
Section titled “Good to know”- Searching a list runs a case-insensitive
ILIKEacross that resource’s whitelisted columns — names and descriptions everywhere, plusrd(VRFs),slug(VLAN Groups), andaddress/dnsName/role(IP Addresses). - Sort keys are allow-listed per resource; an unknown
sortfalls back to the resource’s default (e.g. VLANs default tovid, prefixes and IP addresses to their address string).