AsterNOS-MPLS-L2VPN-Netconf
AsterNOS-MPLS-L2VPN
Section titled “AsterNOS-MPLS-L2VPN”This chapter provides examples on how to use Netconf to manage MPLS L2VPN configurations on AsterNOS devices.
Create static pseudowire
Section titled “Create static pseudowire”Request example to create a static pseudowire via edit-config.
<config><top> <mpls-l2vpn> <pseudowires> <pseudowire operation="create"> <name>pw1</name> <pw-type>static</pw-type> <transmit-label>1000</transmit-label> <receive-label>1001</receive-label> <peer-address>192.0.2.1</peer-address> </pseudowire> </pseudowires> </mpls-l2vpn></top></config>Response example
<rpc-reply xmlns="urn:ietf:params:xml:ns:netconf:base:1.0" message-id="1"> <ok/></rpc-reply>Create LDP pseudowire
Section titled “Create LDP pseudowire”Request example to create an LDP pseudowire via edit-config.
<config><top> <mpls-l2vpn> <pseudowires> <pseudowire operation="create"> <name>pw2</name> <pw-type>ldp</pw-type> <pw-id>2000</pw-id> <peer-address>192.0.2.2</peer-address> <peer-lsr-id>10.0.0.1</peer-lsr-id> <pw-status>true</pw-status> </pseudowire> </pseudowires> </mpls-l2vpn></top></config>Response example
<rpc-reply xmlns="urn:ietf:params:xml:ns:netconf:base:1.0" message-id="2"> <ok/></rpc-reply>Get pseudowire
Section titled “Get pseudowire”Request example to get a pseudowire via get-config with subtree filter.
<filter type="subtree"> <top> <mpls-l2vpn> <pseudowires> <pseudowire> <name>pw1</name> </pseudowire> </pseudowires> </mpls-l2vpn> </top></filter>Response example
<rpc-reply xmlns="urn:ietf:params:xml:ns:netconf:base:1.0" message-id="3"> <data> <top> <mpls-l2vpn xmlns="http://asterfusion.com/ns/yang/asternos-mpls-l2vpn"> <pseudowires> <pseudowire> <name>pw1</name> <pw-type>static</pw-type> <transmit-label>1000</transmit-label> <receive-label>1001</receive-label> <peer-address>192.0.2.1</peer-address> </pseudowire> </pseudowires> </mpls-l2vpn> </top> </data></rpc-reply>Set pseudowire
Section titled “Set pseudowire”Request example to modify a pseudowire via edit-config.
<config><top> <mpls-l2vpn> <pseudowires> <pseudowire operation="merge"> <name>pw1</name> <receive-label>1010</receive-label> </pseudowire> </pseudowires> </mpls-l2vpn></top></config>Response example
<rpc-reply xmlns="urn:ietf:params:xml:ns:netconf:base:1.0" message-id="4"> <ok/></rpc-reply>Delete pseudowire
Section titled “Delete pseudowire”Request example to delete a pseudowire via edit-config.
<config><top> <mpls-l2vpn> <pseudowires> <pseudowire operation="delete"> <name>pw2</name> </pseudowire> </pseudowires> </mpls-l2vpn></top></config>Response example
<rpc-reply xmlns="urn:ietf:params:xml:ns:netconf:base:1.0" message-id="6"> <ok/></rpc-reply>Create VPLS L2VPN instance
Section titled “Create VPLS L2VPN instance”Request example to create a VPLS L2VPN instance via edit-config.
<config><top> <mpls-l2vpn> <l2vpn-instances> <l2vpn-instance operation="create"> <name>vpls1</name> <l2vpn-type>vpls</l2vpn-type> <pseudowire>pw1</pseudowire> <ac-interface>Vlan100</ac-interface> </l2vpn-instance> </l2vpn-instances> </mpls-l2vpn></top></config>Response example
<rpc-reply xmlns="urn:ietf:params:xml:ns:netconf:base:1.0" message-id="3"> <ok/></rpc-reply>Create VPWS L2VPN instance
Section titled “Create VPWS L2VPN instance”Request example to create a VPWS L2VPN instance via edit-config.
<config><top> <mpls-l2vpn> <l2vpn-instances> <l2vpn-instance operation="create"> <name>vpws1</name> <l2vpn-type>vpws</l2vpn-type> <pseudowire>pw2</pseudowire> <ac-interface>Ethernet1</ac-interface> </l2vpn-instance> </l2vpn-instances> </mpls-l2vpn></top></config>Response example
<rpc-reply xmlns="urn:ietf:params:xml:ns:netconf:base:1.0" message-id="4"> <ok/></rpc-reply>Get L2VPN instance
Section titled “Get L2VPN instance”Request example to get an existing L2VPN instance via get-config with subtree filter.
<filter type="subtree"> <top> <mpls-l2vpn> <l2vpn-instances> <l2vpn-instance> <name>vpls1</name> <l2vpn-type>vpls</l2vpn-type> </l2vpn-instance> </l2vpn-instances> </mpls-l2vpn> </top></filter>Response example
<rpc-reply xmlns="urn:ietf:params:xml:ns:netconf:base:1.0" message-id="5"> <data> <top> <mpls-l2vpn xmlns="http://asterfusion.com/ns/yang/asternos-mpls-l2vpn"> <l2vpn-instances> <l2vpn-instance> <name>vpls1</name> <l2vpn-type>vpls</l2vpn-type> <pseudowire>pw1</pseudowire> <ac-interface>Vlan100</ac-interface> </l2vpn-instance> </l2vpn-instances> </mpls-l2vpn> </top> </data></rpc-reply>Delete L2VPN instance
Section titled “Delete L2VPN instance”Request example to delete an L2VPN instance via edit-config.
<config><top> <mpls-l2vpn> <l2vpn-instances> <l2vpn-instance operation="delete"> <name>vpls1</name> <l2vpn-type>vpls</l2vpn-type> </l2vpn-instance> </l2vpn-instances> </mpls-l2vpn></top></config>Response example
<rpc-reply xmlns="urn:ietf:params:xml:ns:netconf:base:1.0" message-id="6"> <ok/></rpc-reply>Create local CCC instance
Section titled “Create local CCC instance”Request example to create a local CCC instance via edit-config.
<config><top> <mpls-l2vpn> <ccc-instances> <ccc-instance operation="create"> <name>ccc1</name> <ccc-type>local</ccc-type> <ac-interface>Ethernet1</ac-interface> <ac-interface>Ethernet2</ac-interface> </ccc-instance> </ccc-instances> </mpls-l2vpn></top></config>Response example
<rpc-reply xmlns="urn:ietf:params:xml:ns:netconf:base:1.0" message-id="7"> <ok/></rpc-reply>Create remote CCC instance
Section titled “Create remote CCC instance”Request example to create a remote CCC instance via edit-config.
<config><top> <mpls-l2vpn> <ccc-instances> <ccc-instance operation="create"> <name>ccc2</name> <ccc-type>remote</ccc-type> <ac-interface>Ethernet3</ac-interface> <transmit-label>2000</transmit-label> <receive-label>2001</receive-label> <nexthop>192.0.2.3</nexthop> </ccc-instance> </ccc-instances> </mpls-l2vpn></top></config>Response example
<rpc-reply xmlns="urn:ietf:params:xml:ns:netconf:base:1.0" message-id="8"> <ok/></rpc-reply>Get CCC instance
Section titled “Get CCC instance”Request example to get a CCC instance via get-config with subtree filter.
<filter type="subtree"> <top> <mpls-l2vpn> <ccc-instances> <ccc-instance> <name>ccc1</name> </ccc-instance> </ccc-instances> </mpls-l2vpn> </top></filter>Response example
<rpc-reply xmlns="urn:ietf:params:xml:ns:netconf:base:1.0" message-id="9"> <data> <top> <mpls-l2vpn xmlns="http://asterfusion.com/ns/yang/asternos-mpls-l2vpn"> <ccc-instances> <ccc-instance> <name>ccc1</name> <ccc-type>local</ccc-type> <ac-interface>Ethernet1</ac-interface> <ac-interface>Ethernet2</ac-interface> </ccc-instance> </ccc-instances> </mpls-l2vpn> </top> </data></rpc-reply>Set CCC instance
Section titled “Set CCC instance”Request example to modify a remote CCC instance via edit-config.
<config><top> <mpls-l2vpn> <ccc-instances> <ccc-instance operation="merge"> <name>ccc2</name> <ccc-type>remote</ccc-type> <transmit-label>3000</transmit-label> <receive-label>3001</receive-label> <nexthop>192.0.2.4</nexthop> </ccc-instance> </ccc-instances> </mpls-l2vpn></top></config>Response example
<rpc-reply xmlns="urn:ietf:params:xml:ns:netconf:base:1.0" message-id="10"> <ok/></rpc-reply>Delete CCC instance
Section titled “Delete CCC instance”Request example to delete a CCC instance via edit-config.
<config><top> <mpls-l2vpn> <ccc-instances> <ccc-instance operation="delete"> <name>ccc2</name> </ccc-instance> </ccc-instances> </mpls-l2vpn></top></config>Response example
<rpc-reply xmlns="urn:ietf:params:xml:ns:netconf:base:1.0" message-id="10"> <ok/></rpc-reply>