IP-System: Unterschied zwischen den Versionen

Aus Weimarnetz Wiki
Zur Navigation springen Zur Suche springen
(→‎Vergabe-Logik: verkuerzt)
(38 dazwischenliegende Versionen von 5 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
 +
=IPv4=
 
===Warum===
 
===Warum===
 
*Damit die Funknetze in Zukunft problemlos zusammenwachsen koennen hat man sich auf dem 22c3 auf ein einheitliches Netzwerkadressen (IP)-Schema geeinigt.
 
*Damit die Funknetze in Zukunft problemlos zusammenwachsen koennen hat man sich auf dem 22c3 auf ein einheitliches Netzwerkadressen (IP)-Schema geeinigt.
Zeile 5: Zeile 6:
 
===Wie===
 
===Wie===
 
*Allgemein bekommt jeder Ort/Stadt
 
*Allgemein bekommt jeder Ort/Stadt
** 104.stadtnummer.X.Y/16
+
** PREFIX.stadtnummer.X.Y/16
 +
*** ueber den PREFIX gibt es viele Meinungen: 104, 6 oder 10 - momentan nehmen wir in weimar die 10
 
** mit X und Y kann jeder Ort machen, was er will.
 
** mit X und Y kann jeder Ort machen, was er will.
 
** es ist natuerlich ratsam die begehrten oeffentlichen 104er-IPs fuer die Rechner und nicht (nur) fuer die Router zu verwenden
 
** es ist natuerlich ratsam die begehrten oeffentlichen 104er-IPs fuer die Rechner und nicht (nur) fuer die Router zu verwenden
Zeile 13: Zeile 15:
  
 
===Konkret===
 
===Konkret===
*Weimars System sieht dann so aus:
 
 
<pre>
 
<pre>
      WLAN-IP     =  10.weimar.knotennummer.1
+
* Insgesamt 65535 IP-Adressen pro Stadt verteilen sich auf 1000 Netzknoten
      WLAN-IP     =  10.weimar.250.knotennummer (Spezialfall OLSR-Laptop)
+
* Jeder Netzknoten erhaelt/verwaltet pauschaul 64 IP-Adressen.
      WLAN-Maske  = 255.0.0.0
+
* die 64 IP-Adressen liegen "hintereinander" und werden als kompletter block per HNA4 angekuendigt
OLSR-DHCP-Netz    =  10.weimar.knotennummer.0
+
* 32 LAN-Adressen
OLSR-DHCP-Bereich =  10.weimar.knotennummer.2-14
+
** 4 IPs sind "belegt" fuer: netz, kabelkopplung, broadcast, lan-interface
OLSR-DHCP-Maske  = 255.255.255.240 (entspricht /28 = 16 Adressen)
+
* 32 WLAN-Adressen
      LAN-IP      = 104.weimar.knotennummer.1
+
** 4 IPs sind "belegt" fuer: netz, vpn-kopplung, broadcast, wifi-interface
      LAN-Netz    = 104.weimar.knotennummer.0
+
* WLAN-Netzmaske ist 255.0.0.0, also eigentlich nicht korrekt
      LAN-Bereich = 104.weimar.knotennummer.2-14
+
** Nebeneffekt: dadurch ist LAN teil des WLAN-Bereichs (nur engere Maske) und es wird automatisch OLSR auf beiden Interfaces gesprochen, ergo: einfache Kabelkopplung moeglich
      LAN-Maske  = 255.255.255.240 (entspricht /28 = 16 Adressen)
+
* OLSR-Broadcast-Adresse ist 255.255.255.255
 +
</pre>
  
      DNS-Server  = 172.16.1.53 (jeder Internetuplink kuendigt das per HNA4 an)
+
===Vergabe-Logik / Skript zum spielen===
      DNS-Server  = 141.54.1.1 (NUR bei DSLern! bzw. einen DNS-Server im Internet)
+
 
 +
* erst den [[Firmware-Dokumentation API|loader]] laden
 +
 
 +
<pre>
 +
. /tmp/loader
 +
</pre>
  
</pre>
+
* Dann je nach zu testender Nummer folgendes
*Erlaeuterung: Knotennummer 250-254,bzw. die letzten 5 IPs werden von der Registrierung nicht vergeben,sondern fuer OLSR-Laptops/Endgeraete freigelassen
 
  
 
<pre>
 
<pre>
      VPN-Bereich = 104.63.254.1/27 und 10.63.254.1/27
+
_ipsystem do 5
 
</pre>
 
</pre>
  
===Vergabe-Logik===
+
Hier wird die Knotennummer 5 getestet. Wird die Knotennummer weggelassen, dann wird die aktuell verwendete verwendet. Es werden nun alle relevanten Parameter angezeigt.
*die Logik dahinter beschreibt sich wie folgt:
 
<tt>awk 'BEGIN{for(n=0;n<241;){k++;s++;if(s>254){s=1;n=n+16}if(s<250)print"No"k"=10.stadt."s"."n"/28"}}'</tt>
 
*ergo: 4059 Router pro Stadt mit je 13 LAN und 13 WLAN-Clients und 20320 reine OLSR-Knoten.
 
*die Knotennummer bekommt man ueber die [http://mmlxvi.dyndns.org:8082/cgi-bin-registrator.html Registrierung]
 
  
 
===Beispiele===
 
===Beispiele===
 
<pre>
 
<pre>
Beispiel mit Knotennummer 123 in Weimar:
+
root@box:~# fkt_calc_node_params 5
WLAN = 10.63.123.1 /28
+
FFF_NODE=5
  LAN = 104.63.123.1 /28
+
FFF_HNA=10.63.5.0/26
+
LANADR=10.63.5.33
Beispiel mit Knotennummer 255 in Leipzig:
+
LANMSK=255.255.255.224
WLAN = 10.61.1.16 /28
+
LANBRC=10.63.5.63
  LAN = 104.61.1.16 /28 
+
LANNET=10.63.5.32
 +
LANPRE=27
 +
LAN_OLSR_ADR=10.63.5.34
 +
LANDHCPSTART=35
 +
LANDHCPNUM=28
 +
WIFIADR=10.63.5.1
 +
WIFIMSK=255.255.255.224
 +
WIFIBRC=10.63.5.31
 +
WIFINET=10.63.5.0
 +
WIFIPRE=27
 +
WIFIVPN=10.63.5.2
  
Beispiel mit Knotennummer 258 in Weimar:
+
root@box:~# fkt_calc_node_params 255
WLAN = 10.63.4.16 /28
+
FFF_NODE=255
  LAN = 104.63.4.16 /28
+
FFF_HNA=10.63.255.0/26
 +
LANADR=10.63.255.33
 +
LANMSK=255.255.255.224
 +
LANBRC=10.63.255.63
 +
LANNET=10.63.255.32
 +
LANPRE=27
 +
LAN_OLSR_ADR=10.63.255.34
 +
LANDHCPSTART=35
 +
LANDHCPNUM=28
 +
WIFIADR=10.63.255.1
 +
WIFIMSK=255.255.255.224
 +
WIFIBRC=10.63.255.31
 +
WIFINET=10.63.255.0
 +
WIFIPRE=27
 +
WIFIVPN=10.63.255.2
  
Beispiel mit Knotennummer: 3325 in Leipzig:
+
root@box:~# fkt_calc_node_params 256
WLAN = 10.61.23.208 /28
+
FFF_NODE=256
  LAN = 104.61.23.208 /28
+
FFF_HNA=10.63.1.64/26
 +
LANADR=10.63.1.97
 +
LANMSK=255.255.255.224
 +
LANBRC=10.63.1.127
 +
LANNET=10.63.1.96
 +
LANPRE=27
 +
LAN_OLSR_ADR=10.63.1.98
 +
LANDHCPSTART=99
 +
LANDHCPNUM=28
 +
WIFIADR=10.63.1.65
 +
WIFIMSK=255.255.255.224
 +
WIFIBRC=10.63.1.95
 +
WIFINET=10.63.1.64
 +
WIFIPRE=27
 +
WIFIVPN=10.63.1.66
  
Beispiel mit Knotennummer: 223 in Weimar, OLSR-Laptop
+
root@box:~# fkt_calc_node_params 1020
WLAN = 10.63.250.223 /8
+
FFF_NODE=1020
  LAN = 104.63.250.223 /32  (Alias-Interface per HNA4-Ankuendigung)
+
FFF_HNA=10.63.255.192/26
 +
LANADR=10.63.255.225
 +
LANMSK=255.255.255.224
 +
LANBRC=10.63.255.255
 +
LANNET=10.63.255.224
 +
LANPRE=27
 +
LAN_OLSR_ADR=10.63.255.226
 +
LANDHCPSTART=227
 +
LANDHCPNUM=28
 +
WIFIADR=10.63.255.193
 +
WIFIMSK=255.255.255.224
 +
WIFIBRC=10.63.255.223
 +
WIFINET=10.63.255.192
 +
WIFIPRE=27
 +
WIFIVPN=10.63.255.194
 
</pre>
 
</pre>
  
 
[[Kategorie:Howto]]
 
[[Kategorie:Howto]]
 +
 +
=Gedanken zu IPv6=
 +
==Was wir haben==
 +
Die Wikipedia [http://de.wikipedia.org/wiki/IPv6 weiß schon viel über] IPv6
 +
 +
Unser [[Rootserver]] in Berlin ist bereits per IPv6 angebunden: http://[2001:bf7:b101:1::19]
 +
 +
Außerdem hat der Förderverein Freie Netzwerke e.V. einen großen IPv6-Block mit der Präfixlänge /32 [https://stat.ripe.net/2001:bf7::/32?sourceapp=ripedb#tabId=at-a-glance direkt registriert]. Das Netz wird von In-Berlin angekündigt und kann, da unser Server auch bei In-Berlin steht ohne Tunnel zu uns geleitet werden. Jeder Community kann ein Teilnetz daraus mit der Präfixlänge /44 bereitgestellt werden. Unser Präfix lautet 2001:bf7:1930::/44 und wird nach weimarnetz.de geroutet. Der Server ist daher auch unter http://[2001:bf7:1930::]/ erreichbar.
 +
 +
==Wie kann die Verteilung aussehen==
 +
* Wegen besserer Lesbarkeit der Adressen und reverseDNS sollten die Präfixlängen durch 4 teilbar sein - Stichwort Nibble Boundary
 +
* Jeder Router könnte aus dem Netz einen Teil mit der Präfixlänge /56 bekommen - damit haben wir Potential für 4096 Router
 +
** in diesen Teilpräfix kann unsere Knotennummer kodiert werden.
 +
** Knoten 5 hätte: 2001:0bf7:1930:500::/56
 +
** Knoten 52 hätte: 2001:0bf7:1930:3400/56
 +
* Auf jedem Gerät können dann 16 /60-er oder 256 /64-er Netze eingerichtet werden. /64 ist die kleinste Netzgröße und enthält echt viele IP-Adressen. So könnte hier für jedes Netzwerkgerät (WLAN, WLAN 5GHz, LAN, WAN, VPN) ein eigenes Netz mit vielen Adressen verwendet werden
 +
** ersten Teilnetz für Knoten 5: 2001:0bf7:1930:0500::/64
 +
** letztes Teilnetz für Knoten 5: 2001:0bf7:1930:05ff::/64
 +
===Aufteilung Knotennummer 1 für VPN-Server===
 +
* Jeder Server bekommt ein /60er Netz aus dem Bereich des ersten Knotens 2001:0bf7:1930:100::/56. Daraus kann er dann 16 Devices mit /64er Adressen befüllen:
 +
** Server vpn1: 2001:0bf7:1930:100::/60
 +
*** eth0 bekommt 2001:0bf7:1930:101::/64
 +
*** wnvpn 2001:0bf7:1930:01f0/64
 +
** Server vpn2: 2001:0bf7:1930:110::/60
 +
*** eth0 bekommt 2001:0bf7:1930:111::/64
 +
*** wnvpn 2001:0bf7:1930:01f1/64
 +
** ...
 +
** Server vpn15: 2001:0bf7:1930:01e0/60
 +
*** eth0 bekommt 2001:0bf7:1930:1e1::/64
 +
*** wnvpn 2001:0bf7:1930:01fe/64
 +
** Für das VPN zwischen den Servern ist das Netz 2001:0bf7:1930:01f0/60 gedacht. Jeder Server hat ein tinc-interface namens wnvpn
 +
 +
==Vor- und Nachteile==

Version vom 4. März 2015, 00:57 Uhr

IPv4

Warum

  • Damit die Funknetze in Zukunft problemlos zusammenwachsen koennen hat man sich auf dem 22c3 auf ein einheitliches Netzwerkadressen (IP)-Schema geeinigt.
  • der steinige (Diskussions-)Weg zum Ziel laesst sich hier einsehen: IP-System_umstellen_alt

Wie

  • Allgemein bekommt jeder Ort/Stadt
    • PREFIX.stadtnummer.X.Y/16
      • ueber den PREFIX gibt es viele Meinungen: 104, 6 oder 10 - momentan nehmen wir in weimar die 10
    • mit X und Y kann jeder Ort machen, was er will.
    • es ist natuerlich ratsam die begehrten oeffentlichen 104er-IPs fuer die Rechner und nicht (nur) fuer die Router zu verwenden
  • Stadtnummern:
    • 61 = Leipzig
    • 63 = Weimar

Konkret

* Insgesamt 65535 IP-Adressen pro Stadt verteilen sich auf 1000 Netzknoten
* Jeder Netzknoten erhaelt/verwaltet pauschaul 64 IP-Adressen.
* die 64 IP-Adressen liegen "hintereinander" und werden als kompletter block per HNA4 angekuendigt
* 32 LAN-Adressen
** 4 IPs sind "belegt" fuer: netz, kabelkopplung, broadcast, lan-interface
* 32 WLAN-Adressen
** 4 IPs sind "belegt" fuer: netz, vpn-kopplung, broadcast, wifi-interface
* WLAN-Netzmaske ist 255.0.0.0, also eigentlich nicht korrekt
** Nebeneffekt: dadurch ist LAN teil des WLAN-Bereichs (nur engere Maske) und es wird automatisch OLSR auf beiden Interfaces gesprochen, ergo: einfache Kabelkopplung moeglich
* OLSR-Broadcast-Adresse ist 255.255.255.255

Vergabe-Logik / Skript zum spielen

. /tmp/loader
  • Dann je nach zu testender Nummer folgendes
_ipsystem do 5

Hier wird die Knotennummer 5 getestet. Wird die Knotennummer weggelassen, dann wird die aktuell verwendete verwendet. Es werden nun alle relevanten Parameter angezeigt.

Beispiele

root@box:~# fkt_calc_node_params 5
FFF_NODE=5
FFF_HNA=10.63.5.0/26
LANADR=10.63.5.33
LANMSK=255.255.255.224
LANBRC=10.63.5.63
LANNET=10.63.5.32
LANPRE=27
LAN_OLSR_ADR=10.63.5.34
LANDHCPSTART=35
LANDHCPNUM=28
WIFIADR=10.63.5.1
WIFIMSK=255.255.255.224
WIFIBRC=10.63.5.31
WIFINET=10.63.5.0
WIFIPRE=27
WIFIVPN=10.63.5.2

root@box:~# fkt_calc_node_params 255
FFF_NODE=255
FFF_HNA=10.63.255.0/26
LANADR=10.63.255.33
LANMSK=255.255.255.224
LANBRC=10.63.255.63
LANNET=10.63.255.32
LANPRE=27
LAN_OLSR_ADR=10.63.255.34
LANDHCPSTART=35
LANDHCPNUM=28
WIFIADR=10.63.255.1
WIFIMSK=255.255.255.224
WIFIBRC=10.63.255.31
WIFINET=10.63.255.0
WIFIPRE=27
WIFIVPN=10.63.255.2

root@box:~# fkt_calc_node_params 256
FFF_NODE=256
FFF_HNA=10.63.1.64/26
LANADR=10.63.1.97
LANMSK=255.255.255.224
LANBRC=10.63.1.127
LANNET=10.63.1.96
LANPRE=27
LAN_OLSR_ADR=10.63.1.98
LANDHCPSTART=99
LANDHCPNUM=28
WIFIADR=10.63.1.65
WIFIMSK=255.255.255.224
WIFIBRC=10.63.1.95
WIFINET=10.63.1.64
WIFIPRE=27
WIFIVPN=10.63.1.66

root@box:~# fkt_calc_node_params 1020
FFF_NODE=1020
FFF_HNA=10.63.255.192/26
LANADR=10.63.255.225
LANMSK=255.255.255.224
LANBRC=10.63.255.255
LANNET=10.63.255.224
LANPRE=27
LAN_OLSR_ADR=10.63.255.226
LANDHCPSTART=227
LANDHCPNUM=28
WIFIADR=10.63.255.193
WIFIMSK=255.255.255.224
WIFIBRC=10.63.255.223
WIFINET=10.63.255.192
WIFIPRE=27
WIFIVPN=10.63.255.194

Gedanken zu IPv6

Was wir haben

Die Wikipedia weiß schon viel über IPv6

Unser Rootserver in Berlin ist bereits per IPv6 angebunden: http://[2001:bf7:b101:1::19]

Außerdem hat der Förderverein Freie Netzwerke e.V. einen großen IPv6-Block mit der Präfixlänge /32 direkt registriert. Das Netz wird von In-Berlin angekündigt und kann, da unser Server auch bei In-Berlin steht ohne Tunnel zu uns geleitet werden. Jeder Community kann ein Teilnetz daraus mit der Präfixlänge /44 bereitgestellt werden. Unser Präfix lautet 2001:bf7:1930::/44 und wird nach weimarnetz.de geroutet. Der Server ist daher auch unter http://[2001:bf7:1930::]/ erreichbar.

Wie kann die Verteilung aussehen

  • Wegen besserer Lesbarkeit der Adressen und reverseDNS sollten die Präfixlängen durch 4 teilbar sein - Stichwort Nibble Boundary
  • Jeder Router könnte aus dem Netz einen Teil mit der Präfixlänge /56 bekommen - damit haben wir Potential für 4096 Router
    • in diesen Teilpräfix kann unsere Knotennummer kodiert werden.
    • Knoten 5 hätte: 2001:0bf7:1930:500::/56
    • Knoten 52 hätte: 2001:0bf7:1930:3400/56
  • Auf jedem Gerät können dann 16 /60-er oder 256 /64-er Netze eingerichtet werden. /64 ist die kleinste Netzgröße und enthält echt viele IP-Adressen. So könnte hier für jedes Netzwerkgerät (WLAN, WLAN 5GHz, LAN, WAN, VPN) ein eigenes Netz mit vielen Adressen verwendet werden
    • ersten Teilnetz für Knoten 5: 2001:0bf7:1930:0500::/64
    • letztes Teilnetz für Knoten 5: 2001:0bf7:1930:05ff::/64

Aufteilung Knotennummer 1 für VPN-Server

  • Jeder Server bekommt ein /60er Netz aus dem Bereich des ersten Knotens 2001:0bf7:1930:100::/56. Daraus kann er dann 16 Devices mit /64er Adressen befüllen:
    • Server vpn1: 2001:0bf7:1930:100::/60
      • eth0 bekommt 2001:0bf7:1930:101::/64
      • wnvpn 2001:0bf7:1930:01f0/64
    • Server vpn2: 2001:0bf7:1930:110::/60
      • eth0 bekommt 2001:0bf7:1930:111::/64
      • wnvpn 2001:0bf7:1930:01f1/64
    • ...
    • Server vpn15: 2001:0bf7:1930:01e0/60
      • eth0 bekommt 2001:0bf7:1930:1e1::/64
      • wnvpn 2001:0bf7:1930:01fe/64
    • Für das VPN zwischen den Servern ist das Netz 2001:0bf7:1930:01f0/60 gedacht. Jeder Server hat ein tinc-interface namens wnvpn

Vor- und Nachteile