| Zeile 121: |
Zeile 121: |
| | <pre> | | <pre> |
| | #!/bin/sh | | #!/bin/sh |
| | + | |
| | + | # Verbinden von funkmaessig getrennten Wireless-Mesh-Wolken ueber ein VPN: |
| | + | # Dies ist ein speziell angepasstes Skript zum erstellen einer vtund-Konfiguration |
| | + | # und zum erstellen einer OLSR-Konfiguration mit passenden Interfacenamen. |
| | + | # Das Skript ist exakt das selbe auf Client und Server, es ist also kein manueller |
| | + | # Eingriff noetig. Es wird eine SternTopologie erzeugt mit einem Server mit |
| | + | # oeffentlicher IP-Adresse und den Clients hinter NAT-Gateways. |
| | + | # Es werden unauthentifizierten, unkomprimierte und unverschluesselte Tunnel erzeugt. |
| | + | |
| | + | # Variablendefinitionen |
| | + | THIS="$(nvram get wifi_ipaddr|cut -d'.' -f3)" |
| | + | OLSR="/etc/local.olsrd.conf"; VTUN="/etc/vtund.conf" |
| | + | VPN="10.63.254"; SRV="214"; CNT="-1"; SRVPUBLIC="141.54.160.25" |
| | + | # Liste aller teilnehmenden Clients (Netzknotennummern) |
| | + | LST="41 82 42 37 62 54 135 87 1" |
| | | | |
| | # Funktion um Netzknotennummer einem Ort zuzuweisen,fuer lesbare Konfig | | # Funktion um Netzknotennummer einem Ort zuzuweisen,fuer lesbare Konfig |
| Zeile 143: |
Zeile 158: |
| | echo -e "MidInterval 15.0\nMidValidityTime 270.0\nHnaInterval 15.0\nHnaValidityTime 90.0" | | echo -e "MidInterval 15.0\nMidValidityTime 270.0\nHnaInterval 15.0\nHnaValidityTime 90.0" |
| | } | | } |
| − |
| |
| − | # Variablendefinitionen
| |
| − | THIS="$(nvram get wifi_ipaddr|cut -d'.' -f3)"
| |
| − | OLSR="/etc/local.olsrd.conf"; VTUN="/etc/vtund.conf"
| |
| − | VPN="10.63.254"; SRV="214"; CNT="-1"; SRVPUBLIC="141.54.160.25"
| |
| − | # Liste aller teilnehmenden Clients (Netzknotennummern)
| |
| − | LST="41 82 42 37 62 54 135 87 1"
| |
| | | | |
| | # sicherheitshalber evtl. laufende Instanzen und/oder vorhandene Dateien loeschen | | # sicherheitshalber evtl. laufende Instanzen und/oder vorhandene Dateien loeschen |
| Zeile 167: |
Zeile 175: |
| | iptables -I POSTROUTING -t nat -o tun$CNT -j MASQUERADE | | iptables -I POSTROUTING -t nat -o tun$CNT -j MASQUERADE |
| | done | | done |
| | + | # Server starten |
| | vtund -s | | vtund -s |
| | else | | else |
| Zeile 174: |
Zeile 183: |
| | echo >>$VTUN " up { program \"ip addr add dev %% $VPN.$THIS peer $VPN.$SRV; ip link set %% mtu 1450 up\"; }; }" | | echo >>$VTUN " up { program \"ip addr add dev %% $VPN.$THIS peer $VPN.$SRV; ip link set %% mtu 1450 up\"; }; }" |
| | echo >>$OLSR -e "Interface \"tun0\"$(write_olsr)\nIp4Broadcast $VPN.$SRV\nLinkQualityMult $VPN.$SRV 0.1\n}" | | echo >>$OLSR -e "Interface \"tun0\"$(write_olsr)\nIp4Broadcast $VPN.$SRV\nLinkQualityMult $VPN.$SRV 0.1\n}" |
| − | # und starten | + | # Client starten |
| | vtund $(get_name $THIS) $SRVPUBLIC | | vtund $(get_name $THIS) $SRVPUBLIC |
| | fi | | fi |
| | </pre> | | </pre> |