IC-VPN: Unterschied zwischen den Versionen
Kerel (Diskussion | Beiträge) KKeine Bearbeitungszusammenfassung |
Yanosz (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
||
Zeile 15: | Zeile 15: | ||
Im IC-VPN gibt es einige netzinterne Dienste. Ein Beispiel aus Hamburg ist "start.ffhh". | Im IC-VPN gibt es einige netzinterne Dienste. Ein Beispiel aus Hamburg ist "start.ffhh". | ||
== ICVPN-Router installieren == | |||
Benötigte Dienste: | |||
* Tinc (VPN) | |||
* Babel (für BGP) | |||
=== Notizblock === | |||
* Trennung über lxc (application container). Wichtig: Policy-Router vermeidung - wird fies! | |||
* Host (für VPN-Interfaces, z.B. eine VM) wie normal aufsetzen. Tinc einrichten + Verbindung testen: https://github.com/freifunk/icvpn | |||
* Wenn VPN, lxc konfigurieren - Idee: Gleiches rootfs verwenden (wg. cronjobs, auf dem Host, etc.) aber nur die notwendigen Interfaces durchreichen! | |||
<pre> | |||
# /var/lib/lxc/router/config | |||
xc.rootfs = / | |||
lxc.utsname = router | |||
lxc.tty = 4 | |||
lxc.pts = 1024 | |||
lxc.arch = amd64 | |||
lxc.network.type = phys | |||
lxc.network.flags = up | |||
lxc.network.link = icvpn | |||
lxc.network.name = icvpn | |||
lxc.network.hwaddr = A2:FF:FF:FF:02:01 | |||
lxc.network.ipv4 = 10.207.0.42/16 | |||
lxc.network.ipv6 = fec0::a:cf:0:2a/96 | |||
lxc.network.type = phys | |||
lxc.network.flags = up | |||
lxc.network.link = backbone | |||
lxc.network.name = backbone | |||
lxc.network.type = phys | |||
lxc.network.flags = up | |||
lxc.network.link = backbone-fastd | |||
lxc.network.name = backbone-fastd | |||
</pre> |
Version vom 4. Dezember 2016, 20:58 Uhr
Überblick
Das InterCity-VPN verbindet die einzelnen Städte/Freifunk-Communities in Deutschland untereinander. Es ermöglicht den Zugriff auf netzinterne Dienste aller verbundenen Communities.
Mit tinc werden Tunnel aufgebaut, auf denen BGP (Border Gateway Protocol) gesprochen wird. Einige Communities betreiben eigene TLDs (Top Level Domains). Diese DNS-Zonen sind (in Zukunft) auch im KBU-Netz bekannt.
Die Koordinierung des Netzes erfolgt über das (globale) Freifunk-Wiki und einige Github-Repositorys (icvpn-meta und icvpn).
Umsetzung
Zur Zeit haben einzelne Supernodes (siehe Infrastruktur ) Zugang zum IC-VPN. Alle Nodes mit einer Verbindungen zu einem dieser Supernodes steht das IC-VPN bisher zur Verfügung.
netzinterne Dienste
Im IC-VPN gibt es einige netzinterne Dienste. Ein Beispiel aus Hamburg ist "start.ffhh".
ICVPN-Router installieren
Benötigte Dienste:
- Tinc (VPN)
- Babel (für BGP)
Notizblock
- Trennung über lxc (application container). Wichtig: Policy-Router vermeidung - wird fies!
- Host (für VPN-Interfaces, z.B. eine VM) wie normal aufsetzen. Tinc einrichten + Verbindung testen: https://github.com/freifunk/icvpn
- Wenn VPN, lxc konfigurieren - Idee: Gleiches rootfs verwenden (wg. cronjobs, auf dem Host, etc.) aber nur die notwendigen Interfaces durchreichen!
# /var/lib/lxc/router/config xc.rootfs = / lxc.utsname = router lxc.tty = 4 lxc.pts = 1024 lxc.arch = amd64 lxc.network.type = phys lxc.network.flags = up lxc.network.link = icvpn lxc.network.name = icvpn lxc.network.hwaddr = A2:FF:FF:FF:02:01 lxc.network.ipv4 = 10.207.0.42/16 lxc.network.ipv6 = fec0::a:cf:0:2a/96 lxc.network.type = phys lxc.network.flags = up lxc.network.link = backbone lxc.network.name = backbone lxc.network.type = phys lxc.network.flags = up lxc.network.link = backbone-fastd lxc.network.name = backbone-fastd