Route validation toggle RTF_UP depending on interface link state on every link state change routing table needs to be traversed expensive on large tables easy to implement make a linked list of routes per each interface additional pointers -> more memory needed less expensive on large tables my opinion is to use the first approach rn_walktree() does most of the job already needs lot of testing some interfaces lie about their state wireless cards show strange behaviour because of this