59 lines
1.7 KiB
Django/Jinja
59 lines
1.7 KiB
Django/Jinja
#!/bin/sh
|
|
# Version 1.91
|
|
|
|
sleep 5
|
|
|
|
curl -X POST --data-urlencode 'payload={"text": "{{ sn_hostname }} is rebooted", "channel": "#technik", "username": "{{ sn_hostname }}", "icon_emoji": ":floppy_disk:"}' https://hooks.slack.com/services/{{ slack_token }}
|
|
|
|
# Activate IP forwarding
|
|
/sbin/sysctl -w net.ipv6.conf.all.forwarding=1
|
|
/sbin/sysctl -w net.ipv4.ip_forward=1
|
|
|
|
# restart when kernel panic
|
|
/sbin/sysctl kernel.panic=1
|
|
|
|
# Routing table 42
|
|
/bin/grep 42 /etc/iproute2/rt_tables || /bin/echo 42 ffrl >> /etc/iproute2/rt_tables
|
|
|
|
# Set table for traffice with mark 4
|
|
/bin/ip rule add fwmark 0x4 table 42
|
|
/bin/ip -6 rule add fwmark 0x4 table 42
|
|
|
|
# Set mark 4 to Freifunk traffic
|
|
/sbin/iptables -t mangle -A PREROUTING -s 10.0.0.0/8 ! -d 10.0.0.0/8 -j MARK --set-mark 4
|
|
/sbin/ip6tables -t mangle -A PREROUTING -s 2a03:2260:121::/48 ! -d 2a03:2260:121::/48 -j MARK --set-mark 4
|
|
|
|
# All from FF IPv4 via routing table 42
|
|
/bin/ip rule add from {{ sn_ffrl_IPv4 }}/32 lookup 42
|
|
/bin/ip -6 rule add from {{ sn_mesh_IPv6_net }} lookup 42
|
|
|
|
# Allow MAC address spoofing
|
|
/sbin/sysctl net.ipv4.conf.bat0.rp_filter=0
|
|
|
|
# Create Tunneldigger Bridge
|
|
/sbin/brctl addbr br-nodes
|
|
/sbin/ip link set dev br-nodes up address 2E:9D:FA:A1:6B:0{{ sn_number }}
|
|
/sbin/ebtables -A FORWARD --logical-in br-nodes -j DROP
|
|
/usr/local/sbin/batctl if add br-nodes
|
|
|
|
/bin/sleep 90
|
|
/bin/systemctl restart radvd
|
|
/bin/sleep 2
|
|
/bin/systemctl retsrat tunneldigger
|
|
/bin/sleep 2
|
|
/bin/systemctl restart bird
|
|
/bin/sleep 2
|
|
/bin/systemctl restart bird6
|
|
/bin/sleep 2
|
|
/bin/systemctl restart respondd
|
|
/bin/sleep 2
|
|
/bin/systemctl stop isc-dhcp-server
|
|
/bin/sleep 2
|
|
/usr/bin/killall dhcpd
|
|
/bin/sleep 2
|
|
/bin/rm /var/run/dhcpd.pid
|
|
/bin/sleep 2
|
|
/bin/systemctl start isc-dhcp-server
|
|
exit 0
|
|
|