Conexão Remota com Linux e Windows

04/07/2008

1

Amigos, tenho um servidor de internet Linux(Suse) e mais 3 servidores com Windows 2000(2) e 1 Windows 2003, todos Server. Fiz um Servidor de Aplicação usando delphi com DBExpress, Banco Oracle 8i e um client. Agora vem a dúvida. A conexão com o mundo exterior é feita pelo Linux, que digamos, tenha o IP(200.40.40.40). O meu banco Oracle está num Servidor Windows 2000 com IP interno em:157.2.0.254, exemplo. Todos esses servidores estão em São Paulo. Tenho em Recife, numa filial, o meu client que precisa se conectar com esse Servidor de Aplicação, que chamarei de SA. O meu SA está configurado assim: No SqlConnection dele está assim:
DataBase=Nome_do_banco
User_name=Usuario
Password=A senha
Host=127.0.0.1(Pois o banco está na mesma máquina que o SA). Se eu rodar internamente, funciona conforme configuração acima. Agora a máquina em Recife, precisa encontrar essa máquina. No Client o meu SocketConnection eu apontei assim: Adress=200.40.40.40. RemoteServer, apontei para o meu SA, que digamos seja: REMOTO.RDM_REMOTO. No ServerGUID a interface dele. Isso não é suficiente. O Admnistrador redirecionou a porta 211(BSS) para essa máquina, mas eu não sei como isso funciona. Talvez aí esteja meu problema. Uma coisa. Não dá nenhuma mensagem, exceto aquela do windows para enviar o relatório. O BSS está na máquina 157 e o SA está registrado, já que funciona com acesso local. Obs: Na rede local, tudo funciona perfeitamente, logo, não é senha nada disso. O problema está no acesso externo.


Responder

Posts

a porta 211 do servidor Linux foi redirecionada para a porta 211 do servidor de aplicação?

se foi isso, deveria ter funcionado.

a minha rede funciona exatamente dessa forma. tenho um servidor de internet Linux (200.212.XXX.X); o servidor de aplicação e o banco de dados ficam no mesmo servidor Windows (192.168.XXX.X).

na rede local a conexão é feita diretamente no servidor Windows.

os usuários ´remotos´ conectam-se através do servidor Linux, que redireciona a porta 211 para a porta 211 do servidor Windows.


Responder

08/07/2008

Paulo

Veja o que eu faço e não está dando certo:
No me servidor de aplicação tenho um SqlConnection com DLL da Core Lab apontando para o IP:127.0.0.1(Já fiz:157.2.0.034), uso IP local, pois o banco é local ao SA(Servidor de Aplicação). Nessa máquina está rodando o BSS(Borland Socket Server). Existe ainda outra máquina que conversa com o mundo externo(Servidor de Internet), que é uma máquina Linux(SUSE) com IP:200.40.40.40. Toda conexão externa é feita por meio dela. Nessa máquina(Linux) o Admin da rede redirecionou a porta 211 para a porta 211 da máquina(157.2.0.34, só não sei se deve ser TCP ou UDP). Estes servidores estão em São Paulo. Em Recife tenho uma loja com uma aplicação Client. Nessa aplicação Client tem um componente SocketConnection assim:
Address=200.40.40.40, Port=211 e rodando um BSS também.
No meu entender, ao pingar nesse IP já deveria ir para a máquina 157.2.0.34, mas não está acontecendo. Está dando o seguinte erro:
Windows Socket Error(10060) on API Connect.
O que mais devo fazer? Está correto?


Responder

08/07/2008

Paulo

Pessoal, esta forma como eu coloquei aí esta correta. O problema estava no Servidor Linux, o qual não temos acesso. Aí um funcionário da empresa que presta esse serviço pra nós, viu o erro e resolveu e agora tá funcionando bem, como eu gostaria, via Sockets. Valeu por tudo a todos.


Responder