Odium: ping

Hallo,

ich teste gerade die möglichkeiten ein ping an einen host zu schicken...

bisher habe ich dynamisch eine bat geschrieben, die das ergebnis in eine textdatei umleitet, welche dann ausgelesen wird. dies funktioniert als reines vbs-file... die umsetzung in asp schlägt dagegen fehl... anscheinend rechteprobleme, da die batchdatei nicht gestartet wird... obwohl ich die authentifizierung auf das verzeichnis angewendet habe... ich werde dann ´nicht merh als I_USR sondern als mein benutzername geführt...

kennt jemand eine andere möglichkeit ein ping oder ein arp auszulösen?

ich hab mir eine dll fürs pinging gezogen, aber neue serverkomponenten zu installieren würde ich eher ans ende der möglichkeiten stellen.

sieht jemand eine andere variante?

Danke

Odium

  1. Hi Odium

    hab da gerade einen Link gefunden, die Idee scheint mir die gleiche zu sein wie bei Dir, es soll aber angeblich funktionieren ;)
    Hier der Link: http://www.aspheute.com/artikel/20010516.htm
    evtl. kannst Du damit etwas anfangen.

    Grüße aus Oberfranken

    Sven

    1. Hallo,

      diesen Artikel kannte ich leider schon. wie gesagt, anscheinend ein rechteproblem. dies ist auch nicht so ohne weiteres zu ändern: Intranet mit ~400 teilnehmern...

      Odium

  2. Hallo,

    kennt jemand eine andere möglichkeit ein ping oder ein arp auszulösen?

    am einfachsten mit SSI (Server Side Includes). Erzeuge folgende Seite und speichere sie mit der Endung .shtml oder .shtm in einem virtuellen Verzeichnis, das Du auf "Ausführen" setzt.

    PING.SHTML:

    <html>
     <head><title>Ping</title></head>
     <body>
      <h1>Ping</h1>
      <pre>
      <!--#exec cmd="ping.exe 192.168.0.10" -->
      </pre>
     </body>
    </html>

    Virtuelles Verzeichnis auf Ausführen setzen:

    1. Internet Dienst Manager starten (MS Management Konsole)
    2. Virtuelles Verzeichnis erzeugen, z.B. /Test
    3. Verzeichnis mit rechter Maus anklicken, Eigenschaften anklicken
    4. Einstellung der Anwendung: Ausführen (einschl.Skript) anklicken

    Sollte jetzt gehen...

    CU Christoph

    1. Hallo,

      danke für deine Antwort. werde es dann gleich probieren. Eine Frage noch, da ich die Dateien mit der Endung .shtml oder .shtm  speichern soll steht der host zum pingen ja fest, oder ist hier der asp interpreter zur mitarbeit zu bewegen? Ich glaub der arbeitet nur bei dateien mit asp extension...

      Danke

      Odium

      1. Hallo,

        danke für deine Antwort. werde es dann gleich probieren. Eine Frage noch, da ich die Dateien mit der Endung .shtml oder .shtm  speichern soll steht der host zum pingen ja fest, oder ist hier der asp interpreter zur mitarbeit zu bewegen? Ich glaub der arbeitet nur bei dateien mit asp extension...

        So ist es. Wird eine Datei mit der Endung .shtm oder .shtml vom Browser angefordert, so wird der ASP-Parser gar nicht aufgerufen, sondern der SSI-Parser. Möchtest Du also eine "variable" Ping-Adresse angeben, kommst Du meiner Meinung nach um eine Komponente nicht herum, die in ASP mit CreateObject aufgerufen wird. So eine kann man selber schreiben (z.B. VisualBasic - ActiveX-DLL) oder im Web beziehen...

        Das einzige, was Du mal probieren kannst, ist die INCLUDE Anweisung in Deinem ASP-Script, ich glaub aber nicht wirklich, daß das funktioniert, da man sie nicht anwenden kann, wenn man schon übergebene Parameter aus dem Request-Objekt abgerufen hat (z.B. die Ping-Adresse).

        Vorstellbar wäre aber, die ping.exe in das auf "ausführbar" gesetzte Verzeichnis zu kopieren, und mit einem durch ASP generierten, dynamischen Link aufzurufen:

        response.write('<a href="/test/ping.exe?' & request('pingadr') & '">Ping</a>')

        Der zurückgelieferte html-Code sollte dann zeigen:

        <a href="/test/ping.exe?192.168.0.10">Ping</a>

        CU Christoph

        1. Hallo,

          ein eigenes objekt hierfür wäre natürlich am besten...

          ich hab einige durchgestöbert, die bei mir laufen, aber auf einem 2000er system nicht... andere krieg ich nicht registriert, da sie woll sofort einen server verlangen... aber direkt auf dem server zu installieren ´kann ich so schnell nicht...

          mal sehen ob ich hier mal nen testserver (pws reicht ja) hochziehe...

          ein eigenes objekt wäre natürlich am besten, aber dazu fehlt mir das wissen ein ping zu programmieren...

          die visualbasic cce hab ich da, könnte also eine ocx erstellen... bei formularen, die dann über vb-script aufrufbar sind hab ich dies schon getan, aber wie mach ich einen ping?

          Odium

        2. Hi,

          fyi:

          man kann .shtm(l) und sämtliche anderen Dateien auch vom ASP-Parser verarbeiten lassen, dazu muß man das Mapping entsprechend auf die asp.dll legen (Applikationskonfiguration).

          Auch dann funzen die ServerSide Includes noch, weil sie ja von Natur aus auch in normalen ASP-Dateien funktionieren.

          Aber: SSIncludes werden generell vor der Verarbeitung von ASP-Code ausgeführt, es ist also nicht möglich (afaik) SSIncludes dynamisch einzusetzen, leider.

          Als Tip, wie man mit VB Pingen und Tracen kann, habe ich neulich auf http://www.developerfusion.com/ irgendeinen relevanten Artikel gesehen.

          HTH, tschau, Frnak

          1. Hallo,

            danke für eure mühen...

            ich hab mir jetzt einen vb quellcode im netz angesehen... die greifen direkt auf winsockfunktionen zu (icmp-protokoll)

            ich hab den quellcode umbauen müssen und mit der vb cce in eine ocx kompiliert...

            dies kann ich nun als serverobjekt in asp oder direkt in vb-script einbinden und so ausführhen lassen...

            habs auch unter win2000 registriert bekommen...also es scheint zu gehen...

            komisch ist nur, das bei hosts die nicht existent sind auch ein status von 0 kommt. (so wie bei erfolg) dafür ist die ermittelte ip 0.0.0.0
            übrigens falls ihr die cce noch nicht kennt, solltet ihr euch mal ansehen... intern wird dort vb gesprochen, es ist aber nur möglich in ocx zu kompilieren, aber dies ist auch ausreichend um ein serverobjekt zu erhalten... z.B. für einfache sachen wir formulare (in vb-script gibt es selber ja nur inputbox )
            in dem buch "Scripting Host Werkzeugkasten" von Tobias Weltner ist das ganze gut beschrieben...

            man beachte die sonderangebote bei www.terrashop.de !!

            Odium