Shneider: Wie macht man sowas?

Hi,

auf klammeraffe.org gibt es unter dem Punkt "Want to know more about you?" die Möglichkeit, genau die Route zu sehen, wie man sich zu klammeraffe.org verbunden hat.

Ich würde sowas gerne mal programmieren, vermutlich in PHP. Irgendeinen Hinweis, wonach ich suchen muss?

Viele grüße
Shneider

  1. Hi,

    auf klammeraffe.org gibt es unter dem Punkt "Want to know more about you?" die Möglichkeit, genau die Route zu sehen, wie man sich zu klammeraffe.org verbunden hat.

    Ich würde sowas gerne mal programmieren, vermutlich in PHP. Irgendeinen Hinweis, wonach ich suchen muss?

    traceroute und ggf. reverse DNS lookup.

    MfG ChrisB

    --
    RGB is totally confusing - I mean, at least #C0FFEE should be brown, right?
    1. Hi,

      Ich würde sowas gerne mal programmieren, vermutlich in PHP. Irgendeinen Hinweis, wonach ich suchen muss?

      traceroute und ggf. reverse DNS lookup.

      cool, danke dir! Werde ich gleich mal stöbern!

      schönen abend
      shneider

      1. Ein schönes Expertenforum hier. Wenn man sich das als Laie durchliest, versteht man nur Bahnhof. Das soll aber keine Kritik sein, sondern ist eher stille Bewunderung für Euren Wissensstand.

        Ebenfalls für einen Laien: Wenn das fertig gebaut ist, würde mich mal interessieren, wie das fertig aussieht (wenn Ihr das zur Verfügung stellen würdet).

        1. Hi!

          Ein schönes Expertenforum hier. Wenn man sich das als Laie durchliest, versteht man nur Bahnhof. Das soll aber keine Kritik sein, sondern ist eher stille Bewunderung für Euren Wissensstand.

          Für Laien gibt es Tutorials. Die sind in der Regel so aufgebaut, dass man von Grund auf in eine Materie eingeführt wird. Ein Forum ist kein Tutorial-Ersatz sondern üblicherweise da, um konkrete Probleme zu diskutieren. Dazu sollte man sich schon mindestens vom Laien zum Anfänger weiterentwickelt haben.

          Ebenfalls für einen Laien: Wenn das fertig gebaut ist, würde mich mal interessieren, wie das fertig aussieht (wenn Ihr das zur Verfügung stellen würdet).

          Dann hier eine Herangehensweise, die zumindest für Anfänger geeignet ist: Tipp die Wörter "traceroute script php" in eine Suchmaschine ein und versuche den Code zu verstehen. Wenn was unklar ist, stell konkrete Fragen. Ein Laie müsste mit einem PHP-Tutorial und einer Einführung in die Grundlagen von TCP/IP-Netzen starten.

          Lo!

  2. Hi!

    auf klammeraffe.org gibt es unter dem Punkt "Want to know more about you?" die Möglichkeit, genau die Route zu sehen, wie man sich zu klammeraffe.org verbunden hat.

    Die sieht man dort nicht. Man sieht nur _einen_ Weg, den Pakete vom Klammeraffen zur öffentlichen IP des Besuchers gehen. Das muss nicht zwangsläufig der selbe Weg sein, den die Pakete des Besuchers zu ihm gehen. Weiterhin ist das Internet so ausgelegt, dass die Wege sich durchaus je nach Gegebenheiten ändern.

    Ich würde sowas gerne mal programmieren, vermutlich in PHP. Irgendeinen Hinweis, wonach ich suchen muss?

    Eine Traceroute-Implementation sollte auf jedem Rechner zu finden sein. Das muss man nicht nachprogrammieren.

    Lo!

    1. Hi,

      auf klammeraffe.org gibt es unter dem Punkt "Want to know more about you?" die Möglichkeit, genau die Route zu sehen, wie man sich zu klammeraffe.org verbunden hat.

      Die sieht man dort nicht. Man sieht nur _einen_ Weg, den Pakete vom Klammeraffen zur öffentlichen IP des Besuchers gehen. Das muss nicht zwangsläufig der selbe Weg sein, den die Pakete des Besuchers zu ihm gehen. Weiterhin ist das Internet so ausgelegt, dass die Wege sich durchaus je nach Gegebenheiten ändern.

      Jetzt wo ich mich gerade einarbeite, verstehe ich auch, was da passiert. Es wird ein Testpaket gesendet, anhand dessen die Route berechnet wird. Richtig, natürlich können andere Pakete andere Wege gehen.

      Ich würde sowas gerne mal programmieren, vermutlich in PHP. Irgendeinen Hinweis, wonach ich suchen muss?

      Eine Traceroute-Implementation sollte auf jedem Rechner zu finden sein. Das muss man nicht nachprogrammieren.

      ich mach das ja nur aus edukativen Gründen, weils mir Spaß macht. Sicher bräuchte ich nur traceroute example.net in die kommandozeile eingeben. aber lernt man dabei was?

      Schon viel über Sockets gelernt heute... was für ein Spass!

    2. Hi there,

      [...] Weiterhin ist das Internet so ausgelegt, dass die Wege sich durchaus je nach Gegebenheiten ändern.

      Ausgelegt ja. Kommt aber in der Praxis nicht vor...

      1. Hi!

        [...] Weiterhin ist das Internet so ausgelegt, dass die Wege sich durchaus je nach Gegebenheiten ändern.
        Ausgelegt ja. Kommt aber in der Praxis nicht vor...

        Weil das Internet ein starres Gebilde ist und niemals nicht ein Weg hinzugefügt wird, wegfällt, ein Teil ausfällt oder ein Loadbalancer den Verkehr verteilt ...

        Lo!

        1. Hi there,

          Weil das Internet ein starres Gebilde ist und niemals nicht ein Weg hinzugefügt wird, wegfällt, ein Teil ausfällt oder ein Loadbalancer den Verkehr verteilt ...

          Während ich mir eine Seite 'runterlade IST das Internet ein starres Gebilde...

          1. Hi!

            Weil das Internet ein starres Gebilde ist und niemals nicht ein Weg hinzugefügt wird, wegfällt, ein Teil ausfällt oder ein Loadbalancer den Verkehr verteilt ...
            Während ich mir eine Seite 'runterlade IST das Internet ein starres Gebilde...

            Wenn du meinst ... Es ging hier jedoch nicht um einzelne Verbindungen sondern generell um Wege.

            Lo!

            1. Hi there,

              Während ich mir eine Seite 'runterlade IST das Internet ein starres Gebilde...

              Wenn du meinst ... Es ging hier jedoch nicht um einzelne Verbindungen sondern generell um Wege.

              Naja, der OP wollte wissen, wie es gemacht wird, daß man auf einer Webseite (sic!) den Weg sieht. Das kann immer nur eine Momentaufnahme des Routings sein. Daß der Weg zu dieser Seite nicht in Stein gemeisselt ist davon unbeschadet natürlich richtig...

              1. Hi

                Während ich mir eine Seite 'runterlade IST das Internet ein starres Gebilde...

                Wenn du meinst ... Es ging hier jedoch nicht um einzelne Verbindungen sondern generell um Wege.

                Naja, der OP wollte wissen, wie es gemacht wird, daß man auf einer Webseite (sic!) den Weg sieht. Das kann immer nur eine Momentaufnahme des Routings sein. Daß der Weg zu dieser Seite nicht in Stein gemeisselt ist davon unbeschadet natürlich richtig...

                Falsche Verwendung des Wörtchens "sic"... bitte besser Aufpassen!

                1. Hi there,

                  Falsche Verwendung des Wörtchens "sic"... bitte besser Aufpassen!

                  Hä?

          2. Hallo

            Weil das Internet ein starres Gebilde ist und niemals nicht ein Weg hinzugefügt wird, wegfällt, ein Teil ausfällt oder ein Loadbalancer den Verkehr verteilt ...

            Während ich mir eine Seite 'runterlade IST das Internet ein starres Gebilde...

            wie meinst du das? Das ALLE Datenpakete den selben Weg nehmen? Wohl kaum....

            1. Hi there,

              Während ich mir eine Seite 'runterlade IST das Internet ein starres Gebilde...

              wie meinst du das? Das ALLE Datenpakete den selben Weg nehmen? Wohl kaum....

              Natürlich tun sie das. Warum sollten sie auch nicht?

              1. Hallo,

                wie meinst du das? Das ALLE Datenpakete den selben Weg nehmen? Wohl kaum....

                Natürlich tun sie das. Warum sollten sie auch nicht?

                aus Telemedicus

                "Wie finden IP-Pakete ihren Weg von A nach B und zurück? Üblicherweise geschieht dies mittels eines verteilten Routing-Algorithmus – einer Art adaptivem Verkehrsleitsystem. Wenn ein Router ein IP-Paket empfängt, liest er zunächst dessen Adressfeld und entscheidet dann – aufgrund seiner Routingtabellen – in welches der angeschlossenen Netzwerke er es am besten weiterleitet. Um diese Routingtabellen aber zu erstellen und stetig zu aktualisieren, wird ein Protokoll namens BGP verwendet.

                Im besten Falle werden mit den so ermittelten Routen die IP-Pakete auf solchen Wegen durchs Internet verschickt, die am kürzesten und am wenigsten überlastet sind. Jedes IP-Paket kann dabei seinen eigenen Weg gehen – etwa so als ob zwei Wanderer am selben Ort loslaufen und ein Ziel verabreden, jeder aber seinen eigenen Weg und sein eigenes Tempo geht. Am Ende des Tages treffen sie sich in der Zielhütte und sind wieder beieinander. Ein Router braucht also nicht zu wissen, ob zwei IP-Pakete zur selben Verbindung gehören zwischen A und B gehören."

                1. Hi there,

                  aus Telemedicus

                  Soweit die Theorie. Technisch passiert das aber so gut wie nie. Es ist ein Mythos, daß die Routingtabellen in einem zB für den Download einer Webseite relevanten Zeitraum ständig geändert werden; dieser Mythos stammt noch aus der Zeit des Arpanets und sollte damals die technische Überlegenheit des Netz bei Ausfällen durch militärische Angriffe stärken. Daß es funktioniert und Teil des Protokolls ist, hab ich ja nie bestritten - aber mach Dir einmal die Mühe und schau' Dir Deine Packerl an und welchen Weg sie nehmen...

                  1. Hi!

                    aber mach Dir einmal die Mühe und schau' Dir Deine Packerl an und welchen Weg sie nehmen...

                    Wenn du sagst, wie das geht. Schließlich blähen sich die Packerl nicht mit einer Historie ähnlich der Received-From-Zeilen einer Mail auf. Und eine Zugriff auf die Router zwischendrin hab ich auch nicht.

                    Lo!

                    1. Hi there,

                      Wenn du sagst, wie das geht. Schließlich blähen sich die Packerl nicht mit einer Historie ähnlich der Received-From-Zeilen einer Mail auf.

                      Stimmt natürlich, die Pakete selbst tragen keine Mascherl...

                  2. Hi

                    Soweit die Theorie. Technisch passiert das aber so gut wie nie. Es ist ein Mythos, daß die Routingtabellen in einem zB für den Download einer Webseite relevanten Zeitraum ständig geändert werden; dieser Mythos stammt noch aus der Zeit des Arpanets und sollte damals die technische Überlegenheit des Netz bei Ausfällen durch militärische Angriffe stärken.

                    Soweit der Mythos.

                    "Misconceptions of design goals

                    Common ARPANET lore posits that the computer network was designed to survive a nuclear attack. In A Brief History of the Internet, the Internet Society describes the coalescing of the technical ideas that produced the ARPANET:

                    It was from the RAND study that the false rumor started, claiming that the ARPANET was somehow related to building a network resistant to nuclear war. This was never true of the ARPANET, only the unrelated RAND study on secure voice considered nuclear war. However, the later work on Internetting did emphasize robustness and survivability, including the capability to withstand losses of large portions of the underlying networks
                    [..]
                    The ARPANET was not started to create a Command and Control System that would survive a nuclear attack, as many now claim. To build such a system was, clearly, a major military need, but it was not ARPA’s mission to do this; in fact, we would have been severely criticized had we tried. Rather, the ARPANET came out of our frustration that there were only a limited number of large, powerful research computers in the country, and that many research investigators, who should have access to them, were geographically separated from them"

                    arpanet

                    Wenn du mir jetzt noch erklärst, wie ich meine Packerl auf ihren zurückgelegten Weg hin untersuchen kann, wäre ich dir EWIG dankbar :)

                    shneider

  3. Hi,

    auf klammeraffe.org gibt es unter dem Punkt "Want to know more about you?" die Möglichkeit, genau die Route zu sehen, wie man sich zu klammeraffe.org verbunden hat.

    Ich würde sowas gerne mal programmieren, vermutlich in PHP. Irgendeinen Hinweis, wonach ich suchen muss?

    Ein paar Variablen der Serverumgebung, mehr habe ich auf o.g. Seite nicht gesehen.

    HTTP_USER_AGENT
    HTTP_VIA
    HTTP_REFERER
    HTTP_X_FORWARDED_FOR

    Hotti

    1. Hi,

      Ein paar Variablen der Serverumgebung, mehr habe ich auf o.g. Seite nicht gesehen.

      Den Link anklicken, da gehts zu Traceroute, wie ich jetzt weiss. Vorher wusste ich nicht, wie das heisst.

      1. Hi,

        Ein paar Variablen der Serverumgebung, mehr habe ich auf o.g. Seite nicht gesehen.

        Den Link anklicken, da gehts zu Traceroute, wie ich jetzt weiss. Vorher wusste ich nicht, wie das heisst.

        Auf OS/2 heißt es tracerter.

        Hotti

      2. Hallo,

        Den Link anklicken, da gehts zu Traceroute

        das ist mir nach kurzem Suchen auch klargeworden - aber warum verlinkst du dann nicht gleich auf http://www.klammeraffe.org/index.html?whois, damit man sofort da ist?

        Ciao,
         Martin

        --
        Alleine sind wir stark ...
        gemeinsam sind wir unausstehlich!
        Selfcode: fo:) ch:{ rl:| br:< n4:( ie:| mo:| va:) de:] zu:) fl:{ ss:) ls:µ js:(
        1. Hi,

          Den Link anklicken, da gehts zu Traceroute

          das ist mir nach kurzem Suchen auch klargeworden - aber warum verlinkst du dann nicht gleich auf http://www.klammeraffe.org/index.html?whois, damit man sofort da ist?

          stimmt, guter Einwand, tut mir sehr leid.

          Mal was anderes, gestern habe ich mir mit Sockets und den Protokollen icmp und udp mal in PHP so einen tracer nachgebaut. Leider muss ich den immer unter ROOT starten (Unix), damit das funktioniert.
          Man kann also die sockets (i.S. raw sockets) nur als ROOT ansprechen. Ist das immer so? Gibt es Möglichkeiten, dies zu umgegehen? Dann kann ich mein Skript leider auf meiner Website (hoster all-inkl) nicht beheimaten.

          1. Hi!

            Mal was anderes, gestern habe ich mir mit Sockets und den Protokollen icmp und udp mal in PHP so einen tracer nachgebaut. Leider muss ich den immer unter ROOT starten (Unix), damit das funktioniert.

            Ja, die Ports unter 1024 sind so genannte Privileged Ports, die denen darf der normalsterbliche User keine Dienste anbieten. Das war mal gedacht, dass man auf diese Ports vertrauen kann, dass da ein sachkundiger Admin was aufgesetzt hat. Nun, heutzutage haben die Rechner schon lange den Weg raus aus den Rechenzentren gefunden und jedes Lieschen Müller kann Root werden. Die Port-Priviliegisierung wäre damit eigentlich überflüssig.

            Lo!