Ab LCOS 11.00 wird ein neues vendorspecific RADIUS-Attribut LCS-DHCPv6-Option mit der Nummer 35 unter dem Vendor LCS (2356) unterstützt. Es ist ein RADUS-Text-Attribut, das nur in Access-Accept-Nachrichten (d. h. den Antwortpaketen des RADIUS-Servers für die RADIUS-Authorization) vorkommt und mehrfach in derselben Nachricht vorkommen darf. Damit das LCOS diese Option verarbeiten kann, muss der Text die unten angegebene Form haben.
Das Attribut kann für die RADIUS-Authorization benutzt werden, wenn das Gerät RADIUS-Client und entweder PPPoE-Server oder IKEv2-Responder (VPN) ist. Jede Instanz des Attributs definiert eine DHCPv6-Option, die der DHCPv6-Server im LCOS an den DHCPv6-Client auf der PPPoE- bzw. VPN-Verbindung schicken soll, sofern der DHCPv6-Client in seiner Option-Request-Option danach fragt. Das Feature erfüllt damit denselben Zweck wie die statische Tabelle [2.70.3.1.8].
Der Attribut-Text muss aus den drei Teilen Option-Number, Option-Type und Option-Value bestehen, die durch je ein Komma, aber ohne Leerzeichen oder anderen Trennzeichen voneinander getrennt sind. Der Option-Value darf zwar leer sein, das zweite Komma ist dann aber trotzdem erforderlich. Die drei Teile orientieren sich an den gleichnamigen Spalten der o. g. Setup-Tabelle sind wie folgt formatiert:
- Option-Number gibt die Options-Nummer (den DHCPv6-Option-Code) als Zahl an, und zwar entweder dezimal oder oktal mit "0"-Präfix oder hexadezimal mit "0x"-Präfix. Die Zahl muss im Bereich von 1 bis 65535 liegen.
- Option-Type ist entweder eine Zahl im Bereich von 0 bis 6, die ansonsten wie Option-Number kodiert ist, oder einer der Strings "Integer8", "Integer16", "Integer32", "IPv6-Addresses", "Domain-List", "String" oder "Hexdump", wobei die hier angegebene Groß-/Kleinschreibung beachtet werden muss.
- Option-Value ist genauso formatiert wie die Option-Value-Spalte der o. g. Setup-Tabelle, wobei das Format hier genau wie dort vom Option-Type
abhängt. Hier zitiere ich die Beschreibung aus der aktuellen Menüreferenz, die im RADIUS-Attribut gleichermaßen gilt. Alle Typen außer String sind
komma- und leerzeichenseparierte Listen, wobei leere Listenelemente ignoriert werden und auch eine leere Liste erlaubt ist und zu einer Option der
Länge 0 führt.
- "Integer8" oder Zahl 0: 8-Bit Integer von -128 bis 127 wahlweise dezimal, oktal mit Präfix "0" oder hexadezimal mit Präfix "0x".
- "Integer16" oder Zahl 1: 16-Bit Integer von -32768 bis 32767 wahlweise dezimal, oktal mit Präfix "0" oder hexadezimal mit Präfix "0x".
- "Integer32" oder Zahl 2: 32-Bit Integer von -2147483648 bis 2147483647 wahlweise dezimal, oktal mit Präfix "0" oder hexadezimal mit Präfix "0x".
- "IPv6-Addresses" oder Zahl 3: IPv6-Adressen ohne Beachtung der Groß-/Kleinschreibung in allen zulässigen Darstellungen inklusive der gemischten IPv4-/IPv6-Darstellung von Mapped-V4-Adressen wie z. B. ::ffff:1.2.3.4.
- "Domain-List" oder Zahl 4: Domain-Namen in normaler Schreibweise als Strings, die durch Punkte in Labels unterteilt sind, die jeweils höchstens 63 Zeichen lang sind. Leere Labels sind zulässig, werden aber ignoriert. Die DHCPv6-Option wird als Folge von Labels mit führendem Längenbyte kodiert, so wie es RFC 3315, Kapitel 8 bzw. RFC 1035, Kapitel 3.1 vorsehen. Eine Domain endet grundsätzlich mit dem leeren Label 0.
- "String" oder Zahl 5: Die Zeichen werden als String übernommen. Der String beginnt unmittelbar hinter dem zweiten Komma und kann auch weitere Kommata, Leerzeichen oder Anführungszeichen enthalten, die dann als Teil des String interpretiert werden. Sollte hinter dem zweiten Komma erst noch ein Leerzeichen folgen, dann gehört auch dieses Leerzeichen bereits zum String.
- "Hexdump" oder Zahl 6: Erwartet in jedem Block nur Hexziffern ohne "0x"-Präfix und füllt jeden Block ggf. mit einer führenden 0 zu gerader Länge auf. Der Block wird als Bigendian übernommen.
Die Option-Number muss eindeutig sein, d. h. in der RADIUS-Antwort dürfen nicht mehrere LCS-DHCPv6-Option-Attribute mit derselben Option-Number vorkommen, so wie es im DHCPv6 ja auch nicht mehrere Optionen mit gleichem Option-Code in derselben Nachricht geben darf.
2356,0,0,-128,255,+13,-0200,0377,+0xD,0xff,-0x80,0X12 200,1,0,-32768,65535,+13,-0100000,0177777,+0xD,0xffff,-0x8000,0X12d 201,02,0,-2147483648,4294967295,+13,-020000000000,037777777777,+0xDEF,0xffffffff,-0x80000000,0X12d 202,03,::,2001:db87::beef,2001:004:00:0:56::,::ffff:192.168.0.4,fe80::02:a0:57:ff:fe:12:45:82,FE80::BDE 203,0x4,www.lancom.de,fully.qualified.,ThisIsAVeryLongLabelNamelyExactly63CharactersLongWhichIsMaximum.de 204, 5, alskdflaweiurqtow34875qor87aef<ynbxcv 4365o 7q64@!$&(/==%=?( 205,6,0123456789,abcdef,ABCDEF,8,123 0x2356,Integer8,,,,0, -128, 255, +13, -0200, 0377, +0xD, 0xff, -0x80, 0X12 0x200,Integer16,,,,0, -32768, 65535, +13, -0100000, 0177777, +0xD, 0xffff, -0x8000, 0X12d 0x201,Integer32,,,,0, -2147483648,4294967295,+13,-020000000000,037777777777,+0xDEF,0xffffffff,-0x80000000,0X12d 0x202,IPv6-Addresses,,,,::,2001:db87::beef,2001:004:00:0:56::,::ffff:192.168.0.4,fe80::02:a0:57:ff:fe:12:45:82,FE80::BDE 0x203,Domain-List,,,, www.lancom.de, fully.qualified., ThisIsAVeryLongLabelNamelyExactly63Characters.de 0x204,String,,,, alskdflaweiurqtow34875qor87aef<ynbxcv 4365o 7q64@!$&(/==%=?( 0x205,Hexdump,,,, 0123456789, abcdef, ABCDEF, 8, 123
666,666,666 777,Integer64,12345 65536,0,1,2,3 144,4