View Issue Details
|ID||Project||Category||View Status||Date Submitted||Last Update|
|0000024||RouterOS v5||[All Projects] General||public||2012-04-27 08:18||2013-05-21 08:58|
|Summary||0000024: OSPFv3 redistributes prefixes no longer present ipv6 routing table|
|Description||I tried to use "Framed-IPv6-Prefix" via Radius. The user route is added to the ipv6 routing table and everything is working so far. because we have more than one routers as PPPoE servers I need to have these ipv6 customer prefixes in OSPFv3. So I activated "redistribute static routes as type 2" in my OSPFv3 instance. When the users connects, the prefix gets redistributed and is seen in our Cisco core and other mikrotik routers.|
The problem arises when the user disconnects (and possibly connects on another PPPoE router later): The ipv6 route is deleted from the ipv6 routing table but not from OSPFv3, OSPF still announces the prefix even if it's not in the local routing table anymore. this leads to routing loops because packets for the prefix are sent to the mikrotik router and back to the default gw because the route is not known locally on the mikrotik then.
This is clearly a bug I think. Redistribution should always happen via routing table, if a prefix is not (anymore) in the routing table it is not allowed to be inserted into ospf / needs to be deleted from ospf.
in the routing table i see the prefix (currently connected user)
15 ADS 2a03:5480:4002::/48 <pppoe-USER1> 1
but in the ospf routes i see also an old prefix, from a user which is no longer connected
15 2a03:5480:4001::/48 imported-ext-2 20
16 2a03:5480:4002::/48 imported-ext-2 20
when I disable the "redistribute static routes" these routes disappear but as soon I re-enable it they are back (even the one from the not connected user). so where does the route come from when there is no such route in routing table? Just a reboot deletes these old prefixes, even a disable ospfv3 instance does not help.
|Steps To Reproduce||setup:|
1) use a mikrotik router with RouterOS 5.15
2) configure PPPoE Server with Radius AAA
3) set "Framed-IPv6-Prefix" for a user to a /48 oder /64 prefix
4) enable IPv6 in the pppoe server profile
5) let the user connect via pppoe
6) check the ipv6 prefix is added to the ipv6 routing table pointing to pppoe-<USER> interface
7) enable ospfv3 with another router (cisco / mikrotik)
8) enable "redistribute static routes" "as typ2" (or type1) in ospv3 instance
9) check the ospfv3 "routes" and find the ipv6 user prefix
how the bug is seen:
1) disconnect the pppoe user and change ipv6 prefix in radius or use another user with another prefix
2) reconnect via pppoe and check routing table and ospfv3 routes.
the new router will be in ospfv3 routes and ipv6 routing table. the old route will still be in ospfv3 table but not in routing table.
only a reboot of the router will clear out these invalid routes from the ospfv3 routes table.
|Additional Information||tested with both RouterOS 5.11 and 5.15|
|Tags||No tags attached.|