RLReadyLinks Docs

How to use NETCONF on ReadyLinks devices

Enable NETCONF on the switch, connect with netopeer2-cli, then read with get and write with edit-config.

An OSS NETCONF client connects over SSH on TCP 830 to an RLOS switch
NETCONF over SSH, TCP 830

#1. Enable

On the switch CLI:

shell
configure terminal
netconf enable
netconf username root password <password>
end
  • Username must be root.
  • netconf disable turns it off.

#2. Connect

Any NETCONF client works. Example with netopeer2-cli (Ubuntu: sudo apt install netopeer2):

shell
netopeer2-cli
> connect --ssh --port 830 --login root --host <switch-ip>

#3. Read

shell
> get --filter-xpath <path>
PathReturns
/readylinks-rlos:portsPorts: VLAN, QinQ, attached modems
/readylinks-rlos:ports/port[port-id='3']One port
/readylinks-rlos:configure/vlan-vpnGlobal QinQ
/readylinks-rlos:configure/remote-vlan-modelsRemote VLAN models
/readylinks-rlos:configure/bandwidth-profilesBandwidth profiles + bindings
/readylinks-rlos:componentsModel, versions, serial, base MAC
/ietf-interfaces:interfaces-statePort admin / oper state
/openconfig-system:systemCPU, memory, hostname

An empty match is reported as an error. It means "no data".

#4. Write

  1. Save the payload as step.xml.
  2. Send it:
shell
> edit-config --target=running --defop=none --config=step.xml
FlagWhy
--target=runningApplies live
--defop=noneOnly nodes with an nc:operation change
--rpc-timeout=120Bandwidth-profile writes (slow)

#nc:operation

Declare xmlns:nc="urn:ietf:params:xml:ns:netconf:base:1.0" on the root element.

OperationDoesIf node existsIf node is absent
createAddErrorAdds
mergeAdd or updateUpdatesAdds
replaceOverwriteOverwritesAdds
removeDeleteDeletesNo-op (use for teardown)

#Enable a port

Port admin state lives in ietf-interfaces. Use the port name (Ghn3, Ethernet0/10, ...).

xml
<interfaces xmlns="urn:ietf:params:xml:ns:yang:ietf-interfaces">
  <interface>
    <name>Ghn3</name>
    <type xmlns:ianaift="urn:ietf:params:xml:ns:yang:iana-if-type">ianaift:ethernetCsmacd</type>
    <enabled>true</enabled>
  </interface>
</interfaces>

#5. Save

Changes auto-save to flash within 30 s. Don't power-cycle sooner. To save now:

xml
<configure xmlns="http://readylinks.io/rlos/yang/conf">
  <system><save_config>true</save_config></system>
</configure>

#Rules

ItemValue
Namespacehttp://readylinks.io/rlos/yang/conf
MAC format00:13:ba:0c:68:57 (colons, lower case)
VLAN listsOne <vid> per VLAN, not comma strings
Bad valuesRejected at edit-config with an rpc-error

#Examples: ISP customer automation

Edit this page on GitLab

Last updated October 20, 2026