Kwa ife, tili ndi chidwi ndi izi ngati njira yotumizira zopempha za REST ku OpenDaylight API. Mukhoza, ndithudi, kutumiza zopempha pamanja, koma mu Postman chirichonse chikuwoneka bwino kwambiri ndipo chikugwirizana ndi zolinga zathu mwangwiro.
Pa sitepe iyi ODL tiyenera kuyamba ndipo tidzadzipeza tokha mu kontrakitala (Port 8181 imagwiritsidwa ntchito kuchokera kunja, yomwe tidzagwiritsa ntchito pambuyo pake).
Kenako, kukhazikitsa Zithunzi za ODLidapangidwa kuti igwire ntchito ndi ma protocol NETCONF и Zotsatira RESTCONF. Kuti muchite izi mu console ODL timachita:
Mukatha kuwona chithunzi cha rauta yathu mkati Docker:
ubuntu:~$ sudo docker image list
REPOSITORY TAG IMAGE ID CREATED SIZE
vrnetlab/vr-vmx 20.1R1.11 b1b2369b453c 3 weeks ago 4.43GB
debian stretch 614bb74b620e 7 weeks ago 101MB
Yambitsani chidebe cha vr-vmx
Timayamba ndi lamulo:
ubuntu:~$ sudo docker run -d --privileged --name jun01 b1b2369b453c
Kenako, titha kuwona zambiri za zotengera zomwe zikugwira ntchito:
ubuntu:~$ sudo docker container list
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
120f882c8712 b1b2369b453c "/launch.py" 2 minutes ago Up 2 minutes (unhealthy) 22/tcp, 830/tcp, 5000/tcp, 10000-10099/tcp, 161/udp jun01
Kulumikizana ndi rauta
Adilesi ya IP ya mawonekedwe a netiweki a rauta atha kupezeka ndi lamulo ili:
Zosasintha, Vrnetlab amapanga wosuta pa rauta vrnetlab/VR-netlab9.
Kulumikizana ndi ssh:
ubuntu:~$ ssh [email protected]
The authenticity of host '172.17.0.2 (172.17.0.2)' can't be established.
ECDSA key fingerprint is SHA256:g9Sfg/k5qGBTOX96WiCWyoJJO9FxjzXYspRoDPv+C0Y.
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
Warning: Permanently added '172.17.0.2' (ECDSA) to the list of known hosts.
Password:
--- JUNOS 20.1R1.11 Kernel 64-bit JNPR-11.0-20200219.fb120e7_buil
vrnetlab> show version
Model: vmx
Junos: 20.1R1.11
Izi zimamaliza kukhazikitsa rauta.
Malangizo oyika ma routers a ogulitsa osiyanasiyana angapezeke pa github polojekiti m'makanema osiyanasiyana.
Gawo 5: Postman - polumikiza rauta ku OpenDaylight
POST http://10.132.1.202:8181/restconf/config/network-topology:network-topology/topology/topology-netconf/node/jun01/yang-ext:mount/junos-conf-root:configuration/junos-conf-protocols:protocols
Pa tabu ya Authorization, muyenera kukhazikitsa parameter Basic Auth ndi kulowa / achinsinsi: admin/admin.
Pa Headers tabu, muyenera kuwonjezera mitu iwiri:
Landirani kugwiritsa ntchito/xml
Content-Type application/xml
Akatumiza, ayenera kulandira "204 No Content"
Kuti muwone ngati kasinthidwe kasintha, mutha kugwiritsa ntchito funso lakale. Koma mwachitsanzo, tidzapanga ina yomwe idzawonetse zambiri za ma protocol omwe adakhazikitsidwa pa router.
Tiyeni tipange GETANI pempho:
Funso chingwe:
GET http://10.132.1.202:8181/restconf/config/network-topology:network-topology/topology/topology-netconf/node/jun01/yang-ext:mount/junos-conf-root:configuration/junos-conf-protocols:protocols
Pa tabu ya Authorization, muyenera kukhazikitsa parameter Basic Auth ndi kulowa / achinsinsi: admin/admin.
Pambuyo pochita pempho, tiwona zotsatirazi:
Sinthani kasinthidwe
Tiyeni tisinthe zambiri za protocol ya BGP. Pambuyo pa zochita zathu, zidzawoneka motere:
protocols {
bgp {
disable;
}
}
Tiyeni tipange Ikani pempho:
Funso chingwe:
PUT http://10.132.1.202:8181/restconf/config/network-topology:network-topology/topology/topology-netconf/node/jun01/yang-ext:mount/junos-conf-root:configuration/junos-conf-protocols:protocols
Kodi tonse ndife Juniper, inde Juniper? Tiye tikambirane za Cisco!
Ndinapeza xRV9000 version 7.0.2 (chirombo chomwe chimafuna 8Gb RAM ndi 4 cores. Sichikupezeka kwaulere, choncho funsani Cisco) - tiyeni tiyendetse.
Kuyendetsa chidebe
Njira yopangira chidebe cha Docker sizosiyana kwenikweni ndi Juniper. Mofananamo, timagwetsa fayilo ya .qcow2 ndi rauta mu bukhu lolingana ndi dzina lake (pankhaniyi, xrv9k) ndikuchita lamulo. make docker-image.
ubuntu:~$ sudo docker image ls
REPOSITORY TAG IMAGE ID CREATED SIZE
vrnetlab/vr-xrv9k 7.0.2 54debc7973fc 4 hours ago 1.7GB
vrnetlab/vr-vmx 20.1R1.11 b1b2369b453c 4 weeks ago 4.43GB
debian stretch 614bb74b620e 7 weeks ago 101MB
Timayamba pansi:
ubuntu:~$ sudo docker run -d --privileged --name xrv01 54debc7973fc
ubuntu:~$ sudo docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
058c5ecddae3 54debc7973fc "/launch.py" 4 hours ago Up 4 hours (healthy) 22/tcp, 830/tcp, 5000-5003/tcp, 10000-10099/tcp, 161/udp xrv01
Lumikizani kudzera pa ssh:
ubuntu@ubuntu:~$ ssh [email protected]
Password:
RP/0/RP0/CPU0:ios#show version
Mon Jul 6 12:19:28.036 UTC
Cisco IOS XR Software, Version 7.0.2
Copyright (c) 2013-2020 by Cisco Systems, Inc.
Build Information:
Built By : ahoang
Built On : Fri Mar 13 22:27:54 PDT 2020
Built Host : iox-ucs-029
Workspace : /auto/srcarchive15/prod/7.0.2/xrv9k/ws
Version : 7.0.2
Location : /opt/cisco/XR/packages/
Label : 7.0.2
cisco IOS-XRv 9000 () processor
System uptime is 3 hours 22 minutes
Kulumikiza rauta ku OpenDaylight
Kuwonjezera kumachitika mofanana ndi vMX. Tingofunika kusintha mayina. Ikani pempho:
POST http://10.132.1.202:8181/restconf/config/network-topology:network-topology/topology/topology-netconf/node/xrv01/yang-ext:mount/Cisco-IOS-XR-ipv4-ospf-cfg:ospf
GET http://10.132.1.202:8181/restconf/config/network-topology:network-topology/topology/topology-netconf/node/xrv01/yang-ext:mount/Cisco-IOS-XR-ipv4-ospf-cfg:ospf
Pa tabu ya Authorization, muyenera kukhazikitsa parameter Basic Auth ndi kulowa / achinsinsi: admin/admin.