[PATCH] fff-network: Evaluate ETH0MAC based on ROUTERMAC

Adrian Schmutzler mail at adrianschmutzler.de
Fr Dez 22 15:37:25 CET 2017


Hallo nochmal,

habe jetzt erst ganz verstanden, worauf du hinauswillst.

Ich bau ne Funktion und lager das aus.
Die kann man auch gleich so bauen, dass sie für ROUTERMAC und ETHMESHMAC funktioniert, das ist fast der gleiche Code.

Anmerkung zum uci:
Ich glaube uci set gibt den namen zurück, den uci del dann benutzt. _Könnte_ funktionieren ...

Grüße

Adrian

> -----Original Message-----
> From: Tim Niemeyer [mailto:tim at tn-x.org]
> Sent: Freitag, 22. Dezember 2017 15:01
> To: Adrian Schmutzler <freifunk at adrianschmutzler.de>; franken-
> dev at freifunk.net
> Subject: Re: [PATCH] fff-network: Evaluate ETH0MAC based on ROUTERMAC
> 
> Hi
> 
> Puh .. Das ist alles eine riesen XXASDASDSXXX .. :(
> 
> Am Dienstag, den 14.11.2017, 11:40 +0100 schrieb Adrian Schmutzler:
> > All ONE_PORT devices except mr3020 use phy0 (w2mesh) for the
> > ROUTERMAC. Thus, instead of evaluating w2ap's MAC address, we can just
> > use the flipped ROUTERMAC for ETH0MAC.
> >
> > This should also work for the mr3020, which uses eth0.
> Oh man. Der hat sogar ein ETHMESHMAC gesetzt. Das sollte ja dann ohne
> Switch gar nicht gehen?
> 
> Dieses ganze ONE_PORT geraffel ist Müll!
> 
> Kann mir keiner erzählen, dass das so richtig ist:
> uci del uci set network.ethmesh.ifname
> 
> 
> >
> > Signed-off-by: Adrian Schmutzler <freifunk at adrianschmutzler.de>
> >
> > ---
> >
> > UNTESTED.
> >
> > This is an alternative to the other ETH0MAC, without having to store
> > another MAC in the network.* files.
> > ---
> >  src/packages/fff/fff-network/files/usr/sbin/configurenetwork | 4 ++-
> > -
> >  1 file changed, 2 insertions(+), 2 deletions(-)
> >
> > diff --git a/src/packages/fff/fff-
> > network/files/usr/sbin/configurenetwork b/src/packages/fff/fff-
> > network/files/usr/sbin/configurenetwork
> > index 89dd239..8df7655 100755
> > --- a/src/packages/fff/fff-network/files/usr/sbin/configurenetwork
> > +++ b/src/packages/fff/fff-network/files/usr/sbin/configurenetwork
> > @@ -150,7 +150,7 @@ if [ "$ONE_PORT" = "YES" ] && ( ! uci -q get
> > network.$SWITCHDEV.ifname || [ "$FO
> >          uci set network.mesh.ifname="bat0"
> >          uci set network.wan.ifname="eth1" #eth1 because it is default
> > in config file
> >          uci set network.ethmesh.ifname="$SWITCHDEV"
> > -        ETH0MAC="w2ap"
> > +        ETH0MAC=1
> 
> Ich würde es besser finden, wenn hier nicht ne Variable auf 1 gesetzt wird,
> sondern wenn gleich der entsprechende Code ausgeführt wird. Man könnte
> ggfs auch in eine Funktion auslagern.
> 
> Generell stellt sich mir die Frage, ob man das ganze Thema nicht lieber
> komplett über den Haufen wirft. Ich bin mir grad nicht ganz sicher, ob man
> mit dem hin und her wirklich vorran kommt. Ich würde das zwar irgendwie
> lieber erst nach einem Release angehen, aber die Funktionalität von dem
> configurenetwork zu durchdringen ist echt schwer!
> 
> Tim
> >      fi
> >      uci commit
> >  fi
> > @@ -196,7 +196,7 @@ fi
> >  if [[ -n "$ETH0MAC" ]]; then
> >          echo "Fixing MAC on eth0"
> >          sleep 10
> > -        NEW_MACADDR=$(cat "/sys/class/net/${ETH0MAC}/address")
> > +        NEW_MACADDR=$(macFlipLocalBit "$ROUTERMAC")
> >          uci set network.eth0.macaddr=$NEW_MACADDR
> >          uci commit
> >          ifconfig eth0 down
> > --
> > 2.7.4
> >



Mehr Informationen über die Mailingliste franken-dev