Christoph 'Mehdorn' Weber <
spam...@das-mehdorn.de>:
> Hallo!
>
> * Thomas Hochstein <
t...@inter.net>:
>
>> 1) alle bekannten Geräte auch eine statische IPv6-Adresse erhalten
>
> Zumindest bei Linux basiert das Suffix für SLAAC typischerweise
> auf der MAC-Adresse und ist somit automatisch statisch, wenn man
> es nicht umschaltet. Und Windows kann man so einstellen. Bisher
> genügt mir das so.
Das ist bei allen Systemen, die SLAAC Standardkonform umsetzen so.
Sogar bei Android hat Google das noch nicht kaputt gemacht.
Das, worauf du zu 99% ansprichst, nennt sich "Privacy Extensions" und
hat mit Anonymitaet des Users nichts zu tun. Das garantiert nur die
Anonymitaet des Endgeraetes selbst (die Privatsphaere des Rechners
wird geschuetzt, nicht die des Anwenders davor!). Dabei wird der
Hostpart per SLAAC nicht aus der modifizierten EUID-64 der MAC Adresse
des Interfaces gebildet, sondern als Zufallszahl erzeugt.
Die uebrigen 1% heissen DAD (Duplicate Address Detection) und sind
ebenfalls Standard. Sie verhindern das z.B. zwei geklonte VMs im
selben VLAN die selbe IP-Adresse nutzen. Eine von beiden wuerfelt sich
wegen DAD eine neue zufaellige Adresse aus. DAD ist bei PE Pflicht,
schliesslich sind die Zufallszahlengeneratoren in vielen Endgeraeten
nicht gut genug.
>> 2) die Vorwärts- und Rückwärtsauflösung für bekannte Geräte auch für
>> IPv6 funktioniert
>
> Daran arbeite ich noch. Im Heimnetz habe ich kürzlich etwas mit
Ohne jedem dahergelaufenen Client DNS-Updates zu erlauben (was
ausserhalb einer isolierten Client-Zone eine Ganz Besonders Dumme
Idee[tm] ist), gilt folgendes:
Das geht mit SLLAC nur bedingt (wenn man eine entsprechende CMDB oder
Asset-DB mit allen erfassten MAC-Adressen hat, die entsprechend
mit dem IPAM System (bzw. DHCP und DNS Server) gekoppelt ist.
Bei PE geht das prinzipiell gar nicht.
Nur bei Infrastrukturseitiger Adressvergabe (M+O Flag im RA, DHCPv6
vergibt die Adressen) geht das ohne DNS-UPdate durch den Client.
Voll unterstuetzt implementiert ist das mit dem DNS-Update uebrigens
nur in Windows. Bei allen anderen OSen musst du das derzeit noch
aussen herum stricken, weil der Kernel selbst (der die Adresswuerfelei
macht) keine DNS-Updates verschickt.
> dnsmasq experimentiert und generiere einfach neben den statischen
> Einträgen für DHCPv4 die Namen zu den MAC-basierten SLAAC-Adressen
> gleich mit (per Script, das ich auf Anfrage auch herausgeben
> würde; veröffentlichen mag ich es noch nicht, da es noch deutliche
> Mängel hat).
Also die erste Bedingung ist erfuellt. (eine CMDB kann auch einfach
nur ein Textfile mit allen Endgeraeten und ihren relevanten
Konfigurationsparametern (sprich: MAC-Adresse) sein ;)
Solange niemand PE nutzt, geht das.
Verhindern kannst du PE nicht solange du SLAAC erlaubst.
>> 3) alle Geräte meinen lokalen DNS-Server als DNS verwenden.
>
> Damit habe ich mich noch nicht groß beschäftigt. Man kann ihn im
> RA mitgeben, aber das hat sich noch nicht sehr verbreitet.
Per experimenteller Erweiterung die bisher niemand ausser Microsoft
implementiert hat? Tolle Wurst.
Dafuer gibts DHCP. Das ist quasi das, wofuer DHCP erfunden wurde.
Du sollst dein Steak ja nicht mit dem Loeffel schneiden, egal wie
scharf du die Loeffelkante gewetzt hast, dafuer nimmt man ein Messer.
> Momentan posaune ich ihn auch mit Avahi durch die Gegend, und die
> Clients, die avahi-dnsconfd haben, lernen ihn ganz nebenbei.
mDNS und SRV-Records. Das ist die selbst-lern-Alternative.
> Aber da bisher alle Hosts noch IPv4 haben, verteile ich den
> Nameserver derzeit (auch) einfach darüber.
DA es um inhaerernt IP-Protokollunabhaengige Dynammische Hosts
Configuration Parameter ist DHCP - egal ueber welches Transportmedium
- natuerlich auch immer genau die eine richtige Wahl dafuer.
> Eigentlich hänge ich mich aber in den Thread, weil ich wissen
> möchte, wie ihr das mit Privacy Extensions macht.
Ich verbiete diesen Dummfug*. Meine Rechner brauchen keine Anonymitaet
in meinem Netz. Ich sorge wenn fuer Anonymitaet der *User*. Und zwar
dort, wo das angebracht ist.
RA: M Flag. Verhindert SLAAC und sperrt ausserdem zu geltenden
Internet-Standards absichtlich vom Hersteller inkompatibel gemachte
Android-Devices aus. Ein durchaus angenehmer Nebeneffekt (YMMV).
Ausserdem muss ich mein Cisco-OnePK Projekt mal wieder Aufnehmen:
"Transparent De-Psydonymization of Privacy-Extension IPv6 Endpoint
Addresses inbound on Access Ports to Access Switches via dynamic NAT66"
Das als Plugin-in fuer die Switch-Software von Access-Switches raeumt
systematisch mit PE Auf und NATtet alle zufalls-Hostparts auf die
jeweilige aus der MAC-Adresse gebildete "richtige" EUI-64 Adresse.
Und auch wenn mein anvisierter Veroeffentlichungstermin nach dem
31 Maerz folgt, will ich dass das Teil voll funktionsfaehig ist.
Muahahahahaha.
> Im Prinzip sind die recht interessant, weil die Gegenseite dann
> nicht sieht, wer genau aus dem Subnetz anfragt. Statistiken über
Im Subnetz selbst sieht die gegenstelle ganz genau wer das ist.
Der Trick mit der Privatsphaere fuer das Endgeraet funktioniert
nur in gerouteten Netzen, wo im Ethernet-Header nicht die MAC-Adresse
des Endgeraets steht.
> Nutzungsgewohnheiten etc. werden erschwert. Wenn man da eine
Man kann sie nicht mehr direkt auf Endgerate herunterbrechen.
Die Dienste dieser Welt sehen also nicht mehr /anhand der IP-Adresse/
mit welchem Gereat Herr W. aus I. genau die Bauanleitung zum
Freifunkgeraet heruntergeladen hat. Sie muessen diese Information dann
wieder - wie bei IPv4 wegen ueberall NAT auch - aus dem
Applikationsprotokoll (HTTP header) ziehen.
IPv6 Privacy Extensions bieten *dir* als *Anwender* keinen Schutz vor
Ueberwachung. Weil in Soho-Netzen der Anwender ueber seinen Prefix
identifiziert wird, nicht ueber die Hostadresse.
Und ob du die Bombenbauanleitung oder die Sturmgewehrbestellung jetzt
von dienem PC, deinem Tablet oder deinem Smartphone im WLAN abgesetzt
hast, interessiert das SEK das gerade Zeitgleich durch deine Haustuere
und dein Balkonfenster bricht nicht die Bohne.
Das Endgeraet wird durch PE verschleihert, nicht der User.
Es ist ein ganz bestimmter Spezialfall, wo die Identitaet des
Endgerates bijektiv mit der Identitaet eines Users verbunden ist.
Diesen Spezialfall findest du ausserhalb eines Uni-Campus oder eines
Enterprise-Netzes jedoch nicht.
Zuviele Leute hoeren nach dem lesen des ersten Wort dieses Begriffs
auf zu denken und bekommen so voellig falsche Vorstellungen. Auch
Leute bei Medien, die ihre falsche Vorstellung dann fleissig verbreiten.
> korrekte Auflösung implementiert (wie auch immer), die wieder
> eindeutig auf den Host zeigt, ist der Privacy-Effekt natürlich
> weg. Will man nicht.
Host != User.
Bei IPv6 und Privathaushalten gilt vielmehr:
User == Prefix.
> Alternativ könnte man z.B. bei Bind (vermutlich) mit "Generate"
> arbeiten und einfach Dummy-Namen fürs gesamte Subnetz erzeugen.
Du muesstest eine halbe Trillionen NAmen generieren. Soviel RAM hat
dein DNS-SErver nicht, um so eine Zone zu laden.
> Und bestimmt gibt es auch eine Möglichkeit, die nur herauszugeben,
> wenn gerade keine bessere Adresse existiert, die z.B. fest
> eingetragen oder per DNS-Update gelernt wurde. Allerdings bin ich
> mir nicht sicher, wie die >= 2^64 Adressen auf die Performanz
> wirken.
Der RAM Verbrauch toetet dich lange vor der Performance.
> Oder einfach weglassen? Wobei ich da befürchte, daß manche
> Services eingeschränkt sind, denn z.B. bei Spamfiltern bekommt man
> gern mal einen höheren Score, wenn die Auflösung nicht möglich ist
> oder nicht paßt.
Ja. Deswegen muss man - wenn man PE zulaesst aber trotzdem diesen
Service bereitstellen will - zwangslaeufig Dynamische DNS-Updates
*vom* Client erlauben. D.h. jeder Client darf Vorwaerts- und
Rueckwaertszonen beschreiben. Eine BEsonders Dumme IDee[tm] wenn man
dafuer keine isolierte Clent-Zone hat.
Fuer Demonstrationszwecke habe ich immer eine gebridgte VM auf der
Platte liegen deren Hostname zufaelligerweise "proxy" lautet.
(das ist idR. ohne bleibende Schaeden demonstrierbar)
Spaetestens der erste Gast, dessen Hostname genauso lautet wie der des
Windows Domaincontrollers, wird dafuer sorgen dass sich jeder ueber
eigene client-Zonen Gedanken macht. Waehrend er das AD wieder
zusammenflickt.
Also: "clients.deine.domain" als DynDNS-zone wo jeder Client (auth per
Subnet
o.ae.) selbst seinen Namen mit IPv6-IP registrieren darf, und
schon geht das mit NAmen-zu-IP auch mit SLAAC und sogar PE.
> Oder richtet man mit iproute2 und ip6tables für spezielle
> Ziel-Ports etc. dann Sonderwürste ein, indem man das auf eine
> Routing-Tabelle mit fixer Quell-Adresse verschiebt? Aber IIRC
> kann man da jeweils nur komplette Adressen angeben, muß das also
> irgendwie verscripten, damit Präfix-Änderungen nachgezogen werden.
Auch ein schoen haesslicher Hack.
> Irgendwie fühlt sich das alles häßlich an, weshalb ich Privacy
> Extensions momentan auf bestimmten Hosts noch meide, obwohl ich
> sie allgemein gern nutzen würde.
Wozu? Nein, das ist eine durchaus ernst gemeinte Frage. Was willst du
damit /genau/ erreichen?