Wiki - Freifunk Pinneberg

Freies WLAN im Kreis Pinneberg

Benutzer-Werkzeuge

Webseiten-Werkzeuge


intercity-vpn

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
intercity-vpn [15.12.2016 21:26]
havelock [Basisdaten]
intercity-vpn [12.12.2017 21:27] (aktuell)
havelock [Tinc]
Zeile 21: Zeile 21:
     * gate01     * gate01
     * gate04     * gate04
 +  * Die übrigen Gateways machen das Routing über diese beiden Schnittstellen
 +    * Es wird dafür internes BGP verwendet
 +    * Die Nameserverkonfiguration  wird von Gate01 mit lsync auf die übrigen Systeme  übertragen
 +
  
 ===== Basisdaten ===== ===== Basisdaten =====
  
 Informationen zu den einzelnen am ICVPN teilnehmenden Communities. Informationen zu den einzelnen am ICVPN teilnehmenden Communities.
 +
 +Die Metadaten werden in ''/var/lib/icvpn-meta'' gespeichert.
 +Der Ursprung ist ein Git-Repository, die Aktualisierung
 +erfolgt durch ein Script mit Cron-Job (s.u.).
  
 Es gibt eine Sammlung von Scripts für ICVPN: ''icvpn-scripts''. Es gibt eine Sammlung von Scripts für ICVPN: ''icvpn-scripts''.
  
 Voraussetzung und Installation Voraussetzung und Installation
-  aptitude install python-yaml+  aptitude install python3 python3-yaml
   cd /opt   cd /opt
   git clone https://github.com/freifunk/icvpn-scripts   git clone https://github.com/freifunk/icvpn-scripts
  
-Das folgende Script wird mittels eines Cron-Jobs (in cron.daily) täglich ausgeführt+Das folgende Script wird mittels eines Cron-Jobs (in cron.daily) täglich ausgeführt
 +in dieser Version allerdings nur vom Master-Gateway. Die übrigen Systeme bekommen die 
 +Daten über lsync weiterverteilt.
 <file bash icvpn-update> <file bash icvpn-update>
 #!/bin/sh #!/bin/sh
 +#
 +# Freifunk Intercity VPN:  Daten aktualisieren
 +#
  
-# Name of own community (as used in icvpn-meta repository) 
 OWN_COMMUNITY=pinneberg OWN_COMMUNITY=pinneberg
 ICVPN_META_DIR=/var/lib/icvpn-meta ICVPN_META_DIR=/var/lib/icvpn-meta
Zeile 43: Zeile 55:
 NAMED_CONF=/etc/bind/named.conf.icvpn-zones NAMED_CONF=/etc/bind/named.conf.icvpn-zones
  
 +# Basisdaten über Git aktualisieren
 +cd /etc/tinc/icvpn
 +git pull -q
 +cd $ICVPN_META_DIR
 +git pull -q
 +
 +# Konfigurationsdateien aus den neuen Daten erzeugen
 /opt/icvpn-scripts/mkbgp -f bird -4 -s $ICVPN_META_DIR -d peers -x $OWN_COMMUNITY > $BIRD_CONF /opt/icvpn-scripts/mkbgp -f bird -4 -s $ICVPN_META_DIR -d peers -x $OWN_COMMUNITY > $BIRD_CONF
 /opt/icvpn-scripts/mkdns -f bind -s $ICVPN_META_DIR -x $OWN_COMMUNITY > $NAMED_CONF /opt/icvpn-scripts/mkdns -f bind -s $ICVPN_META_DIR -x $OWN_COMMUNITY > $NAMED_CONF
 +
 </file> </file>
  
Zeile 51: Zeile 71:
   * ReplayWindows (in Bytes) in ''tinc.conf'' erhöhen hilft ggf. bei Packet losts?   * ReplayWindows (in Bytes) in ''tinc.conf'' erhöhen hilft ggf. bei Packet losts?
     * 16 bytes = 128 packets     * 16 bytes = 128 packets
 +
 +Infos von tinc erfragen
 +  * ''kill -USR1 <tinc pid>'' - dumps the connection list
 +  * ''kill -USR2 <tinc pid>'' - dumps virtual network statistics
  
 ===== Bird ===== ===== Bird =====
Zeile 81: Zeile 105:
 } }
 </file> </file>
 +
 +Übertragung des Routings an die anderen Gateways:
 +<file conf /etc/bird/bird.d/gateways.conf>
 +protocol bgp gate03 from locals {
 +    neighbor 10.137.12.1 as 65433;
 +}
 +protocol bgp gate04 from locals {
 +    neighbor 10.137.13.1 as 65433;
 +}
 +protocol bgp gate05 from locals {
 +    neighbor 10.137.14.1 as 65433;
 +}
 +</file>
 +
 +Die Konfiguration kann mit ''birdc'' überprüft werden. Das Programm kann ohne Parameter aufgerufen werden, dann ist es im interaktiven Modus. Mit ''?'' bekommt man die Hilfe angezeigt.
 +
 +Alternativ können befehle auch direkt abgesetzt werden:
 +  * ''birdc show protocols''
 +  * ''birdc configure check'' - überprüft die Konfigurationsdatei
 +  * ''birdc configure'' - lädt die Konfigurationsdatei (z.B. nach einer Änderung) neu ein
  
 ==== Invalid NEXT_HOP ==== ==== Invalid NEXT_HOP ====
Zeile 109: Zeile 153:
 </file> </file>
  
 +Die ICVPN-Metadaten werden auf die übrigen Gateways übertragen.
 +Momentan ist Gate03 konfiguriert. 
  
-  touch /etc/bind/named.conf.icvpn-zones+<file bash /etc/cron.daily/ff-dns-update> 
 +#!/bin/sh 
 +
 +# Freifunk Intercity  VPN: DNS aktualisieren 
 +#
  
 +OWN_COMMUNITY=pinneberg
 +ICVPN_META_DIR=/var/lib/icvpn-meta
 +NAMED_CONF=/etc/bind/named.conf.icvpn-zones
  
 +# Konfigurationsdatei neu schreiben
 +/opt/icvpn-scripts/mkdns -f bind -s $ICVPN_META_DIR -x $OWN_COMMUNITY > $NAMED_CONF
  
 +# Nameserverdaten neu laden
 +/usr/sbin/rndc reload
 +
 +</file>
intercity-vpn.1481833592.txt.gz · Zuletzt geändert: 15.12.2016 21:26 von havelock