[RFC v2] Fixed Problems with Port mode changing

mayosemmel mayosemmel at googlemail.com
Do Sep 15 12:01:40 CEST 2016


Hallo zusammen,

bitte noch nicht applien. Ich hab eine Änderung im WebUI vergessen. Ist nicht böse aber unschön. V3 kommt evtl. erst morgen

Grüße Jan

Am 15. September 2016 09:43:23 MESZ, schrieb Christian Dresel <fff at chrisi01.de>:
>Hi
>
>Grundsätzlich funktioniert das ganze jetzt erstmal (wenn man den Port
>Mode über ssh ändert), ich hab aber noch eine Anmerkungen:
>
>1. Die Auswahl im WebUI funktioniert nicht (ich hab nicht alle
>Auswahlmöglichkeiten im select Feld), ich glaube es liegt an diesen
>komischen IF Abfragen in Zeile 69-77
>
>https://github.com/FreifunkFranken/firmware/blob/master/src/packages/fff/fff-web/files/www/ssl/cgi-bin/ports.html
>
>Sollte man in einen weiteren Patch noch beheben.
>
>Ansonsten kann von meiner Seite her das Patch in den Master, eine beta
>sollten wir aber erst machen wenn der Punkt in einen weiteren Patch
>erledigt wurde.
>
>Die Anmerkung von mir in der letzten Mail das "batctl if add eth0"
>nötig
>ist, ist anscheinend hinfällig, hiermit funktioniert es nun auch ohne.
>
>Tested-by: Christian Dresel <fff at chrisi01.de>
>Reviewed-by: Christian Dresel <fff at chrisi01.de>
>
>mfg
>
>Christian
>
>On 14.09.2016 23:37, Jan Kraus wrote:
>> cleaned up config files (moved commands to script)
>> 
>> Signed-off-by: Jan Kraus <mayosemmel at gmail.com>
>> ---
>> Dieser Patch ist ungetestet!
>> ---
>>  .../fff/fff-network/ar71xx/network.tl-mr3020-v1    | 23
>++------------
>>  .../fff/fff-network/ar71xx/network.tl-wa850re-v1   | 23
>++------------
>>  .../fff/fff-network/ar71xx/network.tl-wa860re-v1   | 23
>++------------
>>  .../fff/fff-network/ar71xx/network.ubnt-bullet-m   | 22
>++------------
>>  .../fff/fff-network/ar71xx/network.ubnt-loco-m-xw  | 24
>++-------------
>>  .../fff/fff-network/ar71xx/network.ubnt-nano-m     | 22
>++------------
>>  .../fff/fff-network/ar71xx/network.ubnt-unifi      | 22
>++------------
>>  .../fff-network/files/usr/sbin/configurenetwork    | 35
>++++++++++++++++++++++
>>  8 files changed, 49 insertions(+), 145 deletions(-)
>> 
>> diff --git a/src/packages/fff/fff-network/ar71xx/network.tl-mr3020-v1
>b/src/packages/fff/fff-network/ar71xx/network.tl-mr3020-v1
>> index 1198c3d..62f456a 100644
>> --- a/src/packages/fff/fff-network/ar71xx/network.tl-mr3020-v1
>> +++ b/src/packages/fff/fff-network/ar71xx/network.tl-mr3020-v1
>> @@ -3,28 +3,9 @@ SWITCHDEV=eth0
>>  CLIENT_PORTS=""
>>  WAN_PORTS=""
>>  BATMAN_PORTS=""
>> +ONE_PORT="YES"
>>  
>>  . /etc/network.mode
>>  
>>  ETHMESHMAC=eth0
>> -ROUTERMAC=eth0
>> -
>> -uci set network.$SWITCHDEV=interface
>> -uci set network.$SWITCHDEV.ifname=$SWITCHDEV
>> -uci set network.mesh.ifname="bat0"
>> -
>> -if [ "$ETHMODE" = "WAN" ] ; then
>> -  ## Activate for WAN:
>> -  echo "net.ipv6.conf.$WANDEV.accept_ra_defrtr = 1" >>
>/etc/sysctl.conf
>> -  echo "net.ipv6.conf.$WANDEV.accept_ra_pinfo = 1" >>
>/etc/sysctl.conf
>> -  echo "net.ipv6.conf.$WANDEV.autoconf = 1" >> /etc/sysctl.conf
>> -  echo "net.ipv6.conf.$WANDEV.accept_ra_rtr_pref = 1" >>
>/etc/sysctl.conf
>> -  uci set network.wan.ifname=$WANDEV
>> -elif [ "$ETHMODE" = "CLIENT" ] ; then
>> -  ## Activate Client:
>> -  uci set network.mesh.ifname="bat0 $SWITCHDEV"
>> -else
>> -  ## Activate BATMAN:
>> -  uci set network.ethmesh.ifname="$SWITCHDEV"
>> -  ETH0MAC="w2ap"
>> -fi
>> +ROUTERMAC=eth0
>> \ No newline at end of file
>> diff --git
>a/src/packages/fff/fff-network/ar71xx/network.tl-wa850re-v1
>b/src/packages/fff/fff-network/ar71xx/network.tl-wa850re-v1
>> index e745b21..307a201 100644
>> --- a/src/packages/fff/fff-network/ar71xx/network.tl-wa850re-v1
>> +++ b/src/packages/fff/fff-network/ar71xx/network.tl-wa850re-v1
>> @@ -3,28 +3,9 @@ SWITCHDEV=eth0
>>  CLIENT_PORTS=""
>>  WAN_PORTS=""
>>  BATMAN_PORTS=""
>> +ONE_PORT="YES"
>>  
>>  . /etc/network.mode
>>  
>>  ETHMESHMAC=
>> -ROUTERMAC=w2mesh
>> -
>> -uci set network.$SWITCHDEV=interface
>> -uci set network.$SWITCHDEV.ifname=$SWITCHDEV
>> -uci set network.mesh.ifname="bat0"
>> -
>> -if [ "$ETHMODE" = "WAN" ] ; then
>> -  ## Activate for WAN:
>> -  echo "net.ipv6.conf.$WANDEV.accept_ra_defrtr = 1" >>
>/etc/sysctl.conf
>> -  echo "net.ipv6.conf.$WANDEV.accept_ra_pinfo = 1" >>
>/etc/sysctl.conf
>> -  echo "net.ipv6.conf.$WANDEV.autoconf = 1" >> /etc/sysctl.conf
>> -  echo "net.ipv6.conf.$WANDEV.accept_ra_rtr_pref = 1" >>
>/etc/sysctl.conf
>> -  uci set network.wan.ifname=$WANDEV
>> -elif [ "$ETHMODE" = "CLIENT" ] ; then
>> -  ## Activate Client:
>> -  uci set network.mesh.ifname="bat0 $SWITCHDEV"
>> -else
>> -  ## Activate BATMAN:
>> -  uci set network.ethmesh.ifname="$SWITCHDEV"
>> -  ETH0MAC="w2ap"
>> -fi
>> +ROUTERMAC=w2mesh
>> \ No newline at end of file
>> diff --git
>a/src/packages/fff/fff-network/ar71xx/network.tl-wa860re-v1
>b/src/packages/fff/fff-network/ar71xx/network.tl-wa860re-v1
>> index e745b21..307a201 100644
>> --- a/src/packages/fff/fff-network/ar71xx/network.tl-wa860re-v1
>> +++ b/src/packages/fff/fff-network/ar71xx/network.tl-wa860re-v1
>> @@ -3,28 +3,9 @@ SWITCHDEV=eth0
>>  CLIENT_PORTS=""
>>  WAN_PORTS=""
>>  BATMAN_PORTS=""
>> +ONE_PORT="YES"
>>  
>>  . /etc/network.mode
>>  
>>  ETHMESHMAC=
>> -ROUTERMAC=w2mesh
>> -
>> -uci set network.$SWITCHDEV=interface
>> -uci set network.$SWITCHDEV.ifname=$SWITCHDEV
>> -uci set network.mesh.ifname="bat0"
>> -
>> -if [ "$ETHMODE" = "WAN" ] ; then
>> -  ## Activate for WAN:
>> -  echo "net.ipv6.conf.$WANDEV.accept_ra_defrtr = 1" >>
>/etc/sysctl.conf
>> -  echo "net.ipv6.conf.$WANDEV.accept_ra_pinfo = 1" >>
>/etc/sysctl.conf
>> -  echo "net.ipv6.conf.$WANDEV.autoconf = 1" >> /etc/sysctl.conf
>> -  echo "net.ipv6.conf.$WANDEV.accept_ra_rtr_pref = 1" >>
>/etc/sysctl.conf
>> -  uci set network.wan.ifname=$WANDEV
>> -elif [ "$ETHMODE" = "CLIENT" ] ; then
>> -  ## Activate Client:
>> -  uci set network.mesh.ifname="bat0 $SWITCHDEV"
>> -else
>> -  ## Activate BATMAN:
>> -  uci set network.ethmesh.ifname="$SWITCHDEV"
>> -  ETH0MAC="w2ap"
>> -fi
>> +ROUTERMAC=w2mesh
>> \ No newline at end of file
>> diff --git
>a/src/packages/fff/fff-network/ar71xx/network.ubnt-bullet-m
>b/src/packages/fff/fff-network/ar71xx/network.ubnt-bullet-m
>> index c16993d..307a201 100644
>> --- a/src/packages/fff/fff-network/ar71xx/network.ubnt-bullet-m
>> +++ b/src/packages/fff/fff-network/ar71xx/network.ubnt-bullet-m
>> @@ -3,27 +3,9 @@ SWITCHDEV=eth0
>>  CLIENT_PORTS=""
>>  WAN_PORTS=""
>>  BATMAN_PORTS=""
>> +ONE_PORT="YES"
>>  
>>  . /etc/network.mode
>>  
>>  ETHMESHMAC=
>> -ROUTERMAC=w2mesh
>> -
>> -uci set network.$SWITCHDEV=interface
>> -uci set network.$SWITCHDEV.ifname=$SWITCHDEV
>> -uci set network.mesh.ifname="bat0"
>> -
>> -if [ "$ETHMODE" = "WAN" ] ; then
>> -  ## Activate for WAN:
>> -  echo "net.ipv6.conf.$WANDEV.accept_ra_defrtr = 1" >>
>/etc/sysctl.conf
>> -  echo "net.ipv6.conf.$WANDEV.accept_ra_pinfo = 1" >>
>/etc/sysctl.conf
>> -  echo "net.ipv6.conf.$WANDEV.autoconf = 1" >> /etc/sysctl.conf
>> -  echo "net.ipv6.conf.$WANDEV.accept_ra_rtr_pref = 1" >>
>/etc/sysctl.conf
>> -  uci set network.wan.ifname=$WANDEV
>> -elif [ "$ETHMODE" = "CLIENT" ] ; then
>> -  ## Activate Client:
>> -  uci set network.mesh.ifname="bat0 $SWITCHDEV"
>> -else
>> -  ## Activate BATMAN:
>> -  uci set network.ethmesh.ifname="$SWITCHDEV"
>> -fi
>> +ROUTERMAC=w2mesh
>> \ No newline at end of file
>> diff --git
>a/src/packages/fff/fff-network/ar71xx/network.ubnt-loco-m-xw
>b/src/packages/fff/fff-network/ar71xx/network.ubnt-loco-m-xw
>> index 2298117..307a201 100644
>> --- a/src/packages/fff/fff-network/ar71xx/network.ubnt-loco-m-xw
>> +++ b/src/packages/fff/fff-network/ar71xx/network.ubnt-loco-m-xw
>> @@ -3,29 +3,9 @@ SWITCHDEV=eth0
>>  CLIENT_PORTS=""
>>  WAN_PORTS=""
>>  BATMAN_PORTS=""
>> +ONE_PORT="YES"
>>  
>>  . /etc/network.mode
>>  
>>  ETHMESHMAC=
>> -ROUTERMAC=w2mesh
>> -
>> -uci set network.$SWITCHDEV=interface
>> -uci set network.$SWITCHDEV.ifname=$SWITCHDEV
>> -uci set network.mesh.ifname="bat0"
>> -uci set network.eth0.mtu="1500"
>> -
>> -
>> -if [ "$ETHMODE" = "WAN" ] ; then
>> -  ## Activate for WAN:
>> -  echo "net.ipv6.conf.$WANDEV.accept_ra_defrtr = 1" >>
>/etc/sysctl.conf
>> -  echo "net.ipv6.conf.$WANDEV.accept_ra_pinfo = 1" >>
>/etc/sysctl.conf
>> -  echo "net.ipv6.conf.$WANDEV.autoconf = 1" >> /etc/sysctl.conf
>> -  echo "net.ipv6.conf.$WANDEV.accept_ra_rtr_pref = 1" >>
>/etc/sysctl.conf
>> -  uci set network.wan.ifname=$WANDEV
>> -elif [ "$ETHMODE" = "CLIENT" ] ; then
>> -  ## Activate Client:
>> -  uci set network.mesh.ifname="bat0 $SWITCHDEV"
>> -else
>> -  ## Activate BATMAN:
>> -  uci set network.ethmesh.ifname="$SWITCHDEV"
>> -fi
>> +ROUTERMAC=w2mesh
>> \ No newline at end of file
>> diff --git a/src/packages/fff/fff-network/ar71xx/network.ubnt-nano-m
>b/src/packages/fff/fff-network/ar71xx/network.ubnt-nano-m
>> index c16993d..307a201 100644
>> --- a/src/packages/fff/fff-network/ar71xx/network.ubnt-nano-m
>> +++ b/src/packages/fff/fff-network/ar71xx/network.ubnt-nano-m
>> @@ -3,27 +3,9 @@ SWITCHDEV=eth0
>>  CLIENT_PORTS=""
>>  WAN_PORTS=""
>>  BATMAN_PORTS=""
>> +ONE_PORT="YES"
>>  
>>  . /etc/network.mode
>>  
>>  ETHMESHMAC=
>> -ROUTERMAC=w2mesh
>> -
>> -uci set network.$SWITCHDEV=interface
>> -uci set network.$SWITCHDEV.ifname=$SWITCHDEV
>> -uci set network.mesh.ifname="bat0"
>> -
>> -if [ "$ETHMODE" = "WAN" ] ; then
>> -  ## Activate for WAN:
>> -  echo "net.ipv6.conf.$WANDEV.accept_ra_defrtr = 1" >>
>/etc/sysctl.conf
>> -  echo "net.ipv6.conf.$WANDEV.accept_ra_pinfo = 1" >>
>/etc/sysctl.conf
>> -  echo "net.ipv6.conf.$WANDEV.autoconf = 1" >> /etc/sysctl.conf
>> -  echo "net.ipv6.conf.$WANDEV.accept_ra_rtr_pref = 1" >>
>/etc/sysctl.conf
>> -  uci set network.wan.ifname=$WANDEV
>> -elif [ "$ETHMODE" = "CLIENT" ] ; then
>> -  ## Activate Client:
>> -  uci set network.mesh.ifname="bat0 $SWITCHDEV"
>> -else
>> -  ## Activate BATMAN:
>> -  uci set network.ethmesh.ifname="$SWITCHDEV"
>> -fi
>> +ROUTERMAC=w2mesh
>> \ No newline at end of file
>> diff --git a/src/packages/fff/fff-network/ar71xx/network.ubnt-unifi
>b/src/packages/fff/fff-network/ar71xx/network.ubnt-unifi
>> index c16993d..307a201 100644
>> --- a/src/packages/fff/fff-network/ar71xx/network.ubnt-unifi
>> +++ b/src/packages/fff/fff-network/ar71xx/network.ubnt-unifi
>> @@ -3,27 +3,9 @@ SWITCHDEV=eth0
>>  CLIENT_PORTS=""
>>  WAN_PORTS=""
>>  BATMAN_PORTS=""
>> +ONE_PORT="YES"
>>  
>>  . /etc/network.mode
>>  
>>  ETHMESHMAC=
>> -ROUTERMAC=w2mesh
>> -
>> -uci set network.$SWITCHDEV=interface
>> -uci set network.$SWITCHDEV.ifname=$SWITCHDEV
>> -uci set network.mesh.ifname="bat0"
>> -
>> -if [ "$ETHMODE" = "WAN" ] ; then
>> -  ## Activate for WAN:
>> -  echo "net.ipv6.conf.$WANDEV.accept_ra_defrtr = 1" >>
>/etc/sysctl.conf
>> -  echo "net.ipv6.conf.$WANDEV.accept_ra_pinfo = 1" >>
>/etc/sysctl.conf
>> -  echo "net.ipv6.conf.$WANDEV.autoconf = 1" >> /etc/sysctl.conf
>> -  echo "net.ipv6.conf.$WANDEV.accept_ra_rtr_pref = 1" >>
>/etc/sysctl.conf
>> -  uci set network.wan.ifname=$WANDEV
>> -elif [ "$ETHMODE" = "CLIENT" ] ; then
>> -  ## Activate Client:
>> -  uci set network.mesh.ifname="bat0 $SWITCHDEV"
>> -else
>> -  ## Activate BATMAN:
>> -  uci set network.ethmesh.ifname="$SWITCHDEV"
>> -fi
>> +ROUTERMAC=w2mesh
>> \ No newline at end of file
>> diff --git
>a/src/packages/fff/fff-network/files/usr/sbin/configurenetwork
>b/src/packages/fff/fff-network/files/usr/sbin/configurenetwork
>> index 3b21411..7c8429a 100755
>> --- a/src/packages/fff/fff-network/files/usr/sbin/configurenetwork
>> +++ b/src/packages/fff/fff-network/files/usr/sbin/configurenetwork
>> @@ -65,6 +65,41 @@ if ! uci get network.$SWITCHDEV.ifname; then
>>      /etc/init.d/network restart
>>  fi
>>  
>> +if [ "$ONE_PORT" = "YES" ]; then
>> +    uci set network.$SWITCHDEV=interface
>> +    uci set network.$SWITCHDEV.ifname=$SWITCHDEV
>> +    if [ "$ETHMODE" = "WAN" ]; then
>> +        echo "net.ipv6.conf.$WANDEV.accept_ra_defrtr = 1" >>
>/etc/sysctl.conf
>> +        echo "net.ipv6.conf.$WANDEV.accept_ra_pinfo = 1" >>
>/etc/sysctl.conf
>> +        echo "net.ipv6.conf.$WANDEV.autoconf = 1" >>
>/etc/sysctl.conf
>> +        echo "net.ipv6.conf.$WANDEV.accept_ra_rtr_pref = 1" >>
>/etc/sysctl.conf
>> +        uci set network.mesh.ifname="bat0"
>> +        uci set network.wan.ifname="$WANDEV"
>> +        uci del uci set network.ethmesh.ifname
>> +        uci del network.eth0.macaddr
>> +    elif [ "$ETHMODE" = "CLIENT" ] ; then
>> +        echo "net.ipv6.conf.$WANDEV.accept_ra_defrtr = 0" >>
>/etc/sysctl.conf
>> +        echo "net.ipv6.conf.$WANDEV.accept_ra_pinfo = 0" >>
>/etc/sysctl.conf
>> +        echo "net.ipv6.conf.$WANDEV.autoconf = 0" >>
>/etc/sysctl.conf
>> +        echo "net.ipv6.conf.$WANDEV.accept_ra_rtr_pref = 0" >>
>/etc/sysctl.conf
>> +        uci set network.mesh.ifname="bat0 $SWITCHDEV"
>> +        uci set network.wan.ifname="eth1" #eth1 because it is
>default in config file
>> +        uci del network.ethmesh.ifname
>> +        uci del network.eth0.macaddr
>> +    elif [ "$ETHMODE" = "BATMAN" ] ; then
>> +        echo "net.ipv6.conf.$WANDEV.accept_ra_defrtr = 0" >>
>/etc/sysctl.conf
>> +        echo "net.ipv6.conf.$WANDEV.accept_ra_pinfo = 0" >>
>/etc/sysctl.conf
>> +        echo "net.ipv6.conf.$WANDEV.autoconf = 0" >>
>/etc/sysctl.conf
>> +        echo "net.ipv6.conf.$WANDEV.accept_ra_rtr_pref = 0" >>
>/etc/sysctl.conf
>> +        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"
>> +    fi
>> +    uci commit
>> +    /etc/init.d/network restart
>> +fi
>> +
>>  if [[ -n "$ETHMESHMAC" ]]; then
>>      if uci get network.ethmesh.macaddr
>>      then
>> 



Mehr Informationen über die Mailingliste franken-dev