Jump to content
  • 0
OmegaTron

ndmc и выполнение сценариев cli/применение конфига ?

Question

Судя по хелпу ndmc, он умеет лишь выдавать версию, сам хелп и запускать сессию cli. Неплохо было бы, если бы он умел применять конфиг для cli или (и) выполнять cli-сценарии.

Можно конечно вывернуться и подсунуть конфиг веб-фейсу сэмулировав запросы, но это дополнительный гемморой

Share this post


Link to post
Share on other sites

2 answers to this question

  • 1
3 часа назад, OmegaTron сказал:

Судя по хелпу ndmc, он умеет лишь выдавать версию, сам хелп и запускать сессию cli. Неплохо было бы, если бы он умел применять конфиг для cli или (и) выполнять cli-сценарии.

Можно конечно вывернуться и подсунуть конфиг веб-фейсу сэмулировав запросы, но это дополнительный гемморой

Не весь перечень использования, кой какие примеры

ndmq -p "no service dlna" -x >/dev/null
ndmq -p "service dlna" -x >/dev/null


ndmq -p "show running-config" -P message | awk '/^interface Bridge0/ { skip=1; } /^ up/ { skip=0; } skip { print; } ' | grep "ip address" | cut -d " " -f 7


for host in $hosts; do
 ndmq -p "ip host $host $lan_ip" -P response
done
ndmq -p "system configuration save" -P message


ndmq -p 'interface '${nameSegments[$a]}' no traffic-shape'
ndmq -p 'interface '${nameSegments[$a]}' traffic-shape rate '${limitSegments[$a]}


ndmq -p 'show ip hotspot' -x | xml sel -t -m '//host[link="up"][active="yes"]' -v 'name' -o ' : ' -v 'ip' -o ' : ' -v 'rxbytes' -o ' : ' -v 'txbytes'

ndmq -p 'show associations' -x | xml sel -t -m '//station[ap="WifiMaster1/AccessPoint0"][authenticated="yes"]' -v 'mac' -o '

ndmq -p 'show ip hotspot' -x | xml sel -t -m '//host[active="yes"][mac="хх:хх:хх:хх:хх:хх"]' -v 'name'


ndmq -p 'ip hotspot wake хх:хх:хх:хх:хх:хх' -P message

ndmq -p 'known host 123 хх:хх:хх:хх:хх:хх' -P message;


00 21 * * * root ndmq -p 'interface WifiMaster0/AccessPoint0 down' -P message
00 09 * * * root ndmq -p 'interface WifiMaster0/AccessPoint0 up' -P message
00 09 * * * root ndmq -p 'ip hotspot wake хх:хх:хх:хх:хх:af' -P message

ndmq -p "ppe hardware"
ndmq -p "no ppe hardware"

ndmq -p 'show interface' -x | xml sel -t -m '//interface[link="up"][state="up"][connected="yes"]' -v '@name' -o ': ' -v 'address' -o '/' -v 'mask' -n

ndmq -p 'show ip hotspot' -x | xml sel -t -m '//host[link="up"][active="yes"]' -v 'name' -o ' : ' -v 'ip' -o ' : ' -v 'rxbytes' -o ' : ' -v 'txbytes' -n >> /opt/tmp/date_bytes

lan_ip=$(ndmq -p 'show interface Bridge0' -P address)


if [ "$arp_yes" == "" ] then echo "ON"
  $traf_guest = "ndmq -p 'show interface CdcEthernet0' -P rate 
  if [ "$traf_guest" == "" ] then echo "ON"
     ndmq -p 'interface CdcEthernet0 traffic-shape rate 50000' -P message
  fi
fi

Примечание разбор ответов в формате xml можно использовать xmlstarlet в Entware он есть.

/ # opkg list | grep xmlstarlet
xmlstarlet - 1.6.1-1 - XMLStarlet is a set of command line utilities (tools) which can be used to transform, query, validate, and edit XML documents and files using simple set of shell commands in similar way it is done for plain text files using UNIX grep, sed, awk, diff, patch, join, etc commands.
/ # 

 

Edited by vasek00
  • Thanks 1

Share this post


Link to post
Share on other sites
  • 0

Ну так ndmq как раз и эмулирует запросы к веб-фейсу (я это делаю через curl), я же говорил о применение конфигов так сказать напрямую, без посредников.

За примеры тем не менее спасибо - возможно пригодятся в каких-либо костылях :)

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.

×