| BATCTL(8) | ابزار کنترل B.A.T.M.A.N. Advanced | BATCTL(8) |
نام (NAME)
batctl - ابزار کنترل و مدیریت B.A.T.M.A.N. advanced
خلاصه دستور (SYNOPSIS)
batctl [گزینهها] دستور|جدول اشکالزدایی|JSON اشکالزدایی [پارامترها]
توضیحات (DESCRIPTION)
دستور batctl روشی آسان برای پیکربندی ماژول کرنل batman-adv و همچنین نمایش اطلاعات اشکالزدایی مانند جدولهای مبدا و جدولهای ترجمه فراهم میکند. در ترکیب با یک فایل bat-hosts، ابزار batctl امکان استفاده از نام میزبان به جای نشانیهای MAC را میدهد.
پروتکل B.A.T.M.A.N. advanced در لایه ۲ عمل میکند. بنابراین تمام میزبانهای حاضر در شبکه سوییچشده مجازی، برای تمام پروتکلهای بالاتر از لایه ۲ بهصورت شفاف به یکدیگر متصل میشوند. از این رو ابزارهای معمول عیبیابی آنگونه که انتظار میرود کار نمیکنند. برای رفع این مشکلات، batctl شامل دستورهای ping، traceroute و tcpdump است که قابلیتی مشابه دستورهای معمول ping(1)، traceroute(1) و tcpdump(1) فراهم میکنند، اما برای رفتار در لایه ۲ یا استفاده از پروتکل B.A.T.M.A.N. advanced بهینهسازی شدهاند. به دلایل مشابه، دستور throughputmeter برای ارزیابی کارایی شبکه نیز گنجانده شده است.
گزینهها (OPTIONS)
دستورها (COMMANDS)
- bisect_iv [-l MAC][-t MAC][-r MAC][-s min [- max]][-o MAC][-n] logfile1 ...
- تحلیل فایلهای گزارش B.A.T.M.A.N. IV جهت ساخت یک پایگاهداده داخلی کوچک از تمام شمارههای ترتیبی ارسالشده و تغییرات جدول مسیریابی. سپس این پایگاهداده را میتوان به روشهای مختلفی تحلیل کرد. با -l میتوان از پایگاهداده برای جستجوی حلقههای مسیریابی استفاده کرد. از -t برای ردیابی OGMهای یک میزبان در سرتاسر شبکه استفاده کنید. از -r برای نمایش جدولهای مسیریابی گرهها استفاده کنید. گزینه -s میتواند برای محدود کردن خروجی به محدودهای از شمارههای ترتیبی میان min و max، یا به یک شماره ترتیبی مشخص min به کار رود. علاوه بر این، با استفاده از -o میتوانید خروجی را برای یک مبدا مشخص فیلتر کنید. اگر -n داده شود، batctl نشانیهای MAC را با نامهای bat-host در خروجی جایگزین نخواهد کرد.
- event|e [-t|-r]
- دستور batctl رویدادها را از رابط کرنل netlink مربوط به batman-adv پایش میکند. در صورت مشخص شدن پارامتر -t، برچسب زمانی محلی رویداد چاپ خواهد شد. پارامتر -r همان عمل را با برچسب زمانی نسبی انجام میدهد.
- [meshif netdev] interface|if
- [meshif netdev] interface|if [-M] add|del iface ...
- اگر پارامتری داده نشود یا اولین پارامتر نه "add" و نه "del" باشد، تنظیمات فعلی رابط نمایش داده میشود. جهت افزودن یا حذف رابطها، "add" یا "del" را به عنوان اولین آرگومان مشخص کرده و نام رابطهای مورد نظر برای افزودن یا حذف را اضافه کنید. میتوان چندین رابط را مشخص کرد. گزینه -M به batctl اعلام میکند که هنگام "add" رابط batman-adv را بهطور خودکار ایجاد نکند. همچنین میتوان از آن برای چشمپوشی از هشدار تخریب دستی در زمانی که "del" تمام رابطهای متعلق به آن را حذف کرده استفاده کرد.
- [meshif netdev] interface|if create [routing_algo|ra RA_NAME]
- یک رابط batman-adv بدون رابطهای متصل را میتوان با "create" ایجاد کرد. پارامتر routing_algo میتواند برای بازنویسی الگوریتم مسیریابی (پیشفرض) استفاده شود.
- [meshif netdev] interface|if destroy
- حذف تمام رابطهای متصل و نابود کردن رابط batman-adv.
- [meshif netdev] ping|p [-c count][-i interval][-t time][-R][-T] MAC_address|bat-host_name|host_name|IP_address
- ارسال پینگ لایه ۲ به یک نشانی MAC یا نام bat-host. در صورتی که پارامتر دادهشده نشانی MAC نباشد، batctl تلاش میکند نام bat-host را پیدا کند. همچنین در صورتی که نشانی IPv4/IPv6 بر روی رابط batman-adv دستگاه مقصد پیکربندی شده باشد و هر دو دستگاه مبدا و مقصد در یک زیرشبکه IP باشند، میتواند تلاش کند نشانی MAC را با استفاده از نشانی IPv4/IPv6 یا یک نام میزبان حدس بزند. گزینه -c به batctl میگوید پیش از خروج برنامه چه تعداد پینگ باید ارسال شود. بدون گزینه -c ابزار batctl پینگ گرفتن را بدون پایان ادامه میدهد. از CTRL + C برای متوقف کردن آن استفاده کنید. با -i و -t میتوانید فاصله زمانی پیشفرض بین پینگها و مهلت زمانی پاسخها را بر حسب ثانیه مشخص کنید. هنگام اجرا با -R، مسیر طیشده توسط پیامهای پینگ ثبت خواهد شد. با -T میتوانید ترجمه خودکار نشانی MAC کلاینت به نشانی مبدایی که مسئول این کلاینت است را غیرفعال کنید.
- routing_algo|ra [algorithm]
- اگر پارامتری داده نشود، پیکربندی فعلی الگوریتم مسیریابی و همچنین الگوریتمهای مسیریابی پشتیبانیشده نمایش داده میشوند. در غیر این صورت، این پارامتر برای انتخاب الگوریتم مسیریابی رابط batX بعدی که ایجاد میشود استفاده خواهد شد.
- [meshif netdev] statistics|s
- دریافت
شمارندههای
ترافیک از
ماژول هسته
batman-adv. خروجی
ممکن است
بسته به
ویژگیهایی
که درون
ماژول هسته
کامپایل
شدهاند
متفاوت
باشد.
هر زیرسیستم ماژول شمارندههای اختصاصی خود را دارد که با پیشوند آنها مشخص میشوند:
تمامی شمارندههای بدون پیشوند مربوط به ترافیک بار داده (دادههای خالص کاربر) هستند.mgmt شمارندههای پروتکل مش tt شمارندههای جدول ترجمه - tcpdump|td [-c][-n][-p filter][-x filter] interface ...
- ابزار batctl
تمامی
بستههای
دیدهشده
روی
رابط(های)
مشخصشده
را نمایش
میدهد.
گزینههای
مختلفی
برای فیلتر
کردن خروجی
در دسترس
است: برای
چاپ
بستههایی
که با شماره
سازگاری batctl
مطابقت
دارند،
گزینه -c
(فیلتر
سازگاری) را
مشخص کنید.
اگر -n داده
شود، batctl
نشانیهای
MAC را با
نامهای bat-host
در خروجی
جایگزین
نخواهد کرد.
برای فیلتر
کردن انواع
بستههای
نمایشیافته
میتوانید
از -p (تنها
تخلیه
انواع
بستههای
مشخصشده)
یا -x (تخلیه
تمامی
بستهها به
جز موارد
مشخصشده)
استفاده
کنید. انواع
بستههای
زیر موجود
هستند:
مثال: batctl td <interface> -p 129 -> تنها نمایش بستههای ogm بتمن و بستههای غیر بتمن1 بستههای ogm بتمن 2 بستههای icmp بتمن 4 بستههای unicast بتمن 8 بستههای broadcast بتمن 16 بستههای unicast tvlv بتمن 32 بستههای قطعهقطعهشده بتمن 64 بستههای tt / رومینگ بتمن 128 بستههای غیر بتمن - [meshif netdev] throughputmeter|tp MAC
- این دستور
یک آزمون
توان
عملیاتی را
آغاز
میکند که
تماماً
توسط ماژول
batman در فضای
هسته کنترل
میشود:
منابع
محاسباتی
لازم برای
تراز حافظه
و رونوشت
داده میان
فضای کاربر
و فضای هسته
که
ابزارهای
دیگر فضای
کاربر نیاز
دارند،
ممکن است
روی برخی
دستگاههای
ضعیف
گلوگاه
ایجاد کند.
این آزمون شامل انتقال ۱۴ مگابایت داده میان دو گره است. پروتکل مورداستفاده برای انتقال داده تا حدی شبیه به TCP اما سادهتر است: برخی امکانات TCP هنوز در آن پیادهسازی نشدهاند، بنابراین کارایی پروتکل ممکن است بدتر باشد. از آنجا که حجم ثابتی از داده منتقل میشود، مدت زمان آزمایش به شرایط شبکه بستگی دارد. آزمایش را میتوان با کلیدهای CTRL + C لغو کرد. در پایان یک آزمایش موفقیتآمیز، توان عملیاتی بر حسب کیلوبایت در ثانیه همراه با مدت زمان آزمایش بر حسب میلیثانیه و حجم بایتهای منتقلشده نمایش داده میشود. اگر بستههای بسیار زیادی گم شوند یا نشانی MAC مشخصشده در دسترس نباشد، پیامی برای اطلاعرسانی خطا به جای نتیجه بازگردانده میشود.
- [meshif netdev] traceroute|tr [-n][-T] MAC_address|bat-host_name|host_name|IP_address
- ردگیری مسیر در لایه ۲ به یک نشانی MAC یا نام bat-host. در صورتی که پارامتر دادهشده نشانی MAC نباشد، batctl تلاش میکند نام bat-host را پیدا کند. همچنین در صورتی که نشانی IPv4/IPv6 بر روی رابط batman-adv دستگاه مقصد تنظیم شده باشد و هر دو دستگاه مبدا و مقصد در یک زیرشبکه IP باشند، میتواند تلاش کند نشانی MAC را بر اساس نشانی IPv4/IPv6 یا نام میزبان حدس بزند. ابزار batctl تعداد ۳ بسته به هر میزبان میفرستد و زمان پاسخ را نمایش میدهد. اگر -n داده شود، batctl نشانیهای MAC را با نامهای bat-host در خروجی جایگزین نخواهد کرد. با -T میتوانید ترجمه خودکار نشانی MAC کلاینت به نشانی مبدایی که مسئول این کلاینت است را غیرفعال کنید.
- [meshif netdev] translate|t MAC_address|bat-host_name|host_name|IP_address
- ترجمه یک مقصد (نام میزبان، IP، MAC، نام bat_host) به نشانی MAC مبدایی که مسئول آن است.
تنظیمات (SETTINGS)
- [meshif netdev] aggregation|ag [0|1]
- اگر پارامتری داده نشود، وضعیت تجمیع فعلی نمایش داده میشود. در غیر این صورت از این پارامتر برای فعال یا غیرفعال کردن تجمیع بستههای OGM استفاده میشود.
- [meshif netdev] ap_isolation|ap [0|1]
- اگر پارامتری داده نشود، وضعیت فعلی جداسازی AP نمایش داده میشود. در غیر این صورت از این پارامتر برای فعال یا غیرفعال کردن جداسازی AP استفاده میشود.
- [meshif netdev] ap_isolation|ap [0|1]
- [meshif netdev] vid <vid> ap_isolation|ap [0|1]
- vlan vdev ap_isolation|ap [0|1]
- اگر پارامتری داده نشود، وضعیت فعلی جداسازی AP برای VLAN مشخصشده نمایش داده میشود. در غیر این صورت از پارامتر برای فعال یا غیرفعال کردن جداسازی AP برای VLAN مشخصشده استفاده میشود.
- [meshif netdev] bonding|b [0|1]
- اگر پارامتری داده نشود، وضعیت حالت پیوند فعلی نمایش داده میشود. در غیر این صورت از این پارامتر برای فعال یا غیرفعال کردن حالت پیوند استفاده میشود.
- [meshif netdev] bridge_loop_avoidance|bl [0|1]
- اگر پارامتری داده نشود، تنظیمات فعلی جلوگیری از حلقه پل نمایش داده میشود. در غیر این صورت از پارامتر برای فعال یا غیرفعال کردن جلوگیری از حلقه پل استفاده میشود. پشتیبانی از جلوگیری از حلقه پل باید هنگام کامپایل ماژول فعال شده باشد وگرنه این گزینه در دسترس نخواهد بود.
- [meshif netdev] distributed_arp_table|dat [0|1]
- اگر پارامتری داده نشود، تنظیمات فعلی جدول توزیعشده ARP نمایش داده میشود. در غیر این صورت از پارامتر برای فعال یا غیرفعال کردن جدول توزیعشده ARP استفاده میشود.
- hardif hardif elp_interval|et [interval]
- اگر پارامتری داده نشود، تنظیمات فعلی بازه زمانی ELP رابط فیزیکی نمایش داده میشود، در غیر این صورت از پارامتر برای تعیین بازه ELP استفاده خواهد شد. این بازه بر حسب میلیثانیه است.
- [meshif netdev] fragmentation|f [0|1]
- اگر پارامتری داده نشود، تنظیمات فعلی حالت قطعهقطعهسازی بسته نمایش داده میشود. در غیر این صورت از پارامتر برای فعال یا غیرفعال کردن قطعهقطعهسازی استفاده میشود.
- [meshif netdev] gw_mode|gw [off|client|server] [sel_class|bandwidth]
- اگر پارامتری داده نشود، حالت فعلی درگاه نمایش داده میشود وگرنه از پارامتر برای تنظیم حالت درگاه استفاده خواهد شد. آرگومان دوم (اختیاری) کلاس انتخاب (در صورتی که اولین آرگومان 'client' باشد) یا پهنای باند درگاه (در صورتی که اولین آرگومان 'server' باشد) را مشخص میکند. اگر گره یک سرور باشد، این پارامتر برای آگاه کردن سایر گرههای شبکه از پهنای باند اتصال اینترنت این گره استفاده میشود. کافی است هر عددی را وارد کنید (اختیاراً به دنبال "kbit" یا "mbit") و ماژول batman-adv مقدار واردشده را در شبکه مش منتشر خواهد کرد. از "/" برای جداسازی نرخهای بارگیری و بارگذاری استفاده کنید. میتوانید نرخ بارگذاری را حذف کنید و ماژول نرخ بارگذاری را یکپنجم (۱/۵) بارگیری فرض خواهد کرد.
5000kbit
5mbit
5mbit/1024
5mbit/1024kbit
5mbit/1mbit
2 -> اتصال پایدار
مثال: 1500 -> اتصال با تغییر سریع
- [meshif netdev] hop_penalty|hp [penalty]
- اگر پارامتری داده نشود، تنظیمات فعلی جریمه پرش (hop penalty) نمایش داده میشود. در غیر این صورت از پارامتر برای تنظیم جریمه پرش استفاده میشود. این جریمه میتواند ۰-۲۵۵ باشد (مقدار ۲۵۵ مقدار TQ پیام مبدا را هنگام فوروارد توسط این پرش صفر میکند).
- [hardif hardif] hop_penalty|hp [penalty]
- اگر پارامتری داده نشود، تنظیمات فعلی جریمه پرش رابط فیزیکی نمایش داده میشود. در غیر این صورت از پارامتر برای تنظیم جریمه پرش استفاده میشود. جریمه میتواند ۰-۲۵۵ باشد (مقدار ۲۵۵ مقدار TQ پیام مبدا را هنگام فوروارد از طریق این رابط صفر میکند).
- [meshif netdev] isolation_mark|mark [value[/mask]]
- اگر
پارامتری
داده نشود،
مقدار فعلی
نشانگر
جداسازی
نمایش داده
میشود. در
غیر این
صورت از
پارامتر
برای تنظیم
یا حذف
نشانگر
جداسازی
مورد
استفاده
قابلیت Extended Isolation
استفاده
خواهد شد.
ورودی باید به قالب value/mask$ باشد، که در آن value$ میتواند هر عدد صحیح ۳۲ بیتی (در مبنای دهدهی یا شانزدهشانزدهی) باشد و mask$ یک ماسک بیتی کلی (در مبنای شانزدهشانزدهی) است که بیتهای مورد نظر از value$ را مشخص میکند. همچنین میتوان ورودی را تنها با استفاده از value$ وارد کرد که در این صورت ماسک بیتی کامل بهصورت پیشفرض استفاده میشود.مثال ۱: 0x00000001/0xffffffff
مثال ۲: 0x00040000/0xffff0000
مثال ۳: 16 یا 0x0F
- [meshif netdev] loglevel|ll [level ...]
- اگر پارامتری داده نشود، تنظیمات فعلی سطح گزارشگیری نمایش داده میشود وگرنه از پارامتر(ها) برای تعیین سطح گزارش استفاده میشود. سطح 'none' تمام گزارشهای پرحجم را غیرفعال میکند. سطح 'batman' پیامهای مربوط به مسیریابی / سیلآسایی / پخش همگانی را فعال میسازد. سطح 'routes' پیامهای مربوط به افزودن / تغییر / حذف مسیرها را فعال میکند. سطح 'tt' پیامهای مربوط به عملیات جدول ترجمه را فعال میکند. سطح 'bla' پیامهای مربوط به جلوگیری از حلقه پل را فعال میکند. سطح 'dat' پیامهای مربوط به تجسس ARP و جدول توزیعشده ARP را فعال میکند. سطح 'mcast' پیامهای مربوط به بهینهسازیهای چندپخشی را فعال میکند. سطح 'tp' پیامهای مربوط به سنجش توان عملیاتی را فعال میکند. سطح 'all' تمام پیامها را فعال میکند. پیامها به بافرهای ردیابی هسته ارسال میشوند. از trace-cmd stream -e batadv:batadv_dbg برای دریافت پیامهای گزارش در سطح سیستم استفاده کنید.
- [meshif netdev] multicast_fanout|mo [fanout]
- اگر پارامتری داده نشود، مقدار فعلی انشعاب چندپخشی نمایش داده میشود. در غیر این صورت از پارامتر برای تنظیم انشعاب چندپخشی استفاده خواهد شد. انشعاب چندپخشی حداکثر تعداد کپیهای بستهای را تعیین میکند که ممکن است برای تبدیل چندپخشی به تکپخشی تولید شود. با فراتر رفتن از این محدودیت، ارسال به روش پخش همگانی انجام خواهد شد.
- [meshif netdev] multicast_forceflood|mff [0|1]
- اگر پارامتری داده نشود، تنظیم فعلی سیلآسایی اجباری چندپخشی نمایش داده میشود. در غیر این صورت از پارامتر برای فعال یا غیرفعال کردن سیلآسایی اجباری چندپخشی استفاده میشود. این تنظیم مشخص میکند آیا بهینهسازیهای چندپخشی باید با سیلآسایی ساده شبیه به پخش همگانی برای بستههای چندپخشی جایگزین شود یا خیر. در صورت تنظیم روی مقداری غیر از صفر، تمام گرههای شبکه مش برای تمام بستههای چندپخشی از سیلآسایی کلاسیک بدون هیچگونه بهینهسازی استفاده خواهند کرد.
- [meshif netdev] orig_interval|it [interval]
- اگر پارامتری داده نشود، تنظیم فعلی بازه زمانی مبدا نمایش داده میشود وگرنه از پارامتر برای تعیین بازه زمانی مبدا استفاده خواهد شد. این بازه بر حسب میلیثانیه است.
- hardif hardif throughput_override|to [bandwidth]
- اگر پارامتری داده نشود، بازنویسی توان عملیاتی فعلی نمایش داده میشود وگرنه از پارامتر برای تنظیم بازنویسی توان عملیاتی برای رابط فیزیکی مشخصشده استفاده میشود. کافی است هر عددی وارد کنید (اختیاراً به دنبال "kbit" یا "mbit").
جدولهای اشکالزدایی (DEBUG TABLES)
ماژول کرنل batman-adv با انواع جدولهای اشکالزدایی حاوی اطلاعات گوناگون درباره وضعیت شبکه مش از دید هر یک از گرهها ارائه میشود.
تمامی جدولهای اشکالزدایی از گزینههای زیر پشتیبانی میکنند:
- -w
- تازهسازی فهرست در هر ثانیه یا افزودن یک عدد برای تازهسازی در بازه زمانی سفارشی بر حسب ثانیه (با اعشار اختیاری)
- -n
- عدم جایگزینی نشانیهای MAC با نامهای bat-host در خروجی
- -H
- عدم نمایش سرآیند جدول اشکالزدایی
جدول مبدا همچنین از گزینه فیلتر -t برای حذف تمام مبداهایی که در بازه زمانی مشخصشده بر حسب ثانیه (با اعشار اختیاری) دیده نشدهاند از خروجی پشتیبانی میکند. افزون بر این، از پارامتر -i برای مشخص کردن رابطی که جدول مبدا باید برای آن چاپ شود پشتیبانی میکند. در صورت ارائه نشدن این پارامتر، جدول مبدا پیشفرض چاپ میشود.
جدولهای ترجمه محلی و سراسری همچنین از گزینههای -u و -m به ترتیب برای نمایش انحصاری اعلانهای جدول ترجمه تکپخشی یا چندپخشی پشتیبانی میکنند.
- [meshif netdev] backbonetable|bbt [-n] [-H] [-winterval]
- (گزینه زمان کامپایل)
- [meshif netdev] claimtable|cl [-n] [-H] [-w[interval]]
- [meshif netdev] dat_cache|dc [-n] [-H] [-w[interval]]
- (گزینه زمان کامپایل)
- [meshif netdev] gateways|gwl [-n] [-H] [-w[interval]]
- [meshif netdev] mcast_flags|mf [-n] [-H] [-w[interval]]
- (گزینه زمان کامپایل)
- [meshif netdev] neighbors|n [-n] [-H] [-w[interval]]
- [meshif netdev] originators|o [-n] [-H] [-w[interval]] [-t timeout_interval] [-i interface]
- [meshif netdev] transglobal|tg [-n] [-H] [-w[interval]] [-u] [-m]
- (گزینه زمان کامپایل)
- [meshif netdev] translocal|tl [-n] [-H] [-w[interval]] [-u] [-m]
پرسوجوهای JSON (JSON QUERIES)
خانواده netlink عمومی ارائهشده توسط ماژول هسته batman-adv میتواند توسط batctl مورد پرسوجو (فقطخواندنی) قرار گرفته و بهطور خودکار به JSON ترجمه شود. این قابلیت میتواند برای پایش وضعیت سیستم بدون نیاز به تجزیه جدولهای اشکالزدایی بدون قالب مشخص یا پیامهای بومی netlink استفاده شود.
- [meshif netdev] bla_backbone_json|bbj
- [meshif netdev] bla_claim_json|clj
- [meshif netdev] dat_cache_json|dcj
- [meshif netdev] gateways_json|gwj
- hardif hardif hardif_json|hj
- [meshif netdev] hardifs_json|hj
- [meshif netdev] mcast_flags_json|mfj
- [meshif netdev] mesh_json|mj
- [meshif netdev] neighbors_json|nj
- [meshif netdev] originators_json|oj
- [meshif netdev] transtable_global_json|tgj
- [meshif netdev] transtable_local_json|tlj
- [meshif netdev] vid <vid> vlan_json|vj
- vlan vdev vlan_json|vj
مثالها (EXAMPLES)
راهاندازی یک رابط batadv معمولاً شامل ساخت رابط اصلی، پیوست کردن رابط فیزیکی (پاییندست)، اعمال تنظیمات و بالا آوردن رابط است:
# create batadv (mesh) interface bat0 with routing algorithm B.A.T.M.A.N. IV $ batctl meshif bat0 interface create routing_algo BATMAN_IV # add the (already up and running) mesh0 interface as lower (hard) interface to bat0 $ batctl meshif bat0 interface -M add mesh0 # change some settings to better match the requirements of the user $ batctl meshif bat0 orig_interval 5000 $ batctl meshif bat0 distributed_arp_table disable ... # set the batadv (mesh) interface up before it is possible to use it $ ip link set up dev bat0
این عمل تنها راهاندازی کارکرد لایه ۲ رابط bat0 را تضمین میکند. کاربر موظف است اطمینان حاصل کند که پیش از استفاده، دستگاه bat0 به یک پل متصل شده، یک نشانی IP بر روی آن پیکربندی شده (دستی/کلاینت DHCP/...)، یا با سایر بخشهای سیستم یکپارچه شده است.
همچنین رابطهای فیزیکی (پاییندست) متصل به رابط batadv باید توسط کاربر بهگونهای پیکربندی شوند که از انتقال بستههای اترنت تکپخشی و پخش همگانی میان گرههای متصل به آن پشتیبانی کنند. متداولترین دلیل کار نکردن مش batman-adv پیکربندی نادرست رابطهای فیزیکی، سختافزار، سفتافزار یا باگهای درایور است که مانع تبادل صحیح برخی از انواع بستهها میشود.
وضعیت فعلی رابط را میتوان با استفاده از جدولهای اشکالزدایی بررسی کرد. اغلب بررسی این نکته سودمند است که بستههای اکتشافی از کدام همسایگان مستقیم دریافت شدهاند. مرحله بعدی بررسی مسیرهای (ارجح) به سمت مبداها است. این مسیرها تنها زمانی شکل میگیرند که سنجه شبکه اتصالات دوطرفه میان همسایگان را شناسایی کرده باشد و ممکن است بستههای اکتشافی را از گرهها/مبداهایی که مستقیماً در دسترس نیستند فوروارد کرده باشد.
# get list of neighbors from which the current node was able to receive discovery packets $ batctl meshif bat0 neighbors # get (preferred) routes the routing algorithm found $ batctl meshif bat0 originators
اگر دیگر نیازی به استفاده از رابط bat0 در سیستم نباشد، میتوان آن را نابود کرد:
# destroy the interface and let the system remove its state $ batctl meshif bat0 interface destroy
فایلها (FILES)
- bat-hosts
- این فایل شبیه به فایل /etc/hosts است. میتوانید در هر سطر یک نشانی MAC و یک نام میزبان بنویسید. ابزار batctl برای یافتن bat-hosts در /etc، پوشه خانگی شما و پوشه فعلی جستجو میکند. اطلاعات یافتشده برای تطبیق نشانی MAC با نام میزبان ارائهشده توسط شما یا جایگزینی نشانیهای MAC در خروجیهای اشکالزدایی و گزارشها استفاده میشود. به خاطر سپردن نام میزبان بسیار آسانتر از نشانیهای MAC است.
همچنین ببینید (SEE ALSO)
bridge(8), dmesg(1), ip(8), ip-link(8), ping(8), tcpdump(8), traceroute(1), trace-cmd(1)
نویسندگان (AUTHORS)
ابزار batctl توسط Andreas Langer <an.langer@gmx.de> و Marek Lindner <marek.lindner@mailbox.org> نوشته شده است.
این صفحه راهنما توسط Simon Wunderlich <sw@simonwunderlich.de>، Marek Lindner <marek.lindner@mailbox.org> و Andrew Lunn <andrew@lunn.ch> نوشته شده است.
| 17 ژوئیه 2015 | Linux |