امیرحسین تنگسیری نژاد
مهندس و مدرس شبکه و امنیت سایبری و مدیر کل جزیره هک و امنیت اطلاعات توسینسو

معرفی فرآیند Network Automation در تجهیزات هواوی ( Huawei )

زبان قدرتمند Python که این روزا از محبوبیت بسیار بالا در بین افراد فعال در حوزه شبکه نیز برخوردار میباشد دارای ماژول های متعددی به منظور پیاده سازی فرآیند های اتومیت شده شبکه میباشد به این گونه که این ماژول ها روز به روز درحال افزایش میباشند.

دوره های شبکه، برنامه نویسی، مجازی سازی، امنیت، نفوذ و ... با برترین های ایران

فرآیند Network Automation چیست؟

بحث Network Automation که در یک بخش از آن که به بخش Programming نیز معروف میباشد ما تسلط پیدا خواهیم کرد بر روی نحوه پیکربندی دیوایس ها و تجهیزات خودمان به شکل آسان تر و سریع تری با استفاده از API ها و Library های که دراخیتار ما قرار دارند. 

ماژول napalm-huawei-vrp در Python چیست؟

این ماژول همانطور که از اسم آن نیز پیداست یک ماژول به منظور انجام فرآیند های Network Automation بر روی سیستم عامل VRP(سیستم عامل دیوایس های Huawei) میباشد.با استفاده از این ماژول ما توانایی پیاده سازی پیکربندی های مختلف و بررسی آنهارا بر روی دیوایس های شرکت Huawei مانند سوییچ ها و روتر های آن را پیدا خواهیم کرد. از جمله API های که در این ماژول وجود دارد عبارتند از:

  • بررسی load_merge_candidate(): این API وظیفه Load سازی پیکربندی های مورد نظر ما را دارد‌.
  • بررسی get_config(): توانایی دیدن پیکربندی های انجام شده بر روی دیوایس مورد نظر را به ما میدهد
  • بررسی get_mac_address_table() Get: اطلاعات Mac Table دیوایس مورد نظر را نمایش میدهد
  • بررسی ping(): توانایی Ping کردن یک آدرس IP را به ما میدهد
  • بررسی cli(): توانایی اجرا سازی دستورات مختلف را به ما ارائه میدهد
  • بررسی get_interfaces(): اطلاعات رابط های مختلف دیوایس‌مان را به ما نشان میدهد
  • بررسی get_interfaces_ip(): توانایی دیدن اطلاعات آدرس IP رابط های دیوایسمان را به ما میدهد 
  • بررسی get_arp_table(): توانایی دیدن Arp Table دیوایس مورد نظرمان را به ما میدهد

نحوه نصب napalm-huawei-vrp 

برای نصب این ماژول کافیست از دستور زیر استفاده کنید

pip install napalm-huawei-vrp

درصورت نیاز به ارتقا دادن آن به نسخه های جدید تر نیز میبایست از دستور زیر استفاده کنید

pip install --upgrade napalm-huawei-vrp

مثالی از کد نویسی با استفاده از napalm-huawei-vrp به منظور انجام فرآیند Network Automation بر روی تجهیزات Huawei

from napalm import get_network_driver
driver = get_network_driver('huawei_vrp')
device = driver(hostname='192.168.76.10', username='admin', password='this_is_not_a_secure_password')
device.open()
get_facts = device.get_facts()
print(get_facts)
send_command = device.cli(['dis ver', 'dis cu'])

موفق باشید.


امیرحسین تنگسیری نژاد
امیرحسین تنگسیری نژاد

مهندس و مدرس شبکه و امنیت سایبری و مدیر کل جزیره هک و امنیت اطلاعات توسینسو

متخصص امنیت اطلاعات و کارشناس شکار تهدیدات بانک ملی ایران ، دارای مدارک مختلف از Splunk و AWS و Fortinet و Huawei حوزه اصلی فعالیت بنده در زمینه شبکه مباحث R&S و Service Provider می‌باشد و در زمینه امنیت نیز در موقعیت های مختلفی مانند PenTest و SoC فعالیت داشته و دارم. سابقه همکاری با بعضی سازمان های در قالب پروژه و... را داشته ام الان به عنوان تحلیلگر امنیت سایبری در زیرساخت بانک ملی مشغول به کار هستم. لینکداین: https://www.linkedin.com/in/amirhoseintangsirinezhad/

نظرات