There are multiple parts to the problem. Leaving PBR rule in the kernel happens whenever user tried to delete it and it is deleted from the configuration database as well as from routed.conf but the back-end process 'routed' didn’t get a chance to delete it from the kernel. Mostly routed is crashed or something went wrong with the routed.conf file.
Once the system is in the weird state, here is the suggested approach:
- Check the config system with ‘dbget –arv routed:instance:default:pbrrules”, if it doesn’t exists then
- Check with “ip rule list”, if it exists only way to remove is using ‘ip rule delete’ command or
- Reboot the system to reset the PBR rules in the kernel.
We need to find out the root cause of routed crash and this is only a side effect. This can happen with any other feature also.
Since you are able to add PBR rule later, mostly something to do with some other configuration that you have done along with PBR configuration.
If the problem still persists, you can upgrade to new JHF or release. You can also open a ticket with TAC for further help.