b.a.t.m.a.n.lists.open-mesh.org archive mirror
 help / color / mirror / Atom feed
From: Simon Wunderlich <sw@simonwunderlich.de>
To: b.a.t.m.a.n@lists.open-mesh.org
Cc: Sven Eckelmann <sven@narfation.org>, openwrt-devel@lists.openwrt.org
Subject: Re: [B.A.T.M.A.N.] [RFC openwrt-routing] batman-adv: Split batadv proto in meshif and hardif part
Date: Thu, 07 Mar 2019 16:55:32 +0100	[thread overview]
Message-ID: <2087721.Ft2tnNZQ0y@prime> (raw)
In-Reply-To: <20190224165113.15726-1-sven@narfation.org>

[-- Attachment #1: Type: text/plain, Size: 3562 bytes --]

On Sunday, February 24, 2019 5:51:13 PM CET Sven Eckelmann wrote:
> batman-adv allows to configure three different objects:
> 
> * batadv hardif
> 
>   - network interface used by batadv meshif to transport the batman-adv
>     packets
>   - its master interface is set to the batadv meshif
> 
> * batadv (meshif/softif)
> 
>   - virtual interface that emulates a normal 802.3 interface on top
>   - encapsulates traffic and forwards it via the batadv hardifs
> 
> * batadv vlan
> 
>   - potential VLAN ID on top of batadv meshif
>   - allows filtering of traffic from specific VIDs
> 
> While batadv vlan objects were already represented as an own proto
> "batadv_vlan", the batadv meshif could never be fully configured using
> /etc/config/network. Instead, parts of its configuration were stored in
> /etc/config/batman_adv and some in the interfaces with the "batadv" proto.
> 
> To increase the confusion, the "batadv" proto wasn't used to define the
> batadv meshif but to identify batadv (slave) hardifs. The batman-adv
> meshifs were also never created directly but only when a hardif was
> configured. The actual modification of the configuration settings was then
> applied using a hotplug script hack. The batadv meshif network interface
> could therefore only be created when an hardif was available and not
> manipulated with ifup/ifdown. Also `/etc/init.d/network reload` didn't
> modify the batadv meshif interface configuration correctly.
> 
> The "batadv" is now renamed to "batadv_hardif" and a new "batadv" proto is
> used to configure the main (meshif) network interface with all its
> configuration.
> 
> A simple network configuration with WiFi & ethernet interfaces and static
> IP on top of bat0 would look like:
> 
>   # batadv meshif bat0
>   config interface 'bat0'
>         option proto 'batadv'
>         option routing_algo 'BATMAN_IV'
>         option aggregated_ogms 1
>         option ap_isolation 0
>         option bonding 0
>         option fragmentation 1
>         #option gw_bandwidth '10000/2000'
>         option gw_mode 'off'
>         #option gw_sel_class 20
>         option log_level 0
>         option orig_interval 1000
>         option bridge_loop_avoidance 1
>         option distributed_arp_table 1
>         option multicast_mode 1
>         option network_coding 0
>         option hop_penalty 30
>         option isolation_mark '0x00000000/0x00000000'
> 
>   # add *single* wifi-iface with network bat0_hardif_wlan as hardif to bat0
>   config interface 'bat0_hardif_wlan'
>         option mtu '1536'
>         option proto 'batadv_hardif'
>         option master 'bat0'
>         # option ifname is filled out by the wifi-iface
> 
>   # add eth0 as hardif to bat0
>   config interface 'bat0_hardif_eth0'
>         option proto 'batadv_hardif'
>         option master 'bat0'
>         option ifname 'eth0'
>         option mtu '1536'
> 
>   # configure IP on bat0
>   config interface 'bat0_lan'
>         option ifname 'bat0'
>         option proto 'static'
>         option ipaddr '192.168.1.1'
>         option netmask '255.255.255.0'
>         option ip6assign '60'

Hey,

thank you very much for proposing that. It looks very good to me. We just 
discussed personally if it were possible to get rid of the bat0_hardif 
sections, but we will need them to configure other things in the future (e.g. 
ELP intervals, throughput override). And doing the "ifname" list in bat0 would 
result in a bad hack as we currently have for bridges, this is not favorable.

So +1 from me for this.

Cheers,
      Simon


[-- Attachment #2: This is a digitally signed message part. --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

      parent reply	other threads:[~2019-03-07 15:55 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-02-24 16:51 [B.A.T.M.A.N.] [RFC openwrt-routing] batman-adv: Split batadv proto in meshif and hardif part Sven Eckelmann
2019-02-25  1:24 ` Gui Iribarren
2019-02-25  7:35   ` [B.A.T.M.A.N.] " Sven Eckelmann
2019-02-25  8:03     ` Кирилл Луконин
2019-02-25  8:22       ` Sven Eckelmann
2019-03-07 15:55 ` Simon Wunderlich [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=2087721.Ft2tnNZQ0y@prime \
    --to=sw@simonwunderlich.de \
    --cc=b.a.t.m.a.n@lists.open-mesh.org \
    --cc=openwrt-devel@lists.openwrt.org \
    --cc=sven@narfation.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).