Página 1 de 1
conexão remota
Enviado: 11 Dez 2012 11:18
por clebervn
localmente eu uma conexão a banco firebird eu faço assim :
ConnString := "FIREBIRD=127.0.0.1:C:\TESTE\DATABASE.GDB;uid=......"
nCnn := SR_AddConnection(CONNECT_FIREBIRD, ConnString)
tudo ok.
E remotamente, num servidor como ficaria

por exemplo, estando o banco no c:\teste de um ip. 192.168.0.10 ??
tem q ter mapeamento ??
conexão remota
Enviado: 18 Dez 2012 01:21
por rochinha
Amiguinho,
Por padrão as placas de rede recebem numeros iniciando em 169.xxx.xxx.xxx. Quando conectados a um roteador, o DHCP fornece numeros de IP iniciando em 192.xxx.xxx.xxx.
O endereço 127.0.0.1 é um endereço interno disponibilizado por servidores como Apache, IIS, etc.
A sua string já possui característica de acesso remoto, ou seja, esta especificando o IP do servidor.
Para que seu IP seja visto, não por sua rede interna mas sim por um computador na internet é necessário que a string de conecção possua o IP de internet. O mesmo pode ser visualizado quando voce digita no Prompt do DOS, o comando ipconfig.
Para que o IP do seu servidor seja visivel pela maquina remota é necessário que configure, em seu roteador, o recurso DMZ, fazendo com que o mesmo aponte qualquer requisição lançada para o IP do servidor para o IP interno do mesmo.
Exemplo:
- Seu IP de internet é 189.200.122.120
- Seu IP de interno é 192.168.0.110
O recurso DMZ(DesMilitarized Zone ou Zona Livre) deverá apontar qualquer coisa que chegue em 189.200.122.120 para 192.168.0.110, lembrando-se que as portas destes IP referentes ao servidor Firebird deverá estar liberada pelo Firewall.
conexão remota
Enviado: 20 Dez 2012 08:56
por rossine
Bom dia pessoal,
Tenho uma função aqui para retornar o IP externo. Segue abaixo o código:
Código: Selecionar todos
******************
function IpExterno
******************
local cBuffer, cRequest, cResponse, nBytes, pSocket
HB_INetInit()
pSocket := HB_INetcreate( 3 ) // cria socket com 3 segundos de timeout
pSocket := HB_INetConnect( "checkip.dyndns.org", 80 ) && , pSocket )
if HB_INetErrorCode( pSocket ) <> 0
msgstop( "Socket error:" + sl_tostring( HB_INetErrorDesc( pSocket ) ) )
HB_INetCleanUp()
return "ERRO"
endif
nBytes := HB_INetSend( pSocket, "GET / HTTP/1.1" + CRLF + "Host: checkip.dyndns.org" + CRLF + "User-Agent: HTTP-Test-Program" + CRLF + CRLF )
cBuffer := space(512)
cResponse := ""
do while nBytes > 0
nBytes := HB_INetRecv( pSocket, @cBuffer )
cResponse += left( cBuffer, nBytes )
cBuffer := space(512)
enddo
HB_INetClose( pSocket )
HB_INetCleanUp()
return allTrim( substr( substr( cResponse, rat( "<body>", cResponse ) + 26 ), 1, At( "<", substr( cResponse, rat( "<body>", cResponse ) + 26 ) ) - 1 ) )
Espero que possa lhe ser útil.
T+
Rossine.