10-24-2023 04:42 AM
Seen below error when try to get startup configuration of the device
# netconf-console --get-data --db startup
<?xml version="1.0" encoding="UTF-8"?>
<rpc-reply xmlns="urn:ietf:params:xml:ns:netconf:base:1.0" message-id="1">
<rpc-error>
<error-type>protocol</error-type>
<error-tag>invalid-value</error-tag>
<error-severity>error</error-severity>
<error-message xml:lang="en">Unsupported capability :startup</error-message>
<error-info>
<bad-element>datastore</bad-element>
</error-info>
rpc-error
rpc-reply
Is NSO supports startup/candidate configs?
Mentioned not being supported in the NSO document.
candidate
Not supported by NSO.
:confirmed-commit
Not supported by NSO.
:startup
Not supported by NSO.
10-24-2023 08:06 AM
Hi,
As you noticed in the documentation for the NSO NETCONF server, the candidate and startup datastores are not supported by the NSO NETCONF server for clients connecting with NSO. https://developer.cisco.com/docs/nso/guides/#!the-nso-netconf-server/protocol-capabilities
NSO does support managing NETCONF-enabled nodes/devices that announce support for the startup or candidate datastores (including confirmed-commit when the candidate is enabled). See, for example, https://developer.cisco.com/docs/nso/guides/#!the-nso-device-manager/configuration-datastore-support.
Regards
10-24-2023 08:53 AM
You cannot read the device's current startup datastore config using NSO. NSO will read from and write to the running datastore.
However, you can configure NSO to always copy the running datastore to the startup after a configuration change to persist the change by, in NSO, setting "/devices/device{my-device}/ned-settings/use-startup" to true.
You will then see something like this in the NETCONF trace log for the device:
<rpc xmlns="urn:ietf:params:xml:ns:netconf:base:1.0"
message-id="42">
<copy-config>
<target>
<startup/>
</target>
<source>
<running/>
</source>
</copy-config>
</rpc>
10-24-2023 11:32 PM
With this NSO trail version 6.0, even when the device is enabled with running and startup capabilities and ned is operating in startup mode, but still it replies with Unsupported capability :startup
Here, using NSO as a client to manage netconf supporting other vender device.
admin@ncs
show devices device ms8024 state transaction-mode
state transaction-mode startup
10-25-2023 04:21 AM
If the device announces the `:startup:1.0` capability in the <hello> message but replies with `Unsupported capability :startup` when NSO tries to copy the running datastore to startup, it seems like the device does not support the startup capability even if announces it does.
You can try to set "/devices/device{my-device}/ned-settings/use-startup" to false as a workaround.
You can set "/devices/device{my-device}/trace" to "pretty" to get the NETCONF communication between NSO and the device in a logs/netconf-my-device.trace log
10-25-2023 06:50 AM
1) With use-startup true, startup capability is announced whenever edit-config is being executed on NSO side via netconf-console
"netconf-console --edit-config=31_CLI.xml"
we can see that rpc request for edit-config plus rpc request for copy-running-to-startup being sent out to device and it is successfull.
2) when we try same --copy-running-to-startup from netconf-console we are seeing the issue Unsupported capability :startup
netconf-console --rpc=rpc.xml
<?xml version="1.0" encoding="UTF-8"?>
<rpc-reply xmlns="urn:ietf:params:xml:ns:netconf:base:1.0" message-id="1">
<rpc-error>
<error-type>protocol</error-type>
<error-tag>invalid-value</error-tag>
<error-severity>error</error-severity>
<error-message xml:lang="en">Unsupported capability :startup</error-message>
<error-info>
<bad-element>startup</bad-element>
</error-info>
</rpc-error>
</rpc-reply>
cat rpc.xml
<copy-config xmlns:nc="urn:ietf:params:xml:ns:netconf:base:1.0">
<target>
<startup/>
</target>
<source>
<running/>
</source>
</copy-config>
are we missing any setting on NSO side where to enable copy-config and execute successfully?
#ned-settings use-startup true
10-25-2023 10:56 AM
There is some confusion here. You are editing the device configuration representation in the NSO database (CDB). When the CDB config changes, NSO makes the configuration in the device.
Hence, you are not communicating with the device NETCONF interface when using the NSO NETCONF interface. You are setting a configuration in the NSO CDB that does not support the startup datastore. NSO will then communicate with the NETCONF-enabled device that, in this case, supports the startup datastore.
Discover and save your favorite ideas. Come back to expert answers, step-by-step guides, recent topics, and more.
New here? Get started with these tips. How to use Community New member guide