<html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class="">Hej -<div class=""><br class=""></div><div class="">sorry for being late to the game (this thread), but $dayjob kept me busy - what else is new...</div><div class=""><br class=""></div><div class=""><br class=""></div><div class="">I have been an avid user of BIRD (1.x and 2.x) on the Ubiquiti platforms - on both major versions of "EdgeOS" and on both hardware platforms (Octeon → MIPS-BE and "the other" → MIPS-LE (all EdgeRouter X models))</div><div class=""><br class=""></div><div class="">Yes, I am using the original EdgeOS, which is just-another-debian-distro, namely:</div><div class=""><br class=""></div><blockquote style="margin: 0 0 0 40px; border: none; padding: 0px;" class=""><div style="font-size: 13px;" class="">EdgeOS 1 → Debian 7.11 with "3.10.107-UBNT #1 SMP Fri Feb 21 09:19:25 UTC 2020 mips64 GNU/Linux" kernel and</div><div style="font-size: 13px;" class=""><br class=""></div><div style="font-size: 13px;" class="">EdgeOS 2 → Debian 9.12 with "4.9.79-UBNT #1 SMP Thu Mar 5 16:48:40 UTC 2020 mips64 GNU/Linux" kernel.</div></blockquote><div class=""><br class=""></div><div class="">(on the Octeon platform → all EdgeRouters, except the "X" models, but versions are quite equal/similar/close)</div><div class=""><br class=""></div><div class="">I have not built my own distribution (incl. a kernel with the HW-offloading supplements, etc.), because I actually liked EdgeOS - with the exception of the Quagga-Version (the non-FRR variant from Japan, if I recall right) that comes with it. </div><div class=""><br class=""></div><div class="">However, if you do not configure anything in the "protocol" section of the EdgeOS/Vyatta configuration and create a <i class="">bird.conf</i> file and fire up BIRD instead everything (almost) works just fine. Yes, you can't see the routing config in the GUI, but I disable it anyway because I don't use it and want the memory for important things. Of course, "show bgp neighbors" would also be replaced by "birdc show protocols", etc. but <i class="">this is just fine</i>!</div><div class=""><br class=""></div><div class=""><br class=""></div><div class="">I built my BIRDs directly on the routers themselves (just install "build-essential" and very few other packages), but since you talked about "distributions" here, be warned: A "firmware upgrade" <b class="">wipes/reinstalls everything in the filesystem</b>, <b class="">except /config and below</b>. Since you don't want to do a FW upgrade and have the box reboot without it's routing engine/daemon I compiled BIRD to live under /config/opt/bird1 or /config/opt/bird2 (or just /config/opt/bird ;-).</div><div class=""><br class=""></div><div class="">Put a proper startup-script for it into /config/scripts/post-config.d and the BIRD shall be woken by EdgeOS, once all interfaces are plumbed and addressed and everything works very well - even after a firmware upgrade. BIRD binaries built for EdgeOS 1 even survive a FW upgrade to EdgeOS 2 this way, btw.</div><div class="">(though you want BIRD 2 built on EdgeOS 2 to get the latest & gratest features → RPKI, for example)</div><div class=""><br class=""></div><div class="">Just my 2¢ ...</div><div class=""><br class=""></div><div class=""><span class="Apple-tab-span" style="white-space:pre"> </span>Clemens</div><div class=""><br class=""></div><div class="">PS: We use this combination (among others) in parts of the IETF Meeting network for many years now. So if you have attended an IETF meeting (in person) since spring of 2014 (#89 → London) you are very likely to have been routed by it 😉 (yes, including all recent meetings in Praha!)</div><div class=""><br class=""></div><div class=""><br class=""><div><br class=""><blockquote type="cite" class=""><div class="">On 10. Apr 2021, at 14:23, Skyler Mäntysaari <<a href="mailto:sm@samip.fi" class="">sm@samip.fi</a>> wrote:</div><br class="Apple-interchange-newline"><div class=""><div class="">I'm not sure, how would I check if it's LE or BE?<br class=""><br class="">CPU info on ER-12:<br class="">---------------------------------------------------------------------------------------------------<br class="">system type : UBNT_E300<br class="">machine : Unknown<br class="">processor : 0<br class="">cpu model : Cavium Octeon III V0.2 FPU V0.0<br class="">BogoMIPS : 2000.00<br class="">wait instruction : yes<br class="">microsecond timers : yes<br class="">tlb_entries : 256<br class="">extra interrupt vector : yes<br class="">hardware watchpoint : yes, count: 2, address/irw mask: [0x0ffc, 0x0ffb]<br class="">isa : mips1 mips2 mips3 mips4 mips5 mips64r2<br class="">ASEs implemented : vz<br class="">shadow register sets : 1<br class="">kscratch registers : 4<br class="">package : 0<br class="">core : 0<br class="">VCED exceptions : not available<br class="">VCEI exceptions : not available<br class="">------------------------------------------------------------------------------------------------------<br class=""><br class="">P.S Did you also use the UBNT kernel modules for hardware acceleration?<br class=""><br class="">On 10/04/2021 15.19, Ondrej Zajicek wrote:<br class=""><blockquote type="cite" class="">On Sat, Apr 10, 2021 at 02:46:25PM +0300, Skyler Mäntysaari wrote:<br class=""><blockquote type="cite" class="">Please also keep in mind that they do not run normal Debian, but EdgeOS<br class="">which is a fork of vyatta which uses Debian.<br class=""></blockquote>Several years ago, i run original Edgerouter (ERLite-3) with vanilla<br class="">Debian, just with kernel from EdgeOS.<br class=""><br class=""><blockquote type="cite" class="">EdgeRouter-4 and EdgeRouter-12 run on mips64.<br class=""></blockquote>It is BE or LE? ERLite-3 was (AFAIK) mips (BE), Debian offers mips,<br class="">mipsel (LE) and mips64el (LE), but no mips64. It is possible (but<br class="">unlikely) that they build EdgeOS for a differench arch.<br class=""><br class=""></blockquote></div></div></blockquote></div><br class=""></div></body></html>