Announcement

Collapse
No announcement yet.

Interbase und Internet

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Interbase und Internet

    Hallo beisammen,

    ich habe ein Problem beim Connect mit dem IBServer auf einem WebServer.

    Verwendet wird IB6, Win2003 Server, Delphi 6.

    Auf dem Web-Server ist IBServer installiert. Datenbank und Proramm sind installiert, ein Connect über TCP ist eingerichtet.

    In der hosts steht die IP des Servers sowie ein alias.

    Der Webserver kann angepingt werden und wird mit remoute Desktop ferngesteuert.

    Wenn ich jetzt über delphi6 mit der Komponente TIBDatabase (Params wie für lokalen Zugriff ausgefüllt, Loginprompt = false) ein Connect herstellen möchte, kommt, nach laaanger Zeit, eine Fehlermeldung:

    "unable to comlete networkrequest to host "XX".
    Failed to establish a connection.
    unknown win32Error 10060."

    Was ist das denn?

    Danke euch

    Gruß

    Peter

  • #2
    Hallo Peter,
    <br><br>
    hast Du jetzt den InterBase Server und den Web-Server auf einer Maschine? Oder hast Du für InterBase und den Web-Server jeweils eine eigene Maschine?
    <br><br>
    Was ist nun Deine Delphi Anwendung? Eine Web (ISAPI) Anwendung, die auf der selben Maschine wie der Web-Server liegt und sich über TCP/IP zur Datenbank verbindet? Mir ist Deine Konfiguration noch nicht ganz klar. ;-)
    <br><br>
    Wie sind die Properties Deiner TIBDatabase genau gesetzt?
    <br><br>
    Thoma
    Thomas Steinmaurer

    Firebird Foundation Committee Member
    Upscene Productions - Database Tools for Developers
    Mein Blog

    Comment


    • #3
      Hallo Thomas,

      ich habe folgende Konstellation:

      PC1: Webserver
      Win2003 Server
      IBServer 6.x

      PC2: HomePC
      Win2000
      IBServer6.x
      Delphi 6.0 pro
      Frontend in Delphi

      Auf dem Webserver wurde das Program mit TCP/IP getestet
      Auf dem Frontend wurde das Programm mit TCP/IP getestet
      Auf einem lokalen Netzwerk wirde das Programm mit TCP/IP getestet

      Soweit alles o.k.

      Der WebServer wurde mit seiner TCP/IP in der hosts eingetragen.
      Ping mit Adresse und Alias klappt.

      FTP bzw. remote klappt

      Datenbankconnect scheitert. Ich vermute, dass der Webserver das Login nicht zulässt, da ja keine Anmeldung passiert.

      in Delphi wird die Komponente TIBDatabase und TIBTransaction benutzt.

      Die Propertys:
      True
      false
      wird zur Laufzeit gesetzt
      die IBTransaction
      0
      false
      name
      "user_name=sysdba
      password=masterkey
      lc_ctype=WIN1252
      "
      3
      0
      []

      Wäre toll, wenn du mir weiter helfen könntest.

      Gruß

      Pete

      Comment


      • #4
        Hallo Peter,
        <br><br>
        ich bin noch immer verwirrt. ;-)
        <br><br>
        Handelt es sich hier jetzt um eine Webanwendung oder eine Win32-Anwendung, die einfach auf Deinem Webserver liegt und die EXE freigegeben wird und die Clients die aufrufen.
        <br><br>
        Bei welcher Konstellation scheitert nun die Verbindung?
        <br><br>
        Übrigens, mit IB 6.x wirst Du unter Win2003 nicht glücklich werden. Langsame Connect/Disconnect-Zeiten sind die Regel. Entweder Du verwendest InterBase 7.1 oder höher oder Firebird 1.5
        <br><br>
        Thoma
        Thomas Steinmaurer

        Firebird Foundation Committee Member
        Upscene Productions - Database Tools for Developers
        Mein Blog

        Comment


        • #5
          Hallo Thomas,

          es handelt sich um eine Anwendung, welche

          1. als Frontend Delphi einsetzt mit den beschriebenen Komponenten

          2. als Datenbank Interbase nutzt

          Interbase als Server- Installation liegt auf dem Webserver und soll von dem Frontend angesprochen werden.
          Im lokalen Netzwerk, Frontend mit Aufruf der Datenbank auf dem Server via TCP/IP, funktioniert das auch.

          Nur bei dem Webserver halt nicht.
          Der Fehler kommt direkt beim login mit der Datenbank (so sieht das jedenfalls für mich aus)

          Gruß

          Pete

          Comment


          • #6
            Hallo Peter,
            <br><br>
            - Wie sieht der Connect-String exakt aus, wenn Du Dich versuchst mit der Anwendung am Web-Server zu der Datenbank am Web-Server zu verbinden?
            <br><br>
            - Was hast Du in der hosts Datei am Server eingetragen und warum war das notwendig? Hat der Server eine fixe IP-Adresse oder bekommt dieser von einem DHCP-Server eine dynamisch zugewiesen?
            <br><br>
            Eigentlich sollte es reichen, wenn man immer folgenden Connect-String verwendet:
            <pre>
            servername:c:\...
            </pre>
            Wobei servername der tatsächliche Computername des Servers ist. Mit diesem Connect-String sollte sich jeder Client verbinden können und auch der Connect "am Server zum Server" sollte damit funktionieren. Vielleicht pfuscht Dir ja der hosts Eintrag da rein.
            <br><br>
            Thoma
            Thomas Steinmaurer

            Firebird Foundation Committee Member
            Upscene Productions - Database Tools for Developers
            Mein Blog

            Comment


            • #7
              Halo beisammen, Thomas ;-)

              bin erst jetzt wieder daz gekomen, am Programm zu arbeiten.
              Mein Problem stellt sich also jetzt wie folgt dar:

              1. Webserver wurde mit Interbase 6.0x installiert, IBConsole per TCP/IP auf eine vorhandene Datenbank eingerichtet.
              Alle Tests sind erfogreich.

              2. Mein PC wird ebenfalls mit der gleichen Version IB eingerichtet. In der hosts ist der WebPC eingetragen. Folgende Tests scheitern:

              - 3050
              - gds_gdb

              In der Services beider PC's ist der Port 3050 eingetragen.

              Was läuft hier falsch?

              Danke euch vielmals!

              Gruß

              Pete

              Comment


              • #8
                Hallo Peter,<p>
                1. wie sieht denn nun dein connect-String aus ?
                .<br>
                2. Verwendest du eine Firewall, die den Port 3050 sperrt ?
                <p>
                Heik

                Comment


                • #9
                  hallo heiko,

                  danke für Dein Interesse.

                  Meine Firewall hatte ich ausgestellt (Win2000 ZoneAlarm).
                  Ich versuche via IBConsole ein Connect herzustellen. Was meinst du mit Connect-String. Wo sehe ich den?

                  Gruß

                  Pete

                  Comment


                  • #10
                    Hallo beisammen

                    vielleicht noch mal etwas näher beleuchtet:

                    1. Mein Arbeits-PC (Win2000 pro) hat IBServer 6.x sowie eine Internetverbindung (DSL)

                    2. Der Web-Server (Win2003 Server) hat IB-Server 6.x

                    Beide haben den Eintrag gds_db 3050/tcp

                    Auf meinem PC ist in der hosts der Web-Server mit seiner TCP/IP Adresse eingetragen

                    Auf dem Web-Server liegt in eine Datenbank.
                    Diese lässt sich auf dem Web-Server lokal und via TCP/IP ansprechen (Per Programm und per IBConsole)

                    Von meinem Arbeits-PC aus kann ich den Webserver über die IB-Console aus ansprechen mit den Diensten PING und FTP und 21.
                    3050 jedoch funktioniert nicht.
                    Der Portscanner auf beiden PC zeigt mir den aktiven Port 3050, belegt durch IBServer mit listen an.

                    SO, warum also kann ich nur den Web-Server über den Port 3050 nicht ansprechen?

                    Vielen Dank an alle

                    Gruß

                    Pete

                    Comment


                    • #11
                      Hallo beisammen,

                      ich bin leider immer noch nicht weiter.
                      kann mir vielleicht jemand kurz ein Beispiel geben, wie eine Interbase-Datenbank via DSL auf einem Webserver Win2003 (von 1und1) angesprochen werden muß?

                      Vermutlich reicht mir ein Beispiel für die IB-Console.
                      Oder ist es der Web-Server, welcher die Probleme macht?

                      MfG

                      Peter Grünhag

                      Comment


                      • #12
                        Hallo,

                        &gt;Oder ist es der Web-Server, welcher die Probleme macht?

                        davon gehe ich aus, denn die Fehlermeldung "..unknown win32Error 10060" deutet auf ein Firewall-Problem bzw. auf eine Adressübersetzung im IP-Header hin.

                        Generell ist das geplante Vorhaber auch sehr ungewöhnlich. Ein direkter Client/Server-Zugriff macht nur dann Sinn, wenn das Netzwerk für kleine Datenpakete eine kurze Antwortzeit hat (LAN), was aber im Fall eines Zugriffs auf einen Internet-Server niemals der Fall ist.

                        Der "bessere" Weg besteht darin, die InterBase-Datenbank auf dem Webserver durch eine dreischichtige Anwendung (Three-Tier) zu kapseln, indem zum Beispiel ein XML Web Service dazwischengeschaltet wird. In diesem Fall benötigt der Client-Rechner nur einen offenen Port 80, da die Daten als XML verpackt über das HTTP-Protokoll transportiert werden. Wenn der Client-Rechner eine HTML-Seite auf dem Web Server aufrufen kann, ist dann in jedem Fall auch der Aufruf des XML Web Service erfolgreich (d.h. eventuelle Firewalls und Router sind dann als Störungsquelle irrelevant)

                        Comment


                        • #13
                          Vielen Dank Herr Kosch,

                          leider habe ich davon keine Ahnung.
                          Bin halt zu diesem Zustand gekommen wie die Jungfrau zum Kind.
                          Die vorherigen Anforderungen waren der Betrieb im LAN.

                          Ich fürchte das dauert, bis ich in diesem Thema etwas bewirken kann.

                          MfG

                          Pete

                          Comment

                          Working...
                          X