
اس مضمون میں، میں آپ کو دکھاؤں گا کہ سیٹ اپ کیسے کریں۔ اوپن ڈے لائٹ نیٹ ورک کے سازوسامان کے ساتھ کام کرنے کے لئے، اور یہ بھی دکھائیں کہ کس طرح استعمال کرنا ہے۔ ڈاکیا اور سادہ RESTCONF درخواستوں، اس سامان کو کنٹرول کیا جا سکتا ہے. ہم ہارڈ ویئر کے ساتھ کام نہیں کریں گے، لیکن اس کے بجائے ہم ایک ہی راؤٹر کے ساتھ چھوٹی ورچوئل لیبارٹریز تعینات کریں گے۔ Vrnetlab ختم Ubuntu 20.04 LTS.
میں روٹر کی مثال کا استعمال کرتے ہوئے پہلے تفصیلی ترتیبات دکھاؤں گا۔ جونیپر vMX 20.1R1.11، اور پھر ہم اس کا موازنہ ترتیب سے کرتے ہیں۔ Cisco xRV9000 7.0.2.
مواد
- مطلوبہ علم
- 1 حصہ: مختصر گفتگو اوپن ڈے لائٹ (اس کے بعد او ڈی ایل۔), ڈاکیا и Vrnetlab اور ہمیں ان کی ضرورت کیوں ہے؟
- 2 حصہ: ورچوئل لیبارٹری کی تفصیل
- 3 حصہ: اپنی مرضی کے مطابق بنائیں اوپن ڈے لائٹ
- 4 حصہ: اپنی مرضی کے مطابق بنائیں Vrnetlab
- 5 حصہ: کا استعمال کرتے ہوئے ڈاکیا ورچوئل راؤٹر کو جوڑیں (جونیپر وی ایم ایکس) کو۔ او ڈی ایل۔
- 6 حصہ: کا استعمال کرتے ہوئے روٹر کنفیگریشن حاصل کریں اور تبدیل کریں۔ ڈاکیا и او ڈی ایل۔
- 7 حصہ: Cisco xRV9000 شامل کریں۔
- حاصل يہ ہوا
- PS
- کتابیات
مطلوبہ علم
مضمون کو شیٹ میں تبدیل نہ کرنے کے لیے، میں نے کچھ تکنیکی تفصیلات (لٹریچر کے لنکس کے ساتھ جہاں آپ ان کے بارے میں پڑھ سکتے ہیں) کو چھوڑ دیا ہے۔
اس سلسلے میں، میں آپ کو ایسے عنوانات پیش کرتا ہوں جنہیں پڑھنے سے پہلے جاننا اچھا ہوگا (لیکن تقریباً ضروری نہیں):
- ,
- /
حصہ 1: کچھ نظریہ

- ہر قسم کے نیٹ ورکس کو منظم اور خودکار کرنے کے لیے ایک کھلا SDN پلیٹ فارم، جس کی حمایت کی گئی ہے۔ Linux فاؤنڈیشن
- جاوا اندر
- ماڈل پر مبنی سروس ایبسٹریکشن لیول (MD-SAL) پر مبنی
- نیٹ ورک ڈیوائسز کے لیے خودکار طور پر RESTCONF APIs بنانے کے لیے YANG ماڈلز کا استعمال کرتا ہے۔
نیٹ ورک مینجمنٹ کے لیے اہم ماڈیول۔ اس کے ذریعے ہی ہم منسلک آلات کے ساتھ بات چیت کریں گے۔ اس کے اپنے API کے ذریعے منظم۔
آپ OpenDaylight کے بارے میں مزید پڑھ سکتے ہیں۔ .

- API ٹیسٹنگ ٹول
- سادہ اور استعمال میں آسان انٹرفیس
ہمارے معاملے میں، ہم OpenDaylight API کو REST درخواستیں بھیجنے کے ایک ذریعہ کے طور پر اس میں دلچسپی رکھتے ہیں۔ آپ بلاشبہ دستی طور پر درخواستیں بھیج سکتے ہیں، لیکن پوسٹ مین میں سب کچھ بالکل واضح نظر آتا ہے اور ہمارے مقاصد کے مطابق ہوتا ہے۔
ان لوگوں کے لئے جو کھودنا چاہتے ہیں: اس پر بہت سارے تربیتی مواد لکھے گئے ہیں ().

