bugino
November 5, 2020, 3:19pm
1
Hello,
In this time, i experience problem. I am runnning PPPoE access concentrator on CCR1036 /1500 active connection, CPU under 15%/. PPPoE tunnel to customer is active, i can find it in ppp/active_connection. But i cannot find it in IP/ADDRESS and also in IP/ROUTE. After manual delete of active ppp, customers is connected and IP address is added to IP/ADDRESS and tunel creates ROUTE and customer is running fine.
Does anyone have script to compare addresses in PPP/ACTIVE_CONNECTION with IP/ADDRESS and remove tunel if has no corresponding dynamic IP ind IP/address?
i was not able to find such a script on this forum. Thank you in advance.
eworm
November 5, 2020, 8:03pm
2
I do not have a PPPoE access concentrator around, but something like this could work:
:foreach Active in=[ / ppp active find ] do={
:local ActiveVal [ / ppp active get $Active ];
:if ([ :len [ / ip address find where address=($ActiveVal->"address") dynamic ] ] = 0) do={
/ ppp active remove $Active;
}
}
If it does not… Please give example output of
/ ppp active
.
bugino
November 5, 2020, 11:29pm
3
I do not have a PPPoE access concentrator around, but something like this could work:
:foreach Active in=[ / ppp active find ] do={
:local ActiveVal [ / ppp active get $Active ];
:if ([ :len [ / ip address find where address=($ActiveVal->"address") dynamic ] ] = 0) do={
/ ppp active remove $Active;
}
}
If it does not… Please give example output of
/ ppp active
.
Hi, thank you so much for reply but script kills all connections.
Do you mean /ppp active print?
NAME SERVICE CALLER-ID ADDRESS UPTIME ENCODING
0 xxxxxxxxx… pppoe 00:27:22:24:14:XX 192.168.169.182 10h53…
1 xxxxxxxxx… pppoe 24:4B:FE:6A:EC:XX 192.168.166.42 10h53…
2 xxxxxxxxx… pppoe 74:AC:B9:78:19:XX 192.168.169.141 10h53…
3 xxxxxxxxx… pppoe 60:E3:27:7C:92:XX 192.168.167.30 10h53…
4 xxxxxxxxx.. pppoe E0:63:DA:F8:8F:XX 192.168.169.225 10h53…
eworm
November 6, 2020, 6:59am
4
Yes, all connections are killed because addresses are listed with netmask in / ip address .
Given that line:
NAME SERVICE CALLER-ID ADDRESS UPTIME ENCODING
0 xxxxxxxxx… pppoe 00:27:22:24:14:XX 192.168.169.182 10h53…
Would this print the matching ip address entry?
/ip address print where address=192.168.169.182/32 dynamic
eworm
November 6, 2020, 7:27am
5
Regarding your post in general section it should… So try this:
:foreach Active in=[ / ppp active find ] do={
:local ActiveVal [ / ppp active get $Active ];
:if ([ :len [ / ip address find where address=($ActiveVal->"address" . "/32") dynamic ] ] = 0) do={
/ ppp active remove $Active;
}
}