Um dos problemas do 9i é que ele não usa somente a porta 1521.
No 9i essa porta é usada somente pro Listener saber que tem alguem querendo iniciar uma sessão, depois ele troca pra uma porta aleatória…
Assim você teria que liberar todas as portas do seu firewall, mas como isso não é recomendado, existe no windows um parâmetro que você deve criar no próprio registro do windows chamado de USE_SHARED_SOCKET e colocar o valor desse parâmetro pra TRUE, assim ele força o Oracle a utilizar somente a porta 1521.
No Linux eu não lembro como fazer isso, mas se você procurar no Google vai achar fácil a solução…