1. A network device comprising: a first memory comprising a forwarding table configured to store, in a plurality of elements, forwarding information for forwarding of a network packet by the network device, wherein the plurality of elements are arranged into a plurality of buckets; a second memory storing an indirection table comprising a plurality of hash references and a plurality of bucket references, wherein each hash reference from the plurality of hash references is associated with a bucket reference of the plurality of bucket references, and wherein each bucket reference of the plurality of bucket references indicates a bucket of the plurality of buckets; processing logic configured to: generate a plurality of hash values using information from a network packet received by the network device; locate hash bucket references of the plurality of hash bucket references, each located hash bucket reference corresponding to a hash value of the plurality of hash values; locate bucket references of the plurality of bucket references each corresponding to each of the plurality of hash references; search for forwarding information stored in an element of the plurality of buckets indicated by the bucket references; and forward the network packet based on the forwarding information.