Natürlich haben die Entwickler kein Interesse - wie so viele Jahre zuvor auch nicht ..  
 
Was das Problem angeht (ich kanns bei mir nicht direkt testen) hab ich da vielleicht eine Vermutung.
Die IPv4 besteht ja aus einer Zeichenfolge (glaub auch nur Zahlen) wie diese (Lokalhost):
   |          |  | PHP-Quelltext        127.0.0.1              |  | 
IPv6 sieht so aus (wieder Lokalhost):
   |          |  | PHP-Quelltext        0000:0000:0000:0000:0000:0000:0000:0001              |  | 
Das PHPKIT speichert für jeden User die aktuelle Session, also den Aufenhalt - egal ob eingelogt oder nur als Gast.
Darunter halt auch die IP. Und genau da liegt wahrscheinlich das Problem. Den der Speichersatz für die IP beträgt 15 Zeichen. Ausreichend für die alte IPv4. Die IPv6 aber hat (oder kann bis zu?) 39 Zeichen ( 
siehe hier ).
Deswegen vermute ich, wenn der Zeichensatz in der DB abgeändert wird sollte es keine Probleme mit den Login geben.
Da nicht jeder direkten Zugang zur DB hat hier mal ein schnelles Script dafür:
- pkinc/public/DBUpdateIPv6.php
 - Erstelle o.g. Datei (vorhandene .php-Datei kopieren und die kopierte Datei wie oben umbenennen) und füge folgenden Code ein:
    |          |                | 1 2
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
 100
 101
 102
 103
 104
 105
 106
 107
 108
 109
 110
 111
 112
 113
 114
 115
 116
 117
 118
 119
 120
 121
 122
 123
 124
 125
 126
 127
 128
 129
 130
 131
 132
 133
 134
 135
 136
 137
 138
 139
 140
 141
 142
 143
 144
 145
 146
 147
 148
 149
 150
 151
 152
 
 |  | PHP-Quelltext        <?PHPIf (!Defined('pkFRONTEND') || pkFRONTEND!='public')
 {
 Die('Direct access to this location is not permitted.');
 }
 
 
 If (Intval(pkGetUservalue('id'))!==1)
 {
 pkEvent('page_not_found');
 return;
 }
 
 
 If (IsSet($_POST) && !Empty($_POST))
 {
 # SQL Command
 $SQLPublic
 ="
 SELECT
 DATA_TYPE,
 CHARACTER_MAXIMUM_LENGTH
 FROM
 INFORMATION_SCHEMA.COLUMNS
 WHERE
 table_name = '".pkSQLTAB_SESSION."'
 AND
 column_name = 'session_ip'
 ";
 $SQLAdmin
 ="
 SELECT
 DATA_TYPE,
 CHARACTER_MAXIMUM_LENGTH
 FROM
 INFORMATION_SCHEMA.COLUMNS
 WHERE
 table_name = '".pkSQLTAB_ADMINSESSION."'
 AND
 column_name = 'session_ip'
 ";
 # SQL Query
 $SQLPublic=$SQL->Fetch_Row($SQL->Query($SQLPublic));
 $SQLAdmin =$SQL->Fetch_Row($SQL->Query($SQLAdmin));
 
 
 # Var
 $Public['Type']         =Trim  ($SQLPublic[0]);
 $Public['CharLength']   =Intval($SQLPublic[1]);
 $Public['Update']       =0;
 
 $Admin['Type']          =Trim  ($SQLAdmin[0]);
 $Admin['CharLength']    =Intval($SQLAdmin[1]);
 $Admin['Update']        =0;
 
 
 # Update to IPv6
 If (IsSet($_POST['IPv6']))
 {
 # Check
 If ($Public['CharLength']===15)
 {
 $Public['Update']
 =
 $SQL->Query("ALTER TABLE `".pkSQLTAB_SESSION."` CHANGE `session_ip` `session_ip` VARCHAR(39)")
 ? TRUE
 : FALSE
 ;
 }
 If ($Admin['CharLength']===15)
 {
 $Admin['Update']
 =
 $SQL->Query("ALTER TABLE `".pkSQLTAB_ADMINSESSION."` CHANGE `session_ip` `session_ip` VARCHAR(39)")
 ? TRUE
 : FALSE
 ;
 }
 }
 
 
 # Update to IPv4
 If (IsSet($_POST['IPv4']))
 {
 # Check
 If ($Public['CharLength']===39)
 {
 $Public['Update']
 =
 $SQL->Query("ALTER TABLE `".pkSQLTAB_SESSION."` CHANGE `session_ip` `session_ip` VARCHAR(15)")
 ? TRUE
 : FALSE
 ;
 }
 If ($Admin['CharLength']===39)
 {
 $Admin['Update']
 =
 $SQL->Query("ALTER TABLE `".pkSQLTAB_ADMINSESSION."` CHANGE `session_ip` `session_ip` VARCHAR(15)")
 ? TRUE
 : FALSE
 ;
 }
 }
 }
 ?>
 <Table Class="standard" Border="0" CellSpacing="1" CellPadding="4" Width="100%">
 <TR>
 <TD Class="heads">PHPKIT ( 1.6.4. bis 1.6.6.) » Update / Fix » IPv4 auf IPv6</TD>
 </TR>
 <TR>
 <TD Class="standard" align="center">
 <Form Action="?path=<?PHP Echo $path; ?>" Method="Post">
 <Input Type="Submit" Name="IPv6" Value="Auf IPv6 updaten" />
 <Input Type="Submit" Name="IPv4" Value="Auf IPv4 zurück-updaten" />
 </Form>
 <BR />
 <BR />
 
 <?PHP If (IsSet($_POST) && !Empty($_POST)): ?>
 <Span Style="Font-Weight: Bold;">Update auf <?PHP Echo IsSet($_POST['IPv6']) ? 'IPv6' : 'IPv4'; ?>:</Span>
 <BR />
 <BR />
 <?PHP EndIf; ?>
 
 <?PHP If (IsSet($Public['Update'])): ?>
 <?PHP If ($Public['Update']===TRUE): ?>
 <Span Style="Color: Green;">Die Tabelle "<?PHP Echo pkSQLTAB_SESSION; ?>" wurde erfolgreich abgeändert.</Span>
 <?PHP ElseIf ($Public['Update']===FALSE): ?>
 <Span Style="Color: Red;">Die Tabelle "<?PHP Echo pkSQLTAB_SESSION; ?>" wurde nicht abgeändert.</Span>
 <BR />
 <?PHP $SQL->error(); ?>
 <?PHP Else: ?>
 <Span Style="">Die Tabelle "<?PHP Echo pkSQLTAB_SESSION; ?>" wurde bereits abgeändert.</Span>
 <?PHP EndIf; ?>
 <BR />
 <?PHP EndIf; ?>
 
 <?PHP If (IsSet($Admin['Update'])): ?>
 <?PHP If ($Admin['Update']===TRUE): ?>
 <Span Style="Color: Green;">Die Tabelle "<?PHP Echo pkSQLTAB_ADMINSESSION; ?>" wurde erfolgreich abgeändert.</Span>
 <?PHP ElseIf ($Admin['Update']===FALSE): ?>
 <Span Style="Color: Red;">Die Tabelle "<?PHP Echo pkSQLTAB_ADMINSESSION; ?>" wurde nicht abgeändert.</Span>
 <BR />
 <?PHP $SQL->error(); ?>
 <?PHP Else: ?>
 <Span Style="">Die Tabelle "<?PHP Echo pkSQLTAB_ADMINSESSION; ?>" wurde bereits abgeändert.</Span>
 <?PHP EndIf; ?>
 <?PHP EndIf; ?>
 </TD>
 </TR>
 </Table>
 |  |  
    |  |  
 
 
O.g. Datei wie oben beschrieben in den o.g. Ordner und wie folgt aufrufen:
   |          |  | PHP-Quelltext        http://www.DeineSeite.de/?path=DBUpdateIPv6              |  | 
Es erscheint dann ein kleines Menu zum Updaten der Datenbank. Genauer gesagt der Tabellen 
_adminsession und 
_session, dort jeweils die Spalten 
session_ip auf die nötige Zeichenlänge 39. Man kann dies auch rückgängig machen. In diesen Fall die Zeichenlänge 15.