مترپرتر دارای یکسری روتین ها (API مترپرتر) یا فراخوان های API یا همان API Calls می باشد که از پیش ایجاد شده و شما می توانید از آنها در اسکریپت های خود استفاده کنید. در اینجا به یکسری از رایج ترین فراخوان های API مترپرتر برای نوشتن اسکریپت های مترپرتر می پردازیم.
API در مترپرتر
به این منظور ساده ترین کار تست موارد درون شل irb در مترپرتر می باشد. چرا که به صورت مستقیم فراخوان API ارسال شده و نتیجه بازگشتی مشاهده می شود. برای دسترسی به irb درون مترپرتر دستور irb را وارد کنید.
کار را با یک فراخوان ساده به منظور جمع آوری اطلاعات از سیستم هدف شروع می کنیم. می خواهیم نام ماشین سیستم هدف را بدست آوریم. به این منظور API مترپرتر زیر را فراخوانی می کنیم :
client.sys.config.sysinfo
همانطور که مشاهده می کنید در irb , یکسری از مقادیر بازگشت داده می شوند. در صورتیکه می خواهید نوع مقادیر بازگشتی را بدانید , می توانید از آبجکت class استفاده کنیم :
client.sys.config.sysinfo.class
اجرای فراخوان بالا مقدار Hash را بازگشت خواهد داد. اکنون می توانید عناصر این هش را از طریق کلیدهایش ببینیم. فرض کنید می خواهید نسخه سیستم عامل را دریافت کنید. به این منظور کلید OS را وارد می کنیم.
خب اکنون می خواهیم تا اعتبارنامه ها (شناسه یوزر در حال اجرا) را دریافت کنیم . به این منظور از فراخوان زیر استفاده می کنیم :
client.sys.config.getuid
برای بدست آوردن شناسه فرایند نشست در حال اجرا روی سیستم هدف نیز از فراخوان زیر استفاده می کنیم :
client.sys.process.getpid
از فراخوان های API مترپرتر تحت مسیر client.sys.net به منظور جمع آوری اطلاعات درباره پیکربندی شبکه و محیط میزبان استفاده می کنیم. به منظور دریافت لیستی از رابط های کاربری و پیکربندی آنها از فراخوان زیر استفاده می کنیم :
client.net.config.interfaces
اگر مقدار کلاس را اضافه کنیم :
client.net.config.interfaces.class
خواهیم دید که یک Array آرایه بازگشت داده می شود. می توانید با استفاده از تکرارکننده each در روبی بین آبجکت های آرایه جابجا شده و موارد زیادی را استخراج کنیم . اطلاعاتی همچون رابط های شبکه و مک آدرس و آدرس آیپی آنها و …
خوشحال می شویم دیدگاههای خود را در میان بگذارید * فرصت پاسخگویی به سوالات در بلاگ وجود ندارد