- ڈوکر میں ورچوئل راؤٹرز کی تعیناتی کا ٹول
- سپورٹ کرتا ہے: Cisco XRv، Juniper vMX، Arista vEOS، Nokia VSR، وغیرہ۔
- کھلا ماخذ
ایک بہت ہی دلچسپ، ابھی تک بہت کم معلوم ٹول۔ ہمارے معاملے میں، ہم اسے جونیپر vMX اور Cisco xRV9000 کو باقاعدہ چلانے کے لیے استعمال کریں گے۔ Ubuntu 20.04 LTS
آپ اس کے بارے میں مزید پڑھ سکتے ہیں۔ .
حصہ 2: لیب
اس ٹیوٹوریل میں، ہم درج ذیل سسٹم کو ترتیب دیں گے:

یہ کیسے کام کرتا ہے
- جونیپر وی ایم ایکس میں بڑھتا ہے میں Docker کنٹینر (ذریعہ Vrnetlab) اور سب سے عام ورچوئل راؤٹر کے طور پر کام کرتا ہے۔
- او ڈی ایل۔ روٹر سے منسلک ہے اور آپ کو اسے کنٹرول کرنے کی اجازت دیتا ہے۔
- ڈاکیا ایک الگ مشین پر لانچ کیا اور اس کے ذریعے ہم کمانڈ بھیجتے ہیں۔ او ڈی ایل۔: روٹر کو جوڑنے / ہٹانے کے لیے، کنفیگریشن کو تبدیل کرنا، وغیرہ۔
سسٹم کے آلے پر تبصرہ
جونیپر وی ایم ایکس и او ڈی ایل۔ ان کے مستحکم آپریشن کے لیے کافی وسائل درکار ہیں۔ بس ایک vMX 6 جی بی ریم اور 4 کور مانگتا ہے۔ لہذا، تمام "ہیوی ویٹ" کو ایک الگ مشین میں منتقل کرنے کا فیصلہ کیا گیا (ہیولٹ پیکارڈ انٹرپرائز مائیکرو سرور ProLiant Gen8، Ubuntu 20.04 LTS)۔ روٹر، کورس کے، اس پر "اڑ" نہیں ہے، لیکن کارکردگی چھوٹے تجربات کے لئے کافی ہے.
حصہ 3: OpenDaylight ترتیب دیں۔

اس تحریر کے وقت ODL کا موجودہ ورژن میگنیشیم SR1 ہے۔
1) انسٹال کریں۔ جاوا اوپن جے ڈی کے 11 (مزید تفصیلی تنصیب کے لیے )
ubuntu:~$ sudo apt install default-jdk2) تازہ ترین تعمیر تلاش کریں اور ڈاؤن لوڈ کریں۔ او ڈی ایل۔
3) ڈاؤن لوڈ کردہ آرکائیو کو ان زپ کریں۔
4) نتیجے میں آنے والی ڈائریکٹری پر جائیں۔
5) لانچ کریں۔ ./bin/karaf
اس قدم پر او ڈی ایل۔ شروع کرنا چاہئے اور ہم خود کو کنسول میں تلاش کریں گے (پورٹ 8181 باہر سے رسائی کے لئے استعمال کیا جاتا ہے، جسے ہم بعد میں استعمال کریں گے)۔
اگلا، انسٹال کریں او ڈی ایل کی خصوصیاتپروٹوکول کے ساتھ کام کرنے کے لیے ڈیزائن کیا گیا ہے۔ NETCONF и RESTCONF. کنسول میں ایسا کرنے کے لیے او ڈی ایل۔ ہم عملدرآمد کرتے ہیں:
opendaylight-user@root> feature:install odl-netconf-topology odl-restconf-allیہ سب سے آسان سیٹ اپ ہے۔ او ڈی ایل۔ مکمل (مزید تفصیلات کے لیے دیکھیں ).
حصہ 4: Vrnetlab ترتیب دینا

