Interface de malha automática

0

Estou criando uma interface de malha no meu pi de framboesa, usando o conjunto "padrão" de comandos:

iw dev wlan0 interface add mesh0 type mp
ifdown wlan0
ifconfig mesh0 192.168.202.103
iw dev mesh0 mesh join mymesh

Eu tentei colocar todos esses comandos em um script .sh na pasta /etc/init.d/ , mas isso não me leva a nada. Não tem nada a ver com o arquivo /etc/network/interfaces , que é assim:

auto wlan0
auto lo

iface lo inet loopback
iface eth0 inet static
address 192.168.100.103
netmask 255.255.255.0
gateway 192.168.100.1

allow-hotplug wlan0
iface wlan0 inet static
address 192.168.200.103
netmask 255.255.255.0
wireless-mode ad-hoc
wireless-essid pi

Existe alguma outra maneira que eu possa automatizar esse processo, de modo que toda vez que o sistema inicializar, a interface mesh0 estará lá, com o endereço IP e a rede de malha escolhida? Como alternativa, há algo errado com essa configuração (suponho que no arquivo interfaces ), que está impedindo que os comandos do script init.d sejam executados?

Obrigado!

    
por Milan C. 02.11.2016 / 18:53

1 resposta

1

Consegui fazer isso criando um script mesh.sh contendo:

#!/bin/sh

sleep 5
iw wlan0 interface add mesh0 type mp
sleep 1
ifdown wlan0
sleep 1
ifconfig mesh0
ifconfig mesh0 192.168.202.106
iw mesh0 mesh join meshpi

Em seguida, crie um arquivo chamado meshboot in /etc/init.d/ contendo:

#!/bin/sh
### BEGIN INIT INFO
# Provides:          meshboot
# Required-Start:    $remote_fs $syslog
# Required-Stop:     $remote_fs $syslog
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: Start daemon at boot time
# Description:       Enable service provided by daemon.
### END INIT INFO

case "$1" in
start)
sudo /home/pi/mesh.sh
;;
stop)
;;
esac

exit 0

E fazendo com que ele seja executado na inicialização com update-rc.d meshboot defaults .

    
por 07.03.2017 / 16:55