On 1/13/20 2:27 PM, Pedro Peña Sánchez wrote:
Thanks for your answer Ilario. You have helped me a
lot.
:D
I did not explain correctly. With '"generic
settings" I mean "all in the
default image".
I know lime-defaults, but I want to know, for example, that default
image uses BMX6 and BATMAN but not babeld (can be incorrect, it's an
example).
See answer below
In that case, I could compile a default
"current" image
(compile myself an image with the same functionality that the "current"
relase) selecting that packages in "make menuconfig".
Sure you can compile using whichever combination of packages you prefer,
but the more tested (and likely the less buggy) combination is the one
suggested (e.g. for the next release will be Babeld + BATMAN-adv).
I'm trying to figure out what each package does
to be able how to change
that functionality.
Documentation for each module can be found in the Makefile or in the
Readme inside its directory, for example:
https://github.com/libremesh/lime-packages/blob/master/packages/bandwidth-t…
and
https://github.com/libremesh/lime-packages/blob/master/packages/bandwidth-t…
For example, default flavor has "lime-basic
lime-debug luci lime-docs lime-app -dnsmasq"
(
https://github.com/libremesh/lime-sdk/blob/master/flavors.conf), and
*lime-basic* has (in
17.06,
https://github.com/libremesh/lime-packages/blob/17.06/packages/lime-basic/M…)
DEPENDS:=+lime-system +lime-proto-bmx6 +lime-proto-batadv \
+lime-proto-anygw +lime-proto-wan +dnsmasq-lease-share \
+dnsmasq-distributed-hosts +lime-webui \
+lime-hwd-openwrt-wan +lime-docs-minimal \
+bmx6-auto-gw-mode +lime-hwd-ground-routing +smonit
That's correct! The 17.06 release uses BMX6 and BATMAN-adv while the
next release will use Babeld and BATMAN-adv.
For getting this for 17.06, you did perfectly as you described checking
lime-basic.
So .... i've answered my first question?
And now ..... all the other questions.
What would be the default packages for current or next release?
For the next release, up to now the list of the packages is a not
definitive but will likely be the one described on the website
development page compilation guide:
https://libremesh.org/development.html
Will have for sure things like Babeld, BATMAN-adv, shared-state.
Regarding the rest of the components (some I didn't even ever try), I
don't know.
It's not clear how and by who the next release will be defined, I would
love to have a community-run process, either on this list or on the
Riot/Matrix chat (
https://libremesh.org/communication.html ).
I started sorting out the important and less important issues in
https://github.com/orgs/libremesh/projects/2
please write me your Github username if you want to edit that table.
BATMAN-ADV creates level 2 links between each node?
how it works, one
device and one interface for each original interface? so all nodes would
be visible te each other one or another way? ethernet and wireless? wan
and lan?
Ehm... I'm not the most knowledgeable person on the technical details...
What I know is that currently BATMAN-adv does not run on ethernet
interfaces (I hope this will change soon) as discussed here:
https://github.com/libremesh/lime-packages/issues/56
it is also not running on AP (unless the special apbb protocol is used,
see lime-example file for documentation about this).
So, by default, BATMAN-adv is running only on wireless mesh links (mesh
or adhoc) and WAN ethernet port (nonsense?).
change bmx6 to bmx7? hot it works? level 3 links
between nodes?
Never tried BMX7.
Yes, there are also layer 3 links.
The ultimate goal of LibreMesh is to have local networks with routing at
layer 2, while between these networks the routing is on layer 3.
This makes sense for large networks.
Someone with a deeper understanding should answer here...
How does nodes acts as gateways. For example, if i
have five nodes and
many of them have conectivity "on wan" port, if one of them losts
connection but cable is not disconnected, ip "on wan" is not released
and that node stop working because he thinks it has connectivity on
wan. How does this works?
Goooood question! For BATMAN-adv and for BMX* we had packages checking
connectivity (via watchping
https://github.com/libremesh/lime-packages/tree/master/packages/watchping ):
https://github.com/libremesh/lime-packages/tree/master/packages/batman-adv-…
https://github.com/libremesh/lime-packages/tree/master/packages/bmx6-auto-g…
in the Babeld case, I have no idea if a check mechanism has been
implemented or if it has some internal magic for this.
Both this topic and the need for improvements to watchping is being
discussed here:
https://github.com/libremesh/lime-packages/issues/93
smonit no longer exists. What was it function and what
package replaces
him if necessary?
smonit was fixing mainly two things: deaf interfaces, dnsmasq crashes
and bmx6 crashes.
Especially dnsmasq crashes were extremely frequent but got fixed
upstream and at some point the problem disappeared.
The deaf interfaces problem happens rarely so is difficult to debug (it
could even be that with OpenWrt 19.07 the problem is magically gone...
testing is needed), see here:
https://github.com/libremesh/lime-packages/issues/144
there's a tool "cotonete" for detecting when the problem happens, here:
https://github.com/nicopace/cotonete
a solution is available but is not being included neither in LibreMesh
development page recommended packages nor in LibreRouterOS. It does not
(yet) use cotonete and runs constantly a fast scan:
https://github.com/libremesh/lime-packages/tree/master/packages/wifi-unstuc…
I've multiple routers to test, gl-mt300n,
gl-ar300m, etc. but i want to
deploy gl-b1300. I've many to test.
Seems a super nice router! Never tested :)
Please tell us how it works with LibreMesh!
And, if it works well, it would be great if you could update the
supported routers table here:
https://libremesh.org/docs/hardware/
I apologize so many questions, but I want to clear my
mind and I think
that if this were documented I could help other people who have little
experience as is my case.
Yessss, lack of documentation is a real issue :/
Feel free to improve or add documentation :D
The website is easy to modify (the only thing needed is a Github
account) as there are "Edit this page" buttons on every page :)
Many thanks.
You're welcome!
Ilario
El lun., 13 ene. 2020 a las 11:09, Ilario Gelmetti
(<iochesonome(a)gmail.com <mailto:iochesonome@gmail.com>>) escribió:
On 1/13/20 1:40 AM, Pedro Peña Sánchez wrote:
Hello everybody and excuse my poor english.
I'm new here and have a lot of questions.
Hello Pedro and welcome!
In the section "get it" says..
"We offer precompiled firmware images of the LibreMesh stable release
(Dayboot Rely 17.06) with generic settings"
What are that generic settings?
The generic settings for the 17.06 release are in the lime-defaults file
in the 17.06 branch, here:
https://github.com/libremesh/lime-packages/blob/17.06/packages/lime-system/…
The best available documentation of these configuration files is in the
lime-example file, in its latest version here:
https://github.com/libremesh/lime-packages/blob/master/packages/lime-docs/f…
or, in its 17.06 version, here:
https://github.com/libremesh/lime-packages/blob/17.06/packages/lime-docs/fi…
I see three variants in the downloads, default,
mini and zero.
What are
their differences?
Where can i look for that? I'm looking in
https://github.com/libremesh/lime-sdk.
For the 17.06 release we were using the lime-sdk builder (which is now
abandoned) and in there there were "flavors" defined here:
https://github.com/libremesh/lime-sdk/blob/master/flavors.conf
as you can see, lime_mini was without opkg package manager and lime_zero
was without web interface. These two versions were prepared for old
routers with only 4 MB of flash memory.
I want to compile from source as a starting point
and once i know
how it
works, and what does each package or protocol, be
able to modify it to
fit to my needs.
As the 17.06 release is very old, I suggest you to compile the
development code following the instructions on libremesh website (in the
middle of the page, the "Compiling LibreMesh from source code" section):
https://libremesh.org/development.html
in case you really want to compile 17.06 release, you can follow the
instructions here:
https://github.com/libremesh/lime-packages/blob/17.06/README.md
specifying the 17.06 branch in the lime-packages feed, which means to
add a ";17.06" in the line:
echo "src-git libremesh
https://github.com/libremesh/lime-packages.git;17.06" >> feeds.conf
anyway I am not sure it will work as I didn't do it since years.
I think i could contribute documenting all my
questions.
If you could improve the website with more documentation it would be
super useful!!!
I will send more questions.
Thanks in advance.
Hugs,
Ilario
_______________________________________________
lime-users mailing list
lime-users(a)lists.libremesh.org <mailto:lime-users@lists.libremesh.org>
https://lists.libremesh.org/mailman/listinfo/lime-users
_______________________________________________
lime-users mailing list
lime-users(a)lists.libremesh.org
https://lists.libremesh.org/mailman/listinfo/lime-users
--
Ilario
iochesonome(a)gmail.com
ilario(a)sindominio.net