سسٹم کی تیاری
تنصیب سے پہلے۔ Vrnetlab آپ کو اس کے آپریشن کے لیے درکار پیکجز کو انسٹال کرنے کی ضرورت ہے۔ جیسا کہ , , :
ubuntu:~$ sudo apt update
ubuntu:~$ sudo apt -y install python3-bs4 sshpass make
ubuntu:~$ sudo apt -y install git
ubuntu:~$ sudo apt install -y
apt-transport-https ca-certificates
curl gnupg-agent software-properties-common
ubuntu:~$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
ubuntu:~$ sudo add-apt-repository
"deb [arch=amd64] https://download.docker.com/linux/ubuntu
$(lsb_release -cs)
stable"
ubuntu:~$ sudo apt update
ubuntu:~$ sudo apt install -y docker-ce docker-ce-cli containerd.ioVrnetlab انسٹال کرنا
انسٹال کرنا Vrnetlab github سے متعلقہ ذخیرہ کلون کریں:
ubuntu:~$ cd ~
ubuntu:~$ git clone https://github.com/plajjan/vrnetlab.gitڈائریکٹری پر جائیں۔ vrnetlab:
ubuntu:~$ cd ~/vrnetlabیہاں آپ چلانے کے لیے درکار تمام اسکرپٹ دیکھ سکتے ہیں۔ براہ کرم نوٹ کریں کہ ہر قسم کے روٹر کے لیے ایک متعلقہ ڈائرکٹری بنائی گئی ہے۔
ubuntu:~/vrnetlab$ ls
CODE_OF_CONDUCT.md config-engine-lite openwrt vr-bgp
CONTRIBUTING.md csr routeros vr-xcon
LICENSE git-lfs-repo.sh sros vrnetlab.sh
Makefile makefile-install.include topology-machine vrp
README.md makefile-sanity.include veos vsr1000
ci-builder-image makefile.include vmx xrv
common nxos vqfx xrv9kروٹر کی تصویر بنائیں
ہر ایک راؤٹر جو تعاون یافتہ ہے۔ Vrnetlab، اس کا اپنا منفرد سیٹ اپ طریقہ کار ہے۔ کب جونیپر وی ایم ایکس ہمیں صرف روٹر کے ساتھ .tgz آرکائیو اپ لوڈ کرنے کی ضرورت ہے (آپ اسے یہاں سے ڈاؤن لوڈ کر سکتے ہیں۔ ) vmx ڈائریکٹری میں جائیں اور کمانڈ چلائیں۔ make:
ubuntu:~$ cd ~/vrnetlab/vmx
ubuntu:~$ # Копируем в эту директорию .tgz архив с роутером
ubuntu:~$ sudo makeتصویر بنانا vMX تقریباً 10-20 منٹ لگیں گے۔ یہ کافی لینے کا وقت ہے!
کیوں اتنی دیر، آپ پوچھتے ہیں؟
ترجمہ اس سوال کے مصنف:
"اس کی وجہ یہ ہے کہ جب پہلی بار VCP (کنٹرول پلین) شروع ہوتا ہے، تو یہ ایک کنفگ فائل پڑھتا ہے جو اس بات کا تعین کرتا ہے کہ آیا یہ vMX میں VRR VCP کے طور پر چلے گا۔ اس سے پہلے یہ لانچ Docker کے آغاز کے دوران کیا گیا تھا، لیکن اس کا مطلب یہ تھا کہ VCP ورچوئل راؤٹر کے دستیاب ہونے سے پہلے ہمیشہ ایک بار دوبارہ شروع کیا جاتا تھا، جس کے نتیجے میں بوٹ کا طویل وقت ہوتا ہے (تقریباً 5 منٹ) - مراعات یافتہ آپشن، اس کا مطلب ہے کہ qemu KVM ہارڈویئر ایکسلریشن کے بغیر کام کرتا ہے اور اس طرح تعمیر میں کافی وقت لگتا ہے۔ اس عمل کے دوران، بہت سارے لاگ آؤٹ پٹ ہوتے ہیں، اس لیے کم از کم آپ دیکھ سکتے ہیں کہ کیا ہو رہا ہے۔ میرے خیال میں یہ ایک طویل تعمیر ہے۔ اتنا خوفناک نہیں ہے کیونکہ ہم ایک بار ایک تصویر بناتے ہیں، لیکن ہم بہت سی لانچ کرتے ہیں۔"
اس کے بعد آپ ہمارے روٹر کی تصویر دیکھ سکتے ہیں۔ میں 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 101MBvr-vmx کنٹینر لانچ کریں۔
ہم کمانڈ کے ساتھ شروع کرتے ہیں:
ubuntu:~$ sudo docker run -d --privileged --name jun01 b1b2369b453cاگلا، ہم فعال کنٹینرز کے بارے میں معلومات دیکھ سکتے ہیں:
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راؤٹر سے جڑ رہا ہے۔
روٹر کے نیٹ ورک انٹرفیس کا IP ایڈریس درج ذیل کمانڈ سے حاصل کیا جا سکتا ہے۔
ubuntu:~$ sudo docker inspect --format '{{.NetworkSettings.IPAddress}}' jun01
172.17.0.2طے شدہ، Vrnetlab روٹر پر صارف بناتا ہے۔ vrnetlab/VR-netlab9.
کے ساتھ جڑ رہا ہے۔ ssh:
ubuntu:~$ ssh vrnetlab@172.17.0.2
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یہ روٹر سیٹ اپ کو مکمل کرتا ہے۔
مختلف دکانداروں کے روٹرز کے لیے انسٹالیشن کی سفارشات پر مل سکتی ہیں۔ متعلقہ ڈائریکٹریز میں۔
حصہ 5: پوسٹ مین - راؤٹر کو اوپن ڈے لائٹ سے جوڑیں۔
پوسٹ مین کی تنصیب
انسٹال کرنے کے لیے، بس ایپلیکیشن ڈاؤن لوڈ کریں۔ .
روٹر کو ODL سے جوڑنا
آئیے تخلیق کرتے ہیں۔ رکھ درخواست:

- استفسار کا سلسلہ:
PUT http://10.132.1.202:8181/restconf/config/network-topology:network-topology/topology/topology-netconf/node/jun01 - جسم کی درخواست کریں (باڈی ٹیب):
<node xmlns="urn:TBD:params:xml:ns:yang:network-topology"> <node-id>jun01</node-id> <host xmlns="urn:opendaylight:netconf-node-topology">172.17.0.2</host> <port xmlns="urn:opendaylight:netconf-node-topology">22</port> <username xmlns="urn:opendaylight:netconf-node-topology">vrnetlab</username> <password xmlns="urn:opendaylight:netconf-node-topology">VR-netlab9</password> <tcp-only xmlns="urn:opendaylight:netconf-node-topology">false</tcp-only> <schema-cache-directory xmlns="urn:opendaylight:netconf-node-topology">jun01_cache</schema-cache-directory> </node> - اجازت دینے والے ٹیب پر، آپ کو پیرامیٹر سیٹ کرنا ہوگا۔
Basic Authاور لاگ ان/پاس ورڈ: ایڈمن/ایڈمن۔ ODL تک رسائی کے لیے یہ ضروری ہے:

- ہیڈرز ٹیب پر، آپ کو دو ہیڈر شامل کرنے کی ضرورت ہے:
- درخواست/xml قبول کریں۔
- مواد کی قسم کی درخواست/xml
ہماری درخواست کی گئی ہے۔ ہم بھیجتے ہیں. اگر سب کچھ صحیح طریقے سے ترتیب دیا گیا تھا، تو ہمیں "201 تخلیق" کی حیثیت واپس کرنی چاہئے:
![]()
یہ درخواست کیا کرتی ہے؟
ہم اندر نوڈ بناتے ہیں۔ او ڈی ایل۔ حقیقی راؤٹر کے پیرامیٹرز کے ساتھ جس تک ہم رسائی حاصل کرنا چاہتے ہیں۔
xmlns="urn:TBD:params:xml:ns:yang:network-topology"
xmlns="urn:opendaylight:netconf-node-topology"یہ اندرونی نام کی جگہیں ہیں۔ XML (XML نام کی جگہ) کے لئے او ڈی ایل۔ جس کے مطابق یہ نوڈ بناتا ہے۔
مزید، بالترتیب، روٹر کا نام ہے node-id, راؤٹر کا پتہ - میزبان اور اسی طرح.
سب سے دلچسپ لائن آخری ہے۔ سکیما کیشے ڈائرکٹری ایک ڈائریکٹری بناتا ہے جہاں تمام فائلیں ڈاؤن لوڈ ہوتی ہیں۔ یانگ سکیما منسلک راؤٹر. آپ انہیں اس میں تلاش کر سکتے ہیں۔ $ODL_ROOT/cache/jun01_cache.
روٹر کا کنکشن چیک کر رہا ہے۔
آئیے تخلیق کرتے ہیں۔ حاصل کریں درخواست:
- استفسار کا سلسلہ:
GET http://10.132.1.202:8181/restconf/operational/network-topology:network-topology/topology/topology-netconf/ - اجازت دینے والے ٹیب پر، آپ کو پیرامیٹر سیٹ کرنا ہوگا۔
Basic Authاور لاگ ان/پاس ورڈ: ایڈمن/ایڈمن۔
ہم بھیجتے ہیں. "200 اوکے" کی حیثیت اور آلے کے ذریعہ تعاون یافتہ سبھی کی فہرست موصول ہونی چاہئے۔ یانگ سکیما:

