Requires Powercode build 26.10.05 or later.
A Link BMU is a Powercode Link gateway added to Powercode as a BMU. Powercode uses it as the DHCP server for your customers' equipment, for both IPv4 and IPv6. You manage address ranges and devices in Powercode as usual, and Powercode sends the matching DHCP subnets and per-device reservations to the Link. The Link also runs the ICMP and SNMP monitoring probes for its equipment, and reports DHCP lease activity back to Powercode, which feeds the DHCP Log tab on each device.
This page covers adding a Link BMU, its settings, the tabs on Configure BMU, and the address range fields that matter for a Link. For an end-to-end IPv6 walkthrough, see Configuring IPv6 Addresses.
Go to Network > BMU Overview. Link BMUs are listed with your other BMUs. Click a BMU's name, or choose Configure BMU from its Action menu, to open its configuration. Choose Edit BMU Details to change its settings.
All of these are under Network → BMU:
| Permission | Why it is needed |
|---|---|
| BMU | View to see BMU Overview. Edit to add or edit a Link BMU and to open Configure BMU, including the Link Health tab. Delete to remove a BMU. |
| Address Range | View to see the IPv4 Address Ranges and IPv6 Address Ranges tabs. Edit to add or change ranges. |
| Synchronize | To use Synchronize BMU and Force Full Resync. |
| Logs | To see the Event Log tab. |
When you save a Link BMU, Powercode also sets up the Link to send DHCP lease events and probe results back to Powercode. The result is written to the BMU's Event Log.
| Field | What to enter |
|---|---|
| Name | A unique, descriptive name for this BMU. |
| IP Address | The IP address Powercode should use to communicate with the Link. |
| Port | The Link's API port. If you leave it blank, Powercode uses 443. |
| Password | The Link API key. The key must have the permissions listed under the field: gateway:observability:read, gateway:config:write and gateway:network:execute. |
| Powercode Server IP | Set as needed for your deployment. |
| Mirror Group | To mirror this BMU's configuration to other BMUs, put them all in the same mirror group. Leave it at Disabled otherwise. |
| DHCP Listening Interfaces | Shown when editing an existing Link BMU. The network interfaces and IP addresses the Link's DHCP service listens on, listed as interface, address and (IPv4) or (IPv6). You can select several. Earlier builds called this field Kea Listening Interfaces. |
| DHCP Mode | Layer 2 only (the default) or Relay only. See DHCP Mode below. |
| Default Shared Network | The shared network name used for subnets that don't have one configured. |
DHCP Mode tells the Link how to send IPv4 DHCP responses.
| Option | Use it when |
|---|---|
| Layer 2 only | Your customers' equipment is on networks directly attached to the Link. The Link reaches directly attached clients, but cannot send responses back to a DHCP relay on another network. This is the default. |
| Relay only | Your customers' DHCP requests reach the Link through a DHCP relay, such as a router or Layer 3 switch that forwards DHCP to the Link. The Link can route its responses back through the relay. |
Things to know about this setting:
For ranges behind a relay, also fill in Relay Address on each address range (see below).
A Link BMU's Configure BMU page has these tabs: IPv4 Address Ranges, IPv6 Address Ranges, Open Access List, BMU Details, Event Log and Link Health. It has no Configurations tab. Above the tabs are the Synchronize BMU and Force Full Resync buttons (see Synchronizing).
The address range tabs, BMU Details and Event Log work as they do on other BMU types. See BMU Overview. The Open Access List tab is shown too, but see Limitations.
The Link Health tab shows the Link's live DHCP and system health. It refreshes on its own while the tab is open: the health figures about every 5 seconds, and the system metrics about every 15 seconds. It stops refreshing when you switch to another tab.
DHCP health at the top of the tab:
| Item | What it shows |
|---|---|
| Overall status | Connected when both the IPv4 and IPv6 DHCP servers are up, Degraded when only one is, Disconnected when neither is. Next to it: whether each server is up (v4 up · v6 up) and the time of the last update. |
| DHCPv4 Status / DHCPv6 Status | Online or Unavailable, with the server's uptime. |
| Metrics Endpoint | Whether the Link's metrics could be read, for example HTTP 200, or Unavailable. |
| Active Leases (v4) / Active Leases (v6) | Leases currently assigned. |
| Requests/sec | DHCP packets the Link is receiving per second. |
| ACKs/sec | DHCPv4 ACKs and DHCPv6 replies sent per second. |
| NAKs/sec | DHCPv4 NAKs sent per second. |
The three per-second rates are worked out between two refreshes, so they show — until the tab has refreshed once.
System Metrics below that:
Use the IPv6 Address Ranges tab to add the IPv6 pools the Link hands out, including Prefix Delegation. The fields are covered in Configuring IPv6 Addresses.
Add ranges with Add New IPv4 Address Range or Add New IPv6 Address Range on Configure BMU. Most fields are the same as for any BMU. When DHCP Server is Enabled, two more fields apply to a Link:
| Field | What it is for |
|---|---|
| Relay Address | The IP address of the device (usually a router or Layer 3 switch) that forwards DHCP requests from this subnet to the Link. It must match the IP version of the range. For example, for an IPv4 range whose gateway is 10.50.0.1 and whose router forwards DHCP to the Link, enter 10.50.0.1. Leave it empty when the Link is on the same network as the clients. |
| Interface | The interface on the Link that this range is on. The list is read from the Link when the page opens, so it shows (loading interfaces…) for a moment. If the BMU is in a mirror group, there is one of these fields for each mirrored Link or MikroTik BMU, labeled with its name. |
The Link only listens for DHCP on the interfaces selected in the BMU's DHCP Listening Interfaces. When you pick an Interface for a range, make sure that interface is also selected there.
Synchronize BMU (on Configure BMU, or Synchronize in the Action menu on BMU Overview) rebuilds the Link's whole DHCP configuration from Powercode: listening interfaces, DHCP Mode, subnets, shared networks and reservations.
Powercode also starts a sync on its own when a Link BMU in Good status is Out of Sync (for example after a failed sync), and when the Link has restarted. The Event Log then shows Forced synchronization as uptime decreased.
Force Full Resync is only offered for Link BMUs. It does everything a normal sync does and also drops every DHCP lease on the Link, so every device on this BMU has to request an address again. This interrupts service. Use it only to recover from stale or inconsistent lease data. You are asked to confirm with Drop leases and resync.
Force Full Resync disconnects every device on the BMU until it gets a new lease. Don't use it to apply a normal change; use Synchronize BMU.
When you save an address range or a device that belongs to a Link BMU, Powercode queues the change and sends it to the Link. You don't need to synchronize after every change. Synchronize BMU is there to rebuild everything at once.
Each device's DHCP reservation is tied to the most specific identifier Powercode has for it. The Option 82 Remote ID and Circuit ID are entered on the equipment form by choosing Option 82 as the MAC Source.
| Current Link software | Older Link software | |
|---|---|---|
| IPv4 | Remote ID, then Circuit ID, then MAC address | Remote ID, then MAC address |
| IPv6 | Remote ID, then MAC address, then DUID | DUID, then MAC address, then Remote ID |
Powercode works with both current and older Link software. Each time a Link BMU is saved or synchronized, Powercode checks whether the Link supports the current matching method. If it doesn't, Powercode switches to the older method on its own. You don't need to configure anything. The Version column on BMU Overview shows the Link software version.
The Link tells Powercode each time a lease is granted, renewed, released, declined or expires. Powercode records these against the device whose assigned IP address matches the lease, and shows them on the device's DHCP Log tab. See Equipment Details - DHCP Log.
For devices that have an IPv6 address, Powercode also updates the device's MAC address and DUID in Powercode from what the Link reports, then resends its reservation. Devices without IPv6 keep the MAC address you entered.
The Link sends these events to the Admin Portal URL set on Config > System, so that address must be correct and reachable from the Link.
Powercode checks each Link BMU's status regularly. A Link BMU is marked Bad if its DHCP servers don't respond, or if the monitoring components on the Link (prometheus, node-exporter or cadvisor) aren't reporting, even when DHCP itself is working. When a Link BMU changes to Bad, the Event Log entry includes the reason.
| Symptom | Likely cause |
|---|---|
| DHCP Listening Interfaces isn't on the form | You're adding the BMU rather than editing it, or Powercode couldn't get the interface list from the Link. Check IP Address, Port and Password. |
| The BMU did not accept the DHCP interface configuration. The previous DHCP mode is still in effect. | The Link rejected the selected interfaces or mode. The previous mode is still in use. Check the interface selection and save again. |
| The BMU did not accept the DHCP interface configuration. The previous DHCP mode could not be reapplied; check the BMU interface configuration before relying on the mode shown here. | The Link rejected the change and Powercode couldn't restore the old mode either. Check the Link before relying on the DHCP Mode shown. |
| A range's Interface list shows (interfaces unavailable — see console) | Powercode couldn't get the interface list from the Link, for example because it's unreachable. |
| Event Log: Synchronization aborted: the BMU rejected the DHCP interface configuration; nothing was changed | The Link refused the saved DHCP Listening Interfaces or DHCP Mode, so the sync stopped before changing anything. |
| You cannot synchronize a BMU that is not in a 'Good' status. | The BMU's status isn't Good. Fix the connection first. |
| A synchronization is already running for this BMU. Wait for it to finish, then try again. | A sync for this BMU is still in progress. |
| Clients behind a DHCP relay get no IPv4 address | DHCP Mode is Layer 2 only, which can't send responses back through a relay. Change it to Relay only, and enter the relay's address as the range's Relay Address. |
| Event Log: Callback configuration incomplete or DHCP lease callback configuration failed. | Powercode couldn't set up lease events on the Link. The DHCP Log tab won't fill in until this works. Save the BMU or synchronize it to try again. |
| Event Log: Link callback configuration was skipped because Admin Portal URL is invalid. | Set a valid Admin Portal URL on Config > System, then save or synchronize the BMU. |
| Link BMU is Bad but DHCP is working | The Link's monitoring components aren't reporting. Open the Event Log: the Status changed to Bad entry includes the reason. |
| Link Health shows Failed to load Link Health. or Failed to refresh Link Health. | The health data couldn't be loaded. The tab tries again on its next refresh. |