Ergebnis 1 bis 12 von 12

Thema: OSPF/RIP/BGP Routing mit bird

  1. #1
    IPPF-Einsteiger
    Registriert seit
    09.11.2006
    Beiträge
    14

    OSPF/RIP/BGP Routing mit bird

    Hallo zusammen

    hat einer von euch schon für die Fritzbox den "bird" Daemon kompiliert? Das DD-WRT Projekt für die Linksys Kisten hat den ziemlich kleinen Routing Daemon via busybox ins Paket mit eingebaut.

    Wenn einer von euch den schon fertig hat (ob static oder busybox) wäre ich für Infos oder Pakete dankbar. Ich hänge derzeit noch am Erstellen der Toolchains zum kompilieren. Ständig bleibt das erstellen der toolchain beim erstellen hängen.

    Ich helfe auch gerne beim erstellen der OSPF Konfig usw.

    Ich hoffe nur das openvpn, bird und asterisk gleichzeitig auf der maschine rennen. (wird wohl knapp)

  2. #2
    IPPF-Einsteiger
    Registriert seit
    09.11.2006
    Beiträge
    14
    Die Toolchain läuft soweit zum compilieren, allerdings bekomme ich beim ./configure von bird jetzt einen Fehler mit dem ich nicht wirklich viel was anfangen kann.

    Code:
    $ ./configure --target=mipsel-linux --host=mipsel-linux
    [...]
    checking CPU endianity... not available, we're cross compiling
    configure: error: Cannot determine CPU endianity.
    Kann jemand was mit der Fehlermeldung anfangen? Google hat mir bisher nicht wirklich weitergeholfen. Google hat lediglich den Sourcecode von bird selbst gefunden.

  3. #3
    IPPF-Fünfhundert-Club Avatar von knox
    Registriert seit
    20.05.2006
    Beiträge
    577
    Zitat Zitat von griffon
    allerdings bekomme ich beim ./configure ... einen Fehler
    Code:
    not available, we're cross compiling
    diese probleme hat man sehr häufig, wenn man etwas mit dem crosscompiler bauen will. generell ist das problem, dass manche configure scripte bestimmte eigenschaften des zielsystems nicht ermitteln können, da sie ja auch einem andern build system ausgeführt werden.

    hier gibt es leider keine "einfache" lösung: schau das configure script genau an und prüfe, was es zu ermitteln versucht - und wie.
    dann führe diese tests auf dem zielsystem manuell durch und übergebe die gewonnenen ergebnisse beim aufruf von configure gleich mit.
    im ergebniss werden die betreffenden tests dann übersprungen und du kannst erfolgreich cross-compilen.
    ich glaube, u.a. bei meinem makefile für tor (tor.mk) kannst du ein schönes beispiel für dieses vorgehen finden.
    Freiheit statt Angst - Stoppt den Überwachungswahn! - 11.10. Berlin Alexanderplatz, ab 14:00 Uhr

  4. #4
    IPPF-Einsteiger
    Registriert seit
    09.11.2006
    Beiträge
    14
    Danke knox

    Die Stelle hab ich mittlerweile geschafft. Durch eine Testkompilierung und der Test auf der Zielmaschine (Fritzbox) hab ich das ergebnis raus.
    Code:
    bird_cv_c_endian=little-endian
    Aber beim kompilieren stoße ich auf die nächsten Fehlermeldungen von flex bei denen ich nicht weiterkomme.
    Code:
    $ make
    [...]
    flex  -sB8 -ocf-lex.c -Pcf_ cf-lex.l
    flex: option `s' doesn't allow an argument
    Try `flex --help' for more information.
    Jemand der mir noch ein paar Tipps geben kann zum cross compilen?

  5. #5
    IPPF-Fan
    Registriert seit
    04.07.2006
    Ort
    Leipzig
    Beiträge
    347
    Hi

    also der Daemon compiliert schonmal, siehe auch angehängter Patch. Wenn ich das alles richtig verstanden habe, gibts dazu auch noch ein "client"-Tool zum Überwachen und Steuern des Daemon, das braucht aber readline als Lib und die gibts wohl noch nicht für den dsmod, oder hab ich die nur übersehen?
    Was die Konfiguration angeht, hab ich aber noch keinen Plan. Vielleicht kann jmd eine {Minimal,Default}-Konfig erstellen und beisteuern? Ich müsste mich da erstmal einlesen, weil ich kannte bird bis vor wenigen Stunden noch nicht
    Wäre aber offensichtlich die Lösung, um mein VPN-Routing etwas übersichtlicher zu machen...

    Gruß
    Michael

    EDIT:
    Ha, zu lange zum Schreiben gebraucht, daher das vorangegangene Posting nicht gesehen.
    flex nimmt die Parameter einzeln entgegen, zumindest bei mir unter Debian Sarge, d.h. "flex -s -B -8.."
    (siehe auch Patch im Patch)

    EDIT2:
    Patch & Paket im Anhang entfernt, aktuelle Versionen siehe weiter unten im Thread.
    Geändert von derheimi (17.12.2006 um 14:32 Uhr)
    Router Leipzig: FRITZ!Box Fon WLAN 7170 mit 29.04.57-freetz-devel-2315M
    Pakete: dnsmasq, dropbear, snmpd, openvpn, bird, brctl DSL: 2304/224 kBit/s, Provider: GMX
    Router Fraureuth: FRITZ!Box Fon WLAN 7170, Firmware-Version 29.04.37ds26-15.1 (replace kernel)
    Pakete: wie oben + cpmaccfg, DSL: 864/160 kBit/s, Provider: GMX

  6. #6
    IPPF-Einsteiger
    Registriert seit
    09.11.2006
    Beiträge
    14
    danke fürs kompilieren, das hat mir schonmal geholfen. Aber beim ausführen vom "bird" auf der Console bleibt es nur bei einem "segmentation fault" :/

  7. #7
    IPPF-Einsteiger
    Registriert seit
    09.11.2006
    Beiträge
    14
    @Michael: Hier schonmal vorbab meine VPN Konfig (in Rohform)

    Man nahme einen OpenVPN Server (Bei mir im Server-Bridge Modus), idealerweiße auf einem Rootserver. Dort melden sich alle VPN Clients an und erhalten eine Adresse auf der gemeinsamen VPN Bridge.

    Durch den OpenVPN BridgeModus können nachher alle Clients sich z.b. mit ihrem OSPF Hello sehen.

    Code:
    router id 10.128.1.250
    protocol kernel {
            learn; persist;
            scan time 20;
            import all;
            export all;
    }
    protocol device {
            scan time 10;
    }
    protocol direct {
            interface "*";
    }
    filter ospf_out {
            if net = 0.0.0.0/0 then reject;
            else if net = 192.168.178.0/24 then reject;
            else accept;
    }
    protocol ospf vpn_ospf {
            import all;
            export filter ospf_out;
            area 0.0.0.0 {
                    networks {
                            10.0.0.0/8;
                    };
                    interface "tap0" {
                            cost 100;
                            authentication cryptographic;
                            passwords {
                                    password "DOLLESPASSWORT" {
                                            id 1;
                                    };
                            };
                    };
            };
    }
    Kurn noch ein paar Worte zu der Config. Natürlich gilt das ganze Ein wenig Grundwissen über OSPF, Areas usw sollte man schon haben, dann wird das ganze später einfacher.

    in networks müsstest du alles netzbereiche eintragen in denen du deine Netzwerk Interfaces hast. Auf dem Interface kannst du dann weitere Dinge wie OSPF authentication usw. einstellen.

    der filter "ospf_out" schütz andere Clients. Würdest du einfach alle Routen exportieren die du auf deinem VPN Client hast, würdest du auch die Default Route 0.0.0.0 mitschicken. Dann würden alle Clients diese Route auch lernen weiß beim nächsten Reconnect zu sehr unschönen Effekten führt. Daher erst garnicht exportierne oder besser importieren.
    Geändert von griffon (04.01.2007 um 00:56 Uhr)

  8. #8
    IPPF-Fan
    Registriert seit
    04.07.2006
    Ort
    Leipzig
    Beiträge
    347
    Das "segmentation fault" kommt vermutlich daher, dass die vorcompilierten binaries gegen eine leicht andere uClibc gelinkt sind (zugegeben, so richtig habe ich das mit dem APIs/ABIs, Linken & Co noch nicht verstanden). Wirst Du vermutlich nur durch ein "make bird-precompiled" oder gar "make precompiled" wegbekommen. "rebuild_uClibc" hast Du ja sicher schon gemacht... (BTW: Welche FB bzw. welche dsmod version nimmst Du?)
    Router Leipzig: FRITZ!Box Fon WLAN 7170 mit 29.04.57-freetz-devel-2315M
    Pakete: dnsmasq, dropbear, snmpd, openvpn, bird, brctl DSL: 2304/224 kBit/s, Provider: GMX
    Router Fraureuth: FRITZ!Box Fon WLAN 7170, Firmware-Version 29.04.37ds26-15.1 (replace kernel)
    Pakete: wie oben + cpmaccfg, DSL: 864/160 kBit/s, Provider: GMX

  9. #9
    IPPF-Einsteiger
    Registriert seit
    09.11.2006
    Beiträge
    14
    FB 7170 und noch das normale ds-mod-0.2.9 aber ich muss eh nochmal irgendwie von vorne anfangen, da openvpn noch nicht sauber funktioniert wegen der openssl libs.

    Ich hab aber gesehen das du die ds-0.2.9_26-9 version verwendest. Nunja ich fang mal an und schau mal wie ich nochmal sinnvoll anfange mit dem bauen.

  10. #10
    IPPF-Einsteiger
    Registriert seit
    09.11.2006
    Beiträge
    14
    Vielen Dank. Nachdem ich mit der aktuellen Labor Firmware und dem passende ds-mod alles nochmal kompiliert habe, funktioniert der bird daemon sowie auch openvpn endlich.

    Jetzt darf ich mich wieder mit meinem vpn problemchen auseinander setzen

  11. #11
    IPPF-Fan
    Registriert seit
    04.07.2006
    Ort
    Leipzig
    Beiträge
    347
    Ich hab mal versucht, den birdc mit zu compilieren. Dazu muss man allerdings die libreadline vorher einbinden.

    @griffon:
    Danke für die Bsp-Konfig, das sieht ja gar nicht so schwierig aus, das an die jeweiligen Bedürfnisse anzupassen. Nun ja, morgen ist auch noch ein Tag

    EDIT: Patches aktualisiert.
    Angehängte Dateien Angehängte Dateien
    Geändert von derheimi (20.01.2007 um 09:38 Uhr) Grund: Patches aktualisiert
    Router Leipzig: FRITZ!Box Fon WLAN 7170 mit 29.04.57-freetz-devel-2315M
    Pakete: dnsmasq, dropbear, snmpd, openvpn, bird, brctl DSL: 2304/224 kBit/s, Provider: GMX
    Router Fraureuth: FRITZ!Box Fon WLAN 7170, Firmware-Version 29.04.37ds26-15.1 (replace kernel)
    Pakete: wie oben + cpmaccfg, DSL: 864/160 kBit/s, Provider: GMX

  12. #12
    IPPF-Fan
    Registriert seit
    04.07.2006
    Ort
    Leipzig
    Beiträge
    347

    Idee Neuer Patch und neues Paket

    Changelog:
    • allgemeine Verbesserungen an den Make-Scripten
    • bash-spezifische Sachen entfernt
    • Debugging-Code lässt sich mit bauen
    • Bird-Konfiguration nun via WebIf möglich (IMHO nun ein "vollwertiges" Paket)
    • Erzeugung einer Defaultkonfiguration (spricht: RIP und OSPF), die vermutlich in den meisten Fällen ausreichend sein wird, wenn keine eigene Konfiguration beim ersten Start gefunden wird

    libreadline-Patch aus vorhergehendem Posting wird immer noch benötigt!

    Bekannte Bugs:
    • Bird startet beim Booten der Box auf den 7170 irgendwie nicht richtig, auf meiner 7141 klappt alles prima. "Händisches" Starten via cron oder per Telnet/SSH klappt dann aber. Noch keine Zeit gehabt, das endgültig zu debuggen...
    • Direkt nach dem Flashen eines neuen Images und anschließendem "Soft-Reboot", findet bird die anderen Router via OpenVPN-Tunnel nicht. Hier hilft nur ein hartes vom Strom trennen, dann klappt es mysteriöserweise wieder.
    • griffon hat berichtet, dass ihm der bird ab und zu beim Berechnen der Routen mit einem Segfault stirbt.
    Angehängte Dateien Angehängte Dateien
    Geändert von derheimi (13.03.2007 um 10:38 Uhr)
    Router Leipzig: FRITZ!Box Fon WLAN 7170 mit 29.04.57-freetz-devel-2315M
    Pakete: dnsmasq, dropbear, snmpd, openvpn, bird, brctl DSL: 2304/224 kBit/s, Provider: GMX
    Router Fraureuth: FRITZ!Box Fon WLAN 7170, Firmware-Version 29.04.37ds26-15.1 (replace kernel)
    Pakete: wie oben + cpmaccfg, DSL: 864/160 kBit/s, Provider: GMX

Ähnliche Themen

  1. Routing?
    Von baeckerman83 im Forum Providerberatung
    Antworten: 3
    Letzter Beitrag: 26.04.2009, 15:45
  2. IP-Routing die X-te
    Von hugoea im Forum FRITZ!Box Fon WLAN: Diskussion nur zum Funknetzwerk
    Antworten: 3
    Letzter Beitrag: 27.01.2008, 12:28
  3. routing mit PBX
    Von edefauler im Forum PBX-network
    Antworten: 1
    Letzter Beitrag: 19.05.2007, 02:15
  4. Antworten: 13
    Letzter Beitrag: 07.02.2007, 23:52
  5. SER Routing
    Von Merli im Forum SER-Konfiguration
    Antworten: 0
    Letzter Beitrag: 30.09.2006, 09:17

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •