Olá. Boa noite
Estou tentando fazer um script para verificar em qual "faixa" de ip o cliente está e mudar o "parent".
Já consegui de um modo mas gostaria de fazer melhor..
Modo que fiz:
:for x from=2 to=254 do={/queue simple set [/queue simple find target="100.64.11.$x/32" parent!=64_11] parent=64_11};/
:for x from=2 to=254 do={/queue simple set [/queue simple find target="100.64.12.$x/32" parent!=64_12] parent=64_12};/
...
Dessa forma funciona, mas em cada servidor (são muitos) que vou aplicar o script tenho que alterar, pois no outro servidor seria:
:for x from=2 to=254 do={/queue simple set [/queue simple find target="100.64.21.$x/32" parent!=64_21] parent=64_21};/
...
:for x from=2 to=254 do={/queue simple set [/queue simple find target="100.64.29.$x/32" parent!=64_29] parent=64_29};/
Minha intenção era fazer um código que desse certo em todos os servidores, pra não ter que ficar alterando a cada adição de "faixa" de ip também...
Pensei em fazer:
:for y from=21 to=29 do={:for x from=2 to=254 do={/queue simple set [/queue simple find target="100.64.$y.$x/32" parent!="64_$y"] parent="64_$y"}}
Porém ainda precisaria ficar "adaptando" o "for y from..." para cada rb
Agora a parte que empaquei é...
Como "pegar" o "y" dos ips que tenho nos Ip->Addresses ao inves de usar o "for", por exemplo:
Tenho como ips de gateway nessa routerboard 100.64.40.1/24 e 100.64.50.1/24
Então executar:
:for x from=2 to=254 do={/queue simple set [/queue simple find target="100.64.$y.$x/32" parent!="64_$y"] parent="64_$y"}}
Sendo que $y=40
E executar novamente
Com $y=50
e assim sucessivamente...
Desde já obrigado a todos