تبصرہ: مؤخر الذکر کو دیکھنے کے لیے، میرے معاملے میں پھانسی کے بعد تقریباً 10 منٹ انتظار کرنا ضروری تھا۔ رکھسب تک یانگ اسکیما پر اتارنا او ڈی ایل۔. اس مقام تک، جب یہ انجام دے رہے ہیں۔ حاصل کریں استفسار درج ذیل کو ظاہر کرے گا:

روٹر کو حذف کریں۔
آئیے تخلیق کرتے ہیں۔ DELETE درخواست:
- استفسار کا سلسلہ:
DELETE http://10.132.1.202:8181/restconf/config/network-topology:network-topology/topology/topology-netconf/node/jun01 - اجازت دینے والے ٹیب پر، آپ کو پیرامیٹر سیٹ کرنا ہوگا۔
Basic Authاور لاگ ان/پاس ورڈ: ایڈمن/ایڈمن۔
حصہ 6: روٹر کی ترتیب کو تبدیل کریں۔
ترتیب حاصل کرنا
آئیے تخلیق کرتے ہیں۔ حاصل کریں درخواست:
- استفسار کا سلسلہ:
GET http://10.132.1.202:8181/restconf/config/network-topology:network-topology/topology/topology-netconf/node/jun01/yang-ext:mount/ - اجازت دینے والے ٹیب پر، آپ کو پیرامیٹر سیٹ کرنا ہوگا۔
Basic Authاور لاگ ان/پاس ورڈ: ایڈمن/ایڈمن۔
ہم بھیجتے ہیں. اسٹیٹس "200 اوکے" اور روٹر کنفیگریشن حاصل کرنا چاہیے:

ایک ترتیب بنائیں
مثال کے طور پر، آئیے درج ذیل کنفیگریشن بنائیں اور اس میں ترمیم کریں:
protocols {
bgp {
disable;
shutdown;
}
}آئیے تخلیق کرتے ہیں۔ POST درخواست:
- استفسار کا سلسلہ:
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 - جسم کی درخواست کریں (باڈی ٹیب):
<bgp xmlns="http://yang.juniper.net/junos/conf/protocols"> <disable/> <shutdown> </shutdown> </bgp> - اجازت دینے والے ٹیب پر، آپ کو پیرامیٹر سیٹ کرنا ہوگا۔
Basic Authاور لاگ ان/پاس ورڈ: ایڈمن/ایڈمن۔ - ہیڈرز ٹیب پر، آپ کو دو ہیڈر شامل کرنے کی ضرورت ہے:
- درخواست/xml قبول کریں۔
- مواد کی قسم کی درخواست/xml
بھیجنے کے بعد، انہیں "204 کوئی مواد نہیں" کا درجہ ملنا چاہیے۔
یہ چیک کرنے کے لیے کہ کنفیگریشن بدل گئی ہے، آپ پچھلی استفسار استعمال کر سکتے ہیں۔ لیکن مثال کے طور پر، ہم ایک اور بنائیں گے جو صرف روٹر پر کنفیگر کیے گئے پروٹوکولز کے بارے میں معلومات ظاہر کرے گا۔
آئیے تخلیق کرتے ہیں۔ حاصل کریں درخواست:
- استفسار کا سلسلہ:
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 - اجازت دینے والے ٹیب پر، آپ کو پیرامیٹر سیٹ کرنا ہوگا۔
Basic Authاور لاگ ان/پاس ورڈ: ایڈمن/ایڈمن۔
درخواست پر عمل کرنے کے بعد، ہم مندرجہ ذیل دیکھیں گے:

