Here's a crazy idea: get rid of Oracle Names. It is deprecated in 9i. It was buggy to begin with, and it never really went anywhere. Gazillions of people use local naming, very successfully, all the time. You can have all your users use TNS_ADMIN. To make a change (e.g., a database moves to a different server), you change one word in one file. What's your problem with doing that?