darkstarpz Публикувано 15 Юни, 2020 Доклад Сподели Публикувано 15 Юни, 2020 Здравейте, моля за съвет как трябва да е структуриран следния скрипт по отношение на bytes: :local txbytes [/ip firewall mangle get [/ip firewall mangle find where chain=prerounting] bytes] ; :put $txbytes Към момента не работи като output а е: no such item Това, което искам е да се присвои на променливата стойността на bytes от вградения dummy passthrough рул в mangle Благодаря! Адрес на коментара Сподели в други сайтове More sharing options...
0 hgd Отговорено 17 Юни, 2020 Доклад Сподели Отговорено 17 Юни, 2020 (Редактирано) Тук има един трафик колектор за Микротик - дали не търсиш реално подобно нещо? https://github.com/muhannad0/mikrotik-traffic-counter В техния примерен скрипт има подобна логика: :local wantxcomment "local-wan-tx" :local wanrxcomment "local-wan-rx" :local sysnumber [/system routerboard get value-name=serial-number] :local txbytes [/ip firewall mangle get [/ip firewall mangle find comment="$wantxcomment"] bytes] :local rxbytes [/ip firewall mangle get [/ip firewall mangle find comment="$wanrxcomment"] bytes] /tool fetch url=("http://<server ip/url>/collector.php\?sn=$sysnumber&tx=$txbytes&rx=$rxbytes") mode=http keep-result=no /ip firewall mangle reset-counters [/ip firewall mangle find comment="$wantxcomment"] /ip firewall mangle reset-counters [/ip firewall mangle find comment="$wanrxcomment"] :log info ("cleared counters for all mangle rules") Редактирано 17 Юни, 2020 от hgd Адрес на коментара Сподели в други сайтове More sharing options...
0 madmanz Отговорено 17 Юни, 2020 Доклад Сподели Отговорено 17 Юни, 2020 (Редактирано) Изглежда, ще се наложи да използваш цикъл. Мисля, че [/ip firewall mangle find where chain=prerounting] ще ти върне масив с индексите на всички правила в prerouting веригата и в цикъл ще трябва да ги обходиш и да сумиращ или изпринтиш резултатите. Може би ще изглежда по този начин :global index; :foreach $index in [/ip firewall mangle find where chain=prerouting] do={:put /ip firewall mangle get $index bytes} Ако дадеш малко повече информация какво се опитваш да постигнеш ще е още по-добре. Редактирано 17 Юни, 2020 от madmanz Адрес на коментара Сподели в други сайтове More sharing options...
0 darkstarpz Отговорено 25 Юни, 2020 Автор Доклад Сподели Отговорено 25 Юни, 2020 Здравейте, ползвам трафик колектора, но го измених доста - направих си статистика за трафик по дни и по месеци. Дефакто този скрипт подава инфо към уеб сървъра и посредство PHP пише резултатите в Sqlite база. От там ги чета, сумирам го по дни и месеци с се получи добре. Идеята ми беше да знам колко ми е трафика общо - ъплоад+даунлоад. Скрипта, който ползвам е: :local sysnumber [/system routerboard get value-name=serial-number] :local txbytes [/ip firewall mangle { get [find chain="prerouting"] bytes }] :local rxbytes [/ip firewall mangle { get [find chain="postrouting"] bytes }] /tool fetch url=("http://192.168.88.105/traffic/collector.php\?sn=$sysnumber&tx=$txbytes&rx=$rxbytes") mode=http keep-result=no /ip firewall mangle reset-counters [/ip firewall mangle find chain="prerouting"] /ip firewall mangle reset-counters [/ip firewall mangle find chain="postrouting"] :log info ("cleared counters for all mangle rules") и се различава от така представения в Github и затова отворих тази тема. 192.168.88.105 е web server, към който се подава инфото. Адрес на коментара Сподели в други сайтове More sharing options...
Въпрос
darkstarpz
Здравейте,
моля за съвет как трябва да е структуриран следния скрипт по отношение на bytes:
:local txbytes [/ip firewall mangle get [/ip firewall mangle find where chain=prerounting] bytes] ; :put $txbytes
Към момента не работи като output а е:
no such item
Това, което искам е да се присвои на променливата стойността на bytes от вградения dummy passthrough рул в mangle
Благодаря!
Адрес на коментара
Сподели в други сайтове
3 отговори на този въпрос
Recommended Posts
Създайте нов акаунт или се впишете, за да коментирате
За да коментирате, трябва да имате регистрация
Създайте акаунт
Присъединете се към нашата общност. Регистрацията става бързо!
Регистрация на нов акаунтВход
Имате акаунт? Впишете се оттук.
Вписване