ترتیب کو تبدیل کریں۔
آئیے BGP پروٹوکول کے بارے میں معلومات کو تبدیل کرتے ہیں۔ ہمارے اعمال کے بعد، یہ اس طرح نظر آئے گا:
protocols {
bgp {
disable;
}
}آئیے تخلیق کرتے ہیں۔ رکھ درخواست:
- استفسار کا سلسلہ:
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 - جسم کی درخواست کریں (باڈی ٹیب):
<protocols xmlns="http://yang.juniper.net/junos/conf/protocols"> <bgp> <disable/> </bgp> </protocols> - اجازت دینے والے ٹیب پر، آپ کو پیرامیٹر سیٹ کرنا ہوگا۔
Basic Authاور لاگ ان/پاس ورڈ: ایڈمن/ایڈمن۔ - ہیڈرز ٹیب پر، آپ کو دو ہیڈر شامل کرنے کی ضرورت ہے:
- درخواست/xml قبول کریں۔
- مواد کی قسم کی درخواست/xml
پچھلے کا استعمال کرتے ہوئے حاصل کریں درخواست کریں، ہم تبدیلیاں دیکھتے ہیں:

ترتیب کو حذف کریں۔
آئیے تخلیق کرتے ہیں۔ DELETE درخواست:
- استفسار کا سلسلہ:
DELETE 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 - اجازت دینے والے ٹیب پر، آپ کو پیرامیٹر سیٹ کرنا ہوگا۔
Basic Authاور لاگ ان/پاس ورڈ: ایڈمن/ایڈمن۔
جب بلایا حاصل کریں پروٹوکول کے بارے میں معلومات کے ساتھ درخواست کریں، ہم درج ذیل دیکھیں گے:

اضافہ:
ترتیب کو تبدیل کرنے کے لیے، فارمیٹ میں درخواست کا باڈی بھیجنا ضروری نہیں ہے۔ XML. یہ فارمیٹ میں بھی کیا جا سکتا ہے۔ JSON.
ایسا کرنے کے لیے، مثال کے طور پر، استفسار میں رکھ کنفیگریشن کو تبدیل کرنے کے لیے، ریکوسٹ باڈی کو اس سے تبدیل کریں:
{
"junos-conf-protocols:protocols": {
"bgp": {
"description" : "Changed in postman"
}
}
}ہیڈرز ٹیب پر ہیڈر کو تبدیل کرنا نہ بھولیں:
- درخواست قبول کریں/json
- مواد کی قسم کی درخواست/json
بھیجنے کے بعد، ہمیں درج ذیل نتیجہ ملے گا (ہم استعمال کرتے ہوئے جواب کو دیکھتے ہیں۔ حاصل کریں درخواست):

حصہ 7: Cisco xRV9000 شامل کرنا
ہم سب جونیپر کے بارے میں کیا ہیں، ہاں جونیپر؟ آئیے سسکو کے بارے میں بات کرتے ہیں!
مجھے xRV9000 ورژن 7.0.2 ملا (ایک ایسا جانور جس کو 8 جی بی ریم اور 4 کور کی ضرورت ہے۔ یہ آزادانہ طور پر دستیاب نہیں ہے، لہذا رابطہ کریں ) - آئیے اسے چلائیں۔
کنٹینر چلانا
ڈوکر کنٹینر بنانے کا عمل عملی طور پر جونیپر سے مختلف نہیں ہے۔ اسی طرح، ہم راؤٹر کے ساتھ .qcow2 فائل کو اس کے نام کے مطابق ڈائرکٹری میں ڈالتے ہیں (اس صورت میں، xrv9k) اور کمانڈ کو عمل میں لاتے ہیں۔ 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ہم کنٹینر شروع کرتے ہیں:
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 xrv01ssh کے ذریعے جڑیں:
ubuntu@ubuntu:~$ ssh vrnetlab@172.17.0.2
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راؤٹر کو OpenDaylight سے جوڑ رہا ہے۔
شامل کرنا vMX کے ساتھ بالکل اسی طرح ہوتا ہے۔ ہمیں صرف نام بدلنے کی ضرورت ہے۔
رکھ درخواست:

تھوڑی دیر بعد کال کریں۔ حاصل کریں یہ چیک کرنے کے لیے استفسار کریں کہ سب کچھ منسلک ہے:

ترتیب کو تبدیل کریں۔
آئیے درج ذیل کنفیگریشن ترتیب دیں:
!
router ospf LAB
mpls ldp auto-config
!آئیے تخلیق کرتے ہیں۔ POST درخواست:
- استفسار کا سلسلہ:
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 - جسم کی درخواست کریں (باڈی ٹیب):
{ "processes": { "process": [ { "process-name": "LAB", "default-vrf": { "process-scope": { "ldp-auto-config": [ null ] } } } ] } } - اجازت دینے والے ٹیب پر، آپ کو پیرامیٹر سیٹ کرنا ہوگا۔
Basic Authاور لاگ ان/پاس ورڈ: ایڈمن/ایڈمن۔ - ہیڈرز ٹیب پر، آپ کو دو ہیڈر شامل کرنے کی ضرورت ہے:
- درخواست قبول کریں/json
- مواد کی قسم کی درخواست/json
اس کے نفاذ کے بعد، انہیں "204 کوئی مواد نہیں" کا درجہ ملنا چاہیے۔
آئیے چیک کریں کہ ہمیں کیا ملا۔
ایسا کرنے کے لیے، ہم بنائیں گے حاصل کریں درخواست:
- استفسار کا سلسلہ:
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 - اجازت دینے والے ٹیب پر، آپ کو پیرامیٹر سیٹ کرنا ہوگا۔
Basic Authاور لاگ ان/پاس ورڈ: ایڈمن/ایڈمن۔
پھانسی کے بعد، آپ کو مندرجہ ذیل دیکھنا چاہئے:

کنفیگریشن کو ہٹانے کے لیے استعمال کریں۔ DELETE:
- استفسار کا سلسلہ:
DELETE 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 - اجازت دینے والے ٹیب پر، آپ کو پیرامیٹر سیٹ کرنا ہوگا۔
Basic Authاور لاگ ان/پاس ورڈ: ایڈمن/ایڈمن۔
حاصل يہ ہوا
مجموعی طور پر، جیسا کہ آپ نے دیکھا ہو گا، سسکو اور جونیپر کو OpenDaylight سے جوڑنے کے طریقہ کار میں فرق نہیں ہے - اس سے تخلیقی صلاحیتوں کے لیے کافی وسیع گنجائش کھل جاتی ہے۔ نیٹ ورک کے تمام اجزاء کے کنفیگریشن مینجمنٹ سے شروع ہو کر آپ کے اپنے نیٹ ورک کی پالیسیوں کی تخلیق کے ساتھ اختتام پذیر ہوتا ہے۔
اس ٹیوٹوریل میں، میں نے آسان ترین مثالیں دی ہیں کہ آپ اوپن ڈے لائٹ کا استعمال کرتے ہوئے نیٹ ورک کے آلات کے ساتھ کیسے تعامل کر سکتے ہیں۔ بلا شبہ، مندرجہ بالا مثالوں سے استفسارات کو زیادہ پیچیدہ بنایا جا سکتا ہے اور ماؤس کے ایک کلک سے پوری خدمات کو ترتیب دیا جا سکتا ہے - سب کچھ صرف آپ کے تخیل سے محدود ہے*
جاری رکھنا ...
PS
اگر آپ کو یہ سب کچھ اچانک معلوم ہو گیا ہے یا، اس کے برعکس، آپ ODL کی روح میں دھنس چکے ہیں، تو میں تجویز کرتا ہوں کہ ODL کنٹرولر پر ایپلی کیشنز تیار کرنے کی طرف دیکھیں۔ آپ شروع کر سکتے ہیں۔ .
کامیاب تجربات!
حوالہ جات
- / برائن لنک لیٹر
- OpenDaylight Cookbook / Mathieu Lemay، Alexis de Talhouet، Et al
- YANG / Benoit Claise، Loe Clarke، Jan Lindblad کے ساتھ نیٹ ورک پروگرامیبلٹی
- ایکس ایم ایل سیکھنا، دوسرا ایڈیشن / ایرک ٹی رے
- موثر ڈی او اوپس / جینیفر ڈیوس، رین ڈینیئلز
ماخذ: www.habr.com

