up2date-3.9.23-2 I have it configured to look at both 'up2date' and a local directory repository. If a package is in both places, it's downloading it over the network instead of copying it from the local disk.
up2date gets a package from the same source it got the package info from. So if the package info comes from RHN, it downloads it from RHN. If it comes for a dir repo, it "downloads" it from the dir repo. Dep solving however, can potentially check all available info sources till it finds what it needs (has to, to allow cross repo dep solving). It takes the first place that has the info it needs. Currently, it always looks to rhn first, so if rhn has the info, it gets it there, which means it also fetches the package from there. Dir package sources arent really meant to act as local look aside caches for RHN available packages. They are stand alone repo sources. the "-k" /path/to/packages should still work as a way to indicate a local look aside cache for packages that might also be across the network.