[PATCH] fff-network: Improve IPv6 WAN connectivity
Robert Langhammer
rlanghammer at web.de
Mi Jun 17 09:04:07 CEST 2020
Hi,
das ist wirklich schöner als die versteckten sysctls.
Reviewed-by: Robert Langhammer <rlanghammer at web.de>
Am 14.06.20 um 13:17 schrieb Fabian Bläse:
> Until now, IPv6 connectivity was only ensured by some custom sysctls.
> OpenWrt has a proper way of enabling IPv6 client (SLAAC, as well as DHCPv6)
> for an interface. Switching to OpenWrt's way of configuring client addresses
> for an interface might also make configuration more reliable, as the appropriate
> sysctls are now set by netifd. Especially OnePort and TwoPort devices will
> benefit from this change, as IPv6 auto configuration does not have to be manually
> enabled and disabled for a physical interface, but rather is set as an option for
> our logical wan interface.
>
> At the same time this change enables DHCPv6 client support for WAN.
>
> Signed-off-by: Fabian Bläse <fabian at blaese.de>
> ---
> src/packages/fff/fff-network/files/etc/config/network | 5 +++++
> .../fff/fff-network/files/usr/sbin/configurenetwork | 9 +--------
> 2 files changed, 6 insertions(+), 8 deletions(-)
>
> diff --git a/src/packages/fff/fff-network/files/etc/config/network b/src/packages/fff/fff-network/files/etc/config/network
> index d2ee443..1f56ce5 100644
> --- a/src/packages/fff/fff-network/files/etc/config/network
> +++ b/src/packages/fff/fff-network/files/etc/config/network
> @@ -12,6 +12,11 @@ config interface 'wan'
> option proto 'dhcp'
> option ifname 'eth1'
>
> +config interface 'wan6'
> + option proto 'dhcpv6'
> + option reqprefix 'no'
> + option ifname '@wan'
> +
> config interface 'ethmesh'
> option proto 'batadv_hardif'
> option master 'bat0'
> diff --git a/src/packages/fff/fff-network/files/usr/sbin/configurenetwork b/src/packages/fff/fff-network/files/usr/sbin/configurenetwork
> index 0ae7ba8..4bbc4f1 100755
> --- a/src/packages/fff/fff-network/files/usr/sbin/configurenetwork
> +++ b/src/packages/fff/fff-network/files/usr/sbin/configurenetwork
> @@ -126,11 +126,7 @@ if ! uci -q get network.$SWITCHDEV > /dev/null || [ "$FORCEPARSE" = '1' ] ; then
> uci set network.${SWITCHDEV}_2.vlan=2
> uci set network.${SWITCHDEV}_2.ports="$WAN_PORTS"
>
> - enableAutoConf "$WANDEV.2"
> - else
> - enableAutoConf "$WANDEV"
> - fi
> -
> +
> uci set network.${SWITCHDEV}_3=switch_vlan
> uci set network.${SWITCHDEV}_3.device=$SWITCHHW
> uci set network.${SWITCHDEV}_3.vlan=3
> @@ -153,19 +149,16 @@ if [ "$ONE_PORT" = "YES" ] && ( ! uci -q get network.$SWITCHDEV.ifname || [ "$FO
> uci set network.$SWITCHDEV=interface
> uci set network.$SWITCHDEV.ifname=$SWITCHDEV
> if [ "$ETHMODE" = "WAN" ]; then
> - enableAutoConf "$WANDEV"
> 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
> - disableAutoConf "$WANDEV"
> 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
> - disableAutoConf "$WANDEV"
> 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"
Mehr Informationen über die Mailingliste franken-dev