Napisałem kiedyś sobie taki prosty skrypcik w bashu - może się przyda:

#!/bin/bash

mv /home/misiak/xxx/polecenia /home/misiak/xxx/polecenia.old

echo "ip dhcp-server lease remove [find]" >> /home/misiak/xxx/polecenia
echo "ip dhcp-server network remove [find]" >> /home/misiak/xxx/polecenia
echo "ip firewall mangle remove [find]" >> /home/misiak/xxx/polecenia
echo "queue tree remove [find]" >> /home/misiak/xxx/polecenia
echo "queue tree add name=Download parent=global-out queue=PCQ_Download max-limit=35M" >> /home/misiak/xxx/polecenia
echo "queue tree add name=Upload parent=global-in queue=PCQ_upload max-limit=10M" >> /home/misiak/xxx/polecenia

echo "ip firewall mangle add chain=prerouting src-address=94.240.47.0/24 dst-address=94.240.47.0/24 action=accept" >> /home/misiak/xxx/polecenia

echo "ip firewall mangle add chain=prerouting src-address=192.168.168.0/23 action=mark-routing new-routing-mark=ittmedia" >> /home/misiak/xxx/polecenia
echo "ip firewall mangle add chain=prerouting src-address=192.168.168.0/23 protocol=tcp port=80,443,21,3389 action=mark-routing new-routing-mark=lukman" >> /home/misiak/xxx/polecenia
echo "ip firewall mangle add chain=prerouting src-address=94.240.47.0/24 action=mark-routing new-routing-mark=lukman" >> /home/misiak/xxx/polecenia


echo "SELECT name,inet_ntoa(address),mask,gateway,dns,dns2 FROM networks" | mysql -u"root" -p"xxxxx" lms | while read LINE
do
kotx=($LINE)
echo "ip dhcp-server network add address=${kotx[1]}/${kotx[2]} gateway=${kotx[3]} dns-server=${kotx[4]},${kotx[5]} comment=${kotx[0]}" >> /home/misiak/xxx/polecenia
done
echo "SELECT nodes.name, inet_ntoa(nodes.ipaddr), macs.mac FROM nodes,macs WHERE nodes.id=macs.nodeid" | mysql -u"root" -p"xxxxxxx" lms | while read LINE
do
kot=`echo "$LINE" | awk 'BEGIN { FS=" " } { print $1 }'`
kot1=`echo "$LINE" | awk 'BEGIN { FS=" " } { print $2 }'`
kot2=`echo "$LINE" | awk 'BEGIN { FS=" " } { print $3 }'`

echo "ip dhcp-server lease add address=$kot1 mac-address=$kot2 comment=$kot" >> /home/misiak/xxx/polecenia
done

echo "SELECT name,inet_ntoa(ipaddr) FROM nodes" | mysql -u"root" -p"xxxxxx" lms | while read LINE
do
kotx=($LINE)
#echo "ip firewall mangle add chain=postrouting dst-address=${kotx[1]} action=mark-connection new-connection-mark=d_${kotx[1]} comment=${kotx[0]}" >> /home/misiak/xxx/polecenia

echo "ip firewall mangle add chain=postrouting dst-address=${kotx[1]} action=mark-packet new-packet-mark=d_${kotx[1]} passthrough=no comment=${kotx[0]}" >> /home/misiak/xxx/polecenia
#echo "ip firewall mangle add chain=prerouting src-address=${kotx[1]} action=mark-connection new-connection-mark=u_${kotx[1]} comment=${kotx[0]}" >> /home/misiak/xxx/polecenia

echo "ip firewall mangle add chain=prerouting src-address=${kotx[1]} action=mark-packet new-packet-mark=u_${kotx[1]} passthrough=no comment=${kotx[0]}" >> /home/misiak/xxx/polecenia

done
echo "SELECT customers.id, tariffs.uprate, tariffs.upceil, tariffs.downrate, tariffs.downceil, CONCAT(REPLACE(customers.lastname,' ','_'),'_',REPLACE(customers.name,' ','_')) FROM customers,tariffs,assignments WHERE customers.id=assignments.customerid AND assignments.tariffid=tariffs.id" | mysql -u"root" -p"xxxxxxx" lms | while read LINE
do
kotx=($LINE)
kotxd=$[${kotx[4]}*2]
kotxc=$[${kotx[2]}*2]
echo "queue tree add name=d_${kotx[0]} parent=Download queue=PCQ_Download limit-at=${kotx[3]}k max-limit=${kotx[4]}k burst-limit="$kotxd"k burst-time=5 comment=${kotx[0]}">> /home/misiak/xxx/polecenia
echo "queue tree add name=u_${kotx[0]} parent=Upload queue=PCQ_upload limit-at=${kotx[1]}k max-limit=${kotx[2]}k burst-limit="$kotxc"k burst-time=5 comment=${kotx[0]}">> /home/misiak/xxx/polecenia
echo ":put ${kotx[0]}" >> /home/misiak/xxx/polecenia
done

echo "SELECT name, inet_ntoa(ipaddr), ownerid,access FROM nodes " | mysql -u"root" -p"xxxxxxxxx" lms | while read LINE
do
kotx=($LINE)
kota=${kotx[3]}
if [ $kota == 1 ]
then
echo "queue tree add name=d_${kotx[0]} parent=d_${kotx[2]} packet-mark=d_${kotx[1]} comment=${kotx[0]}">> /home/misiak/xxx/polecenia
echo "queue tree add name=u_${kotx[0]} parent=u_${kotx[2]} packet-mark=u_${kotx[1]} comment=${kotx[0]}">> /home/misiak/xxx/polecenia
else
echo "queue tree add name=d_${kotx[0]} parent=d_${kotx[2]} packet-mark=d_${kotx[1]} comment=${kotx[0]} limit-at=500 max-limit=1k">> /home/misiak/xxx/polecenia
echo "queue tree add name=u_${kotx[0]} parent=u_${kotx[2]} packet-mark=u_${kotx[1]} comment=${kotx[0]} limit-at=500 max-limit=1k">> /home/misiak/xxx/polecenia

#!/usr/bin/expect --
set timeout 30
set IP [lindex $argv 0]
spawn bash -c "cat /home/misiak/xxx/polecenia | ssh misiak@94.x.x.x"
expect "password:"
send "xxxxx\r"
interact
wait

fi
done





W dniu 5 kwietnia 2013 00:12 użytkownik Tomasz Chiliński <tomasz.chilinski@chilan.com> napisał:
W dniu 04.04.2013 22:50, Radosław Maślanek napisał(a):

jak ktoś się zgłosi - dopinam się do tematu,
co prawda u nas całość robi pecet,
ale z chęcią dorzucimy się do rozwiązania bo testujemy obecnie cloud
core i sam jestem ciekaw ile wyciągnie ;)

W testach ładnie wyciąga, ale do codziennego użytku na razie nie nadaje się.
Widzę, że reklama swoje robi. Ludzie kupią niekompletne produkty jak
kolorowe broszurki pooglądają ;-)

--
Pozdrawiam
Tomasz Chiliński, Chilan

_______________________________________________
lms mailing list
lms@lists.lms.org.pl
http://lists.lms.org.pl/mailman/listinfo/lms