Das längste Thema

  • Och nicht schon wieder... X/


    Neuer Node, altes Problem: jegliche nicht existierende Subdomain (hab bei einigen Domains kein WIldcard hinterlegt) leitet wieder auf die mir völlig fremde Domain https://www.mycodejob.de/ weiter. Das passiert logischerweise auch, wenn man die default-Seite des Nodes aufruft: https://a2fc4.netcup.net ... das fiel mir beim anderen Webhosting-Paket auch schon auf. Wurde dann zwar nach meiner Info gefixt, finde ich dennoch völlig Banane. :(


    Mal sehen wie lange es diesmal dauert. :P

  • Gegeben sei eine Liste mit sehr sehr sehr sehr vielen Subnetzen (entweder v4 oder v6, nicht gemischt). In der Liste gibt es mehrere große Subnetze, welche sehr viele kleinere Subnetze aus der Liste enthalten.


    Ich möchte diese Liste optimieren, indem kleine Subnetze aussortiert werden, welche bereits durch größere Subnetze abgedeckt werden.


    Nach meinem Brainstorming sollte man das machen können, indem man die Netzanteile in Binärschreibweise vergleicht. Aber so ganz bekomm ich das noch nicht so zu Ende gedacht... :/


    Hat das schon mal jemand gemacht und da ein Script dafür liegen? Oder hat jemand ein paar Ideen/Pseudocodeschnipsel, mit denen man das möglichst elegant lösen könnte? :)

  • Gegeben sei eine Liste mit sehr sehr sehr sehr vielen Subnetzen (entweder v4 oder v6, nicht gemischt). In der Liste gibt es mehrere große Subnetze, welche sehr viele kleinere Subnetze aus der Liste enthalten.

    Das klingt wie eine Aufgabe aus der Berufsschule :pinch:

  • whoami0501 ohne rechnen wird es nicht gehen z.B. 88.17.77.0/24 ist im Subnet 88.16.0.0/15 enthalten

    die beiden Subnetze in hexadezimaler Schreibweise 0x58.0x11.04d.0x00/24 und 0x58.0x10.0x00.0x00/15

    in binär das größere oben und darunter das kleinere


    Code
    1. 01011000 0001000|0 00000000 00000000
    2. 01011000 0001000 1 01001101 00000000
    3. 11111111 1111111 0 00000000 00000000 <-- subnet mask vom großen Netz


    das kleinere Subnetz ist im größeren Subnetz genau dann enthalten, wenn gilt:

    ( netId( kleines Netz ) & subnetmask( großes Netz ) ) == netId( großes Netz )

    dies sieht man darüber, links vom Marker stimmen die Bits überein


    bei IPv6 gilt analoges, sind nur mehr Bits;

    Grüße / Greetings

    Walter H.


    RS 1000 SAS G8 xRAM; RS 500 SSD G8; VPS 200 G8 Akt.; Webhost. 1000 m. 75%

  • So in etwa war mein Gedanke. Das Problem ist, dass das ganze theoretisch mehrere Stufen haben kann. Also z.B. ein 24er, was in einerm 21er ist, was in einem 16er ist, welches am Ende in einem 12er ist. Da müsste ich ja dann anders herangehen.


    Was gehen könnte, ist, dass ich die Liste der Netzgröße entsprechend absteigend sortiere (größte Netze oben) und dann Netz für Netz die Liste nach Netzen durchsuche, die mit meiner NetzID beginnen. Damit könnte es theoretisch gehen... oder habe ich da noch einen Denkfehler? :/



    EDIT:

    Das klingt wie eine Aufgabe aus der Berufsschule

    Umso mehr ich darüber nachdenke... ich habe ab nächste Woche nen neuen Azubi im Team. Also ich meine der könnte ja... aber ich glaube bei Privatkram springt unser Product Owner im Dreieck. :D

  • So in etwa war mein Gedanke. Das Problem ist, dass das ganze theoretisch mehrere Stufen haben kann. Also z.B. ein 24er, was in einerm 21er ist, was in einem 16er ist, welches am Ende in einem 12er ist. Da müsste ich ja dann anders herangehen.

    nein eigentlich nicht; du fängst mit der Reihe nach mit dem kleinsten Netz beginnend zu prüfen ob das Teil eines der größeren Netze ist,

    ist das der Fall, ignorierst Du dieses Netz, ist dem nicht so, dann hat es Sinn auf der Liste zu sein;


    Was gehen könnte, ist, dass ich die Liste der Netzgröße entsprechend absteigend sortiere (größte Netze oben) und dann Netz für Netz die Liste nach Netzen durchsuche, die mit meiner NetzID beginnen. Damit könnte es theoretisch gehen... oder habe ich da noch einen Denkfehler?

    da gehts jetzt sicher um Blacklisten-Optimierung od. so;

    im Prinzip kannste das so machen;

    Grüße / Greetings

    Walter H.


    RS 1000 SAS G8 xRAM; RS 500 SSD G8; VPS 200 G8 Akt.; Webhost. 1000 m. 75%