I'm  joining the discussion because I also have MT7620 devices (ZBT APE522II)
I compared "env" as well as " cat /etc/init.d/babeld".
The only difference I found: "ENV=/etc/shinit" is missing here.
I also had the problem that access via thisnode.info wasn't possible.
In my case I found that the interface "LAN_DHCP" alias of LAN was not started because the setting of start at boot was unticked.
Regards
Jürgen




Am Mo., 9. Nov. 2020 um 16:38 Uhr schrieb Andy Schopf <andymcschopf@gmail.com>:
Hi Daniel,

sorry for addressing you with the wrong name!

Am Mo., 9. Nov. 2020 um 15:51 Uhr schrieb Daniel Golle <daniel@makrotopia.org>:
On Mon, Nov 09, 2020 at 03:45:05PM +0100, Andy Schopf wrote:
> Hi SAn,
>
>
>
> Am Mo., 9. Nov. 2020 um 14:25 Uhr schrieb Daniel Golle <
> daniel@makrotopia.org>:
>
> > On Mon, Nov 09, 2020 at 02:11:00PM +0100, Andy Schopf wrote:
> > > Hi SAn,
> > >
> > > you are right. babeld is not started. I hav to start it manually in
> > > /etc/init.d
> > > with
> > > ./babeld trace
> > >
> > > then I get an IP address.
> > > This is strangely *not *working in the LuCI-Interface -> startup:  with
> > > restart or start/stop (no output in logread)
> > >
> > > with the manual method above I get following:
> > > Mon Nov  9 09:33:55 2020 daemon.warn procd: Seccomp support for
> > > babeld::instance1 not available
> >
> > Are you trying to start babled with seccomp (or seccomp-tracing)
> > support?
>
> I am not aware of starting babeld with sccomp (I don't know what this is...
> ;-) )

Ok, that's a bit weird then. Please share the output of

env

This is env:

USER=root
SSH_CLIENT=10.224.70.47 59302 22
SHLVL=1
HOME=/root
SSH_TTY=/dev/pts/1
PS1=\[\e]0;\u@\h: \w\a\]\[\033[00;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$
ENV=/etc/shinit
LOGNAME=root
TERM=screen
PATH=/usr/sbin:/usr/bin:/sbin:/bin
SHELL=/bin/ash
PWD=/root
SSH_CONNECTION=10.224.70.47 59302 10.224.0.1 22



 

as well as

cat /etc/init.d/babeld
#!/bin/sh /etc/rc.common

. $IPKG_INSTROOT/lib/functions/network.sh

USE_PROCD=1
START=70

CONFIGFILE='/var/etc/babeld.conf'
OTHERCONFIGFILE="/etc/babeld.conf"
OTHERCONFIGDIR="/tmp/babeld.d/"
EXTRA_COMMANDS="status"
EXTRA_HELP="        status Dump Babel's table to the log file."

# Append a line to the configuration file
cfg_append() {
        local value="$1"
        echo "$value" >> "$CONFIGFILE"
}

cfg_append_option() {
        local section="$1"
        local option="$2"
        local value
        config_get value "$section" "$option"
        # babeld convention for options is '-', not '_'
        [ -n "$value" ] && cfg_append "${option//_/-} $value"
}

# Append to the "$buffer" variable
append_ifname() {
        local section="$1"
        local option="$2"
        local switch="$3"
        local _name
        config_get _name "$section" "$option"
        [ -z "$_name" ] && return 0
        local ifname=$(uci_get_state network "$_name" ifname "$_name")
        append buffer "$switch $ifname"
}

append_bool() {
        local section="$1"
        local option="$2"
        local value="$3"
        local _loctmp
        config_get_bool _loctmp "$section" "$option" 0
        [ "$_loctmp" -gt 0 ] && append buffer "$value"
}

append_parm() {
        local section="$1"
        local option="$2"
        local switch="$3"
        local _loctmp
        config_get _loctmp "$section" "$option"
        [ -z "$_loctmp" ] && return 0
         append buffer "$switch $_loctmp"
}

babel_filter() {
        local cfg="$1"
        local _loctmp

        local _ignored
        config_get_bool _ignored "$cfg" 'ignore' 0
        [ "$_ignored" -eq 1 ] && return 0

        unset buffer
        append_parm "$cfg" 'type' ''

        append_bool "$cfg" 'local' 'local'

        append_parm "$cfg" 'ip' 'ip'
        append_parm "$cfg" 'eq' 'eq'
        append_parm "$cfg" 'le' 'le'
        append_parm "$cfg" 'ge' 'ge'
        append_parm "$cfg" 'src_ip' 'src-ip'
        append_parm "$cfg" 'src_eq' 'src-eq'
        append_parm "$cfg" 'src_le' 'src-le'
        append_parm "$cfg" 'src_ge' 'src-ge'
        append_parm "$cfg" 'neigh' 'neigh'
        append_parm "$cfg" 'id' 'id'
        append_parm "$cfg" 'proto' 'proto'

        append_ifname "$cfg" 'if' 'if'

        append_parm "$cfg" 'action' ''

        cfg_append "$buffer"
}

# Only one of babeld's options is allowed multiple times, "import-table".
# We just append it multiple times.
list_cb() {
        option_cb "$@"
}

babel_config_cb() {
        local type="$1"
        local section="$2"
        case "$type" in
        "general")
                option_cb() {
                        local option="$1"
                        local value="$2"
                        # Ignore options that are not supposed to be given to babeld
                        [ "$option" = "conf_file" ] && return
                        [ "$option" = "conf_dir" ] && return
                        # Skip lists. They will be taken care of by list_cb
                        test "${option#*_ITEM}" != "$option" && return
                        test "${option#*_LENGTH}" != "$option" && return
                        cfg_append "${option//_/-} $value"
                }
        ;;
        "interface")
                local _ifname
                config_get _ifname "$section" 'ifname'
                # Try to resolve the logical interface name
                unset interface
                network_get_device interface "$_ifname" || interface="$_ifname"
                option_cb() {
                        local option="$1"
                        local value="$2"
                        local _interface
                        # "option ifname" is a special option, don't actually
                        # generate configuration for it.
                        [ "$option" = "ifname" ] && return
                        [ -n "$interface" ] && _interface="interface $interface" || _interface="default"
                        cfg_append "$_interface ${option//_/-} $value"
                }
                # Handle ignore options.
                local _ignored
                # This works because we loaded the whole configuration
                # beforehand (see config_load below).
                config_get_bool _ignored "$section" 'ignore' 0
                if [ "$_ignored" -eq 1 ]
                then
                        option_cb() { return; }
                else
                        # Also include an empty "interface $interface" statement,
                        # so that babeld operates on this interface.
                        [ -n "$interface" ] && cfg_append "interface $interface"
                fi
        ;;
        *)
                # Don't use reset_cb, this would also reset config_cb
                option_cb() { return; }
        ;;
        esac
}

# Support for conf_file and conf_dir
babel_configpaths() {
        local cfg="$1"
        local conf_file
        config_get conf_file "$cfg" "conf_file"
        [ -n "$conf_file" ] && OTHERCONFIGFILE="$conf_file"
        local conf_dir
        config_get conf_dir "$cfg" "conf_dir"
        [ -n "$conf_dir" ] && OTHERCONFIGDIR="$conf_dir"
}

start_service() {
        mkdir -p /var/lib
        mkdir -p /var/etc

        # First load the whole config file, without callbacks, so that we are
        # aware of all "ignore" options in the second pass.  This also allows
        # to load the configuration paths (conf_file and conf_dir).
        config_load babeld

        # Configure alternative configuration file and directory
        config_foreach babel_configpaths "general"

        # Start by emptying the generated config file
        >"$CONFIGFILE"
        # Import dynamic config files
        mkdir -p "$OTHERCONFIGDIR"
        for f in "$OTHERCONFIGDIR"/*.conf; do
                [ -f "$f" ] && cat "$f" >> "$CONFIGFILE"
        done

        # Parse general and interface sections thanks to the "config_cb()"
        # callback.  This allows to loop over all options without having to
        # know their name in advance.
        config_cb() { babel_config_cb "$@"; }
        config_load babeld
        # Parse filters separately, since we know which options we expect
        config_foreach babel_filter filter
        procd_open_instance
        # Using multiple config files is supported since babeld 1.5.1
        procd_set_param command /usr/sbin/babeld -I "" -c "$OTHERCONFIGFILE" -c "$CONFIGFILE"
        procd_set_param stdout 1
        procd_set_param stderr 1
        procd_set_param file "$OTHERCONFIGFILE" "$OTHERCONFIGDIR"/*.conf "$CONFIGFILE"
        procd_set_param respawn
        procd_close_instance
}

service_triggers() {
        procd_add_reload_trigger babeld
}

status() {
        kill -USR1 $(pgrep -P 1 babeld)
}




as there needs to be something which tells procd to attempt using
seccomp.

>
>
> > I don't see any seccomp filter defined for babled in
> > openwrt-routing/packages repo...?
> >
> > > Mon Nov  9 09:33:55 2020 daemon.err babeld[4253]: Warning: couldn't
> > > determine channel of interface wlan0-mesh_17.
> > > Mon Nov  9 09:33:55 2020 daemon.err babeld[4253]: Warning: couldn't
> > > determine channel of interface eth0_17.
> > > Mon Nov  9 09:34:00 2020 cron.err crond[1330]: USER root pid 4288 cmd
> > > ((sleep $(($RANDOM % 30));
> > > /etc/shared-state/publishers/shared-state-publish_vouchers &&
> > shared-state
> > > sync pirania &> /dev/null)&)
> > > Mon Nov  9 09:34:00 2020 cron.err crond[1330]: USER root pid 4289 cmd
> > ((for
> > > dataFile in /var/shared-state/data/* ; do shared-state bleach $(basename
> > > $dataFile .json); done &> /dev/null)&)
> > >
> > > And every reboot no babeld :-(
> > > A Problem of the openwrt snapshot maybe? (Build is from today)
> >
> > I assume this is ath79/generic?
> >
> Nope this is a Rampis mt7620 device.
>
>
> > And which exact commit are you using?
> >
> where do I find this Information?
> This is what I see on login:
> OpenWrt SNAPSHOT, r14877-e267445510

Yes, that's the information I was looking for.

Great :-D
 
>
>
> >
> > I can try to reproduce your problem on x86/64 in QEMU...
> >
> > Thank you! :-D
>
> >
> > >
> > > Regards
> > > Andy
> > >
> > >
> > > Am So., 8. Nov. 2020 um 01:48 Uhr schrieb SAn <spiccinini@altermundi.net
> > >:
> > >
> > > > Hi Andy, it seems that babeld Is not running or not working properly.
> > > > Check that it is running in all the nodes.
> > > >
> > > > Best
> > > > SAn
> > > >
> > > > On November 6, 2020 10:38:25 AM GMT-03:00, Andy Schopf <
> > > > andymcschopf@gmail.com> wrote:
> > > > >Hi all,
> > > > >
> > > > >I have since a few days the Problem, that my mesh nodes get any ipv4
> > > > >addresses.
> > > > >So connected to the mesh node there is no way to the internet. Only on
> > > > >the
> > > > >Gateway Nodes. There I see only ipv6 addresses in direction to the
> > mesh
> > > > >nodes. on the nodes the lime app shows no DNS and no ipv4/ipv6.
> > > > >Any suggestions?
> > > > >
> > > > >Regards,
> > > > >Andy
> > > >
> >
> > > _______________________________________________
> > > lime-users mailing list
> > > lime-users@lists.libremesh.org
> > > https://lists.libremesh.org/mailman/listinfo/lime-users
> >
> > _______________________________________________
> > lime-users mailing list
> > lime-users@lists.libremesh.org
> > https://lists.libremesh.org/mailman/listinfo/lime-users

> _______________________________________________
> lime-users mailing list
> lime-users@lists.libremesh.org
> https://lists.libremesh.org/mailman/listinfo/lime-users

_______________________________________________
lime-users mailing list
lime-users@lists.libremesh.org
https://lists.libremesh.org/mailman/listinfo/lime-users
_______________________________________________
lime-users mailing list
lime-users@lists.libremesh.org
https://lists.libremesh.org/mailman/listinfo/lime-users