Differences
This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision Next revision | Previous revision | ||
|
raspberry_pi:mods:mesh [2017/05/25 21:12] matthias [Mesh config scrip] |
raspberry_pi:mods:mesh [2018/02/23 16:54] (current) matthias [Mesh config script] without cd but use homedir |
||
|---|---|---|---|
| Line 16: | Line 16: | ||
| - Create Mesh setup script & make it bootable | - Create Mesh setup script & make it bootable | ||
| - Configure Avahi to announce PirateBox | - Configure Avahi to announce PirateBox | ||
| + | |||
| + | ===== Prereq. ===== | ||
| + | Check the internet is working and sudo is active: | ||
| + | |||
| + | sudo touch /tmp/sudo_test | ||
| + | sudo rm /etc/resolv.conf | ||
| + | sudo sh -c 'echo "nameserver 8.8.8.8" > /etc/resolv.conf' | ||
| + | dig google.de | grep -q -e 192.168.77.1 && echo "error, Internet is not working!" | ||
| + | |||
| ===== Software bridge ===== | ===== Software bridge ===== | ||
| Create the network configuration file for the bridge: | Create the network configuration file for the bridge: | ||
| + | | ||
| cat <<EOF > piratebox_bridge | cat <<EOF > piratebox_bridge | ||
| Description="General bridge interface for PirateBox" | Description="General bridge interface for PirateBox" | ||
| Line 87: | Line 96: | ||
| sudo sh -c 'echo "br_netfilter" > /etc/modules-load.d/netfilter.conf' | sudo sh -c 'echo "br_netfilter" > /etc/modules-load.d/netfilter.conf' | ||
| + | sudo modprobe br_netfilter | ||
| + | sudo pacman -Sy --noconfirm batctl | ||
| wget https://github.com/PirateBox-Dev/PirateBox-Mesh/releases/download/1.1.4/piratebox-mesh_1.1.4_all_NON_WRT.sh | wget https://github.com/PirateBox-Dev/PirateBox-Mesh/releases/download/1.1.4/piratebox-mesh_1.1.4_all_NON_WRT.sh | ||
| chmod a+x piratebox-mesh_1.1.4_all_NON_WRT.sh | chmod a+x piratebox-mesh_1.1.4_all_NON_WRT.sh | ||
| sudo mv piratebox-mesh_1.1.4_all_NON_WRT.sh /bin/piratebox-mesh.sh | sudo mv piratebox-mesh_1.1.4_all_NON_WRT.sh /bin/piratebox-mesh.sh | ||
| sudo sed -i -e 's|phy0|phy1|g' \ | sudo sed -i -e 's|phy0|phy1|g' \ | ||
| - | -e 's|MESH_CHANNEL=0|MESH_CHANNEL=6| \ | + | -e 's|MESH_CHANNEL=0|MESH_CHANNEL=6|' \ |
| -e 's|EXCHANGE_MAC="yes"|EXCHANGE_MAC="no"|' \ | -e 's|EXCHANGE_MAC="yes"|EXCHANGE_MAC="no"|' \ | ||
| /bin/piratebox-mesh.sh | /bin/piratebox-mesh.sh | ||
| | | ||
| + | Create a start/stop script: | ||
| + | |||
| + | cat <<EOF > ~/mesh.service | ||
| + | [Unit] | ||
| + | Description=PirateBox Mesh Service | ||
| + | PartOf=netctl@piratebox_bridge.service | ||
| + | | ||
| + | [Service] | ||
| + | Type=idle | ||
| + | RemainAfterExit=yes | ||
| + | ExecStart=/bin/piratebox-mesh.sh start | ||
| + | ExecStop=/bin/piratebox-mesh.sh stop | ||
| + | | ||
| + | [Install] | ||
| + | WantedBy=multi-user.target | ||
| + | EOF | ||
| + | sudo mv ~/mesh.service /etc/systemd/system | ||
| + | sudo systemctl daemon-reload | ||
| + | sudo systemctl start mesh.service | ||
| + | sudo systemctl enable mesh.service | ||
| + | |||
| + | ===== AVAHI ===== | ||
| + | |||
| + | sudo mv /etc/avahi /etc/avahi.old | ||
| + | sudo ln -s /opt/piratebox/conf/avahi/ /etc/avahi | ||
| + | sudo systemctl start avahi-daemon | ||
| + | sudo systemctl enable avahi-daemon | ||
| + | | ||
| + | ===== Finalize ===== | ||
| + | At the end you should do a reboot | ||
| + | |||
| + | sudo reboot | ||
| + | |||