IPv6-Kompatibilität von phpBB2
Forumsregeln
phpBB 2.0 hat das Ende seiner Lebenszeit überschritten
phpBB 2.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 2.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf phpBB 3.1, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
phpBB 2.0 hat das Ende seiner Lebenszeit überschritten
phpBB 2.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 2.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf phpBB 3.1, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
-
- Mitglied
- Beiträge: 3
- Registriert: 09.06.2011 19:36
IPv6-Kompatibilität von phpBB2
Hallo,
ich habe hier ein altes phpBB2, das leider aus diversen Gründen (starke Verzahnung mit einem vor Jahren selbst entwickelten "CMS" und Community-Funktionen) nicht auf Version 3 upgedated werden kann. Das Sicherheitsrisiko ist bekannt.
Im Zuge des gestrigen World IPv6 Day ist aufgefallen, das IPv6-Adressen von Beiträgen nicht richtig angezeigt werden, der Rest schien soweit zu funktionieren.
In der Datenbank habe ich die Länge der VARCHAR-Felder, in denen die IP-Adressen encoded gespeichert werden, bereits erhöht.
Augenscheinlich sind encode_ip() und decode_ip() in der includes/fuctions.php dafür verantwortlich - doch leider fehlt mir das Fachwissen, um dort die nötigen Änderungen vorzunehmen.
Hat hier jemand evtl. schon die nötigen Anpassungen gemacht und kann diese zur Verfügung stellen oder "auf die Schnelle" eine passende Lösung für den Dual-Stack-Betrieb erstellen?
Wäre echt super!
Vielen Dank,
Andreas
ich habe hier ein altes phpBB2, das leider aus diversen Gründen (starke Verzahnung mit einem vor Jahren selbst entwickelten "CMS" und Community-Funktionen) nicht auf Version 3 upgedated werden kann. Das Sicherheitsrisiko ist bekannt.
Im Zuge des gestrigen World IPv6 Day ist aufgefallen, das IPv6-Adressen von Beiträgen nicht richtig angezeigt werden, der Rest schien soweit zu funktionieren.
In der Datenbank habe ich die Länge der VARCHAR-Felder, in denen die IP-Adressen encoded gespeichert werden, bereits erhöht.
Augenscheinlich sind encode_ip() und decode_ip() in der includes/fuctions.php dafür verantwortlich - doch leider fehlt mir das Fachwissen, um dort die nötigen Änderungen vorzunehmen.
Hat hier jemand evtl. schon die nötigen Anpassungen gemacht und kann diese zur Verfügung stellen oder "auf die Schnelle" eine passende Lösung für den Dual-Stack-Betrieb erstellen?
Wäre echt super!
Vielen Dank,
Andreas
-
- Mitglied
- Beiträge: 3
- Registriert: 09.06.2011 19:36
Re: IPv6-Kompatibilität von phpBB2
Gelöst:
Code: Alles auswählen
function encode_ip($dotquad_ip)
{
if (substr_count($dotquad_ip,":") > 0 && substr_count($dotquad_ip,".") == 0){
// ipv6 - "::1" => "0000000000000000000000000001"(hex)
// unconpress - "::1" => "0:0:0:0:0:0:0:1"
if(strstr($dotquad_ip,"::" )){
$e = explode(":", $dotquad_ip);
$s = 8-sizeof($e)+1;
foreach($e as $key=>$val){
if ($val == ""){
for($i==0;$i<=$s;$i++)
$newip[] = 0;
} else {
$newip[] = $val;
}
}
$dotquad_ip = implode(":", $newip);
}
$ip_sep = explode(':', $dotquad_ip);
return sprintf('%04x%04x%04x%04x%04x%04x%04x%04x', hexdec($ip_sep[0]), hexdec($ip_sep[1]), hexdec($ip_sep[2]), hexdec($ip_sep[3]),hexdec($ip_sep[4]), hexdec($ip_sep[5]), hexdec($ip_sep[6]), hexdec($ip_sep[7]));
} else {
// ipv4 - "127.0.0.1" => "7F000001"
$ip_sep = explode('.', $dotquad_ip);
return sprintf('%02x%02x%02x%02x', $ip_sep[0], $ip_sep[1], $ip_sep[2], $ip_sep[3]);
}
}
function decode_ip($int_ip)
{
if ( strlen($int_ip) == 32){
// ipv6 - "..." => ""
$hexipbang = chunk_split($int_ip, 4, ':');
/* $hexipbang = explode(':', chunk_split($int_ip, 4, ':'));
//compress
if(!strstr($hexipbang,"::" )){
$e = explode(":", $hexipbang);
$zeros = array(0);
$result = array_intersect ($e, $zeros );
if (sizeof($result) >= 6){
if ($e[0]==0) {$newip[] = "";}
foreach($e as $key=>$val){
if ($val !=="0"){
$newip[] = $val;
}
}
$hexipbang = implode("::", $newip);
}
}else{
$hexipbang = implode(":", $hexipbang);
}
*/ return $hexipbang;
} else {
// ipv4 - "7F000001" => "127.0.0.1"
$hexipbang = explode('.', chunk_split($int_ip, 2, '.'));
return hexdec($hexipbang[0]). '.' . hexdec($hexipbang[1]) . '.' . hexdec($hexipbang[2]) . '.' . hexdec($hexipbang[3]);
}
}
- Dungeonwatcher
- Mitglied
- Beiträge: 635
- Registriert: 11.07.2004 10:04
- Wohnort: Berlin
Re: IPv6-Kompatibilität von phpBB2
Moin!
Großes Dankeschön.
Bye
Großes Dankeschön.
Bye
Re: IPv6-Kompatibilität von phpBB2
Hi Leute.
Und in welcher Datei muss ichdiese Änderung machen, bzw. an welcher Stelle?
Wenn ich noch andere Mods verwende, welche mit IP Adressen arbeiten, muss ich dann in den entsprechenden Dateien auch nach den IP-Funktionen suchen, oder reicht die Änderung von oben aus?
Wie ist das da so im allgemeinen?
THX
MfG
MDuss
Und in welcher Datei muss ichdiese Änderung machen, bzw. an welcher Stelle?
Wenn ich noch andere Mods verwende, welche mit IP Adressen arbeiten, muss ich dann in den entsprechenden Dateien auch nach den IP-Funktionen suchen, oder reicht die Änderung von oben aus?
Wie ist das da so im allgemeinen?
THX
MfG
MDuss
Re: IPv6-Kompatibilität von phpBB2
Steht alles im ersten Beitrag von Andreas0815, Dateiname und die zu ändernden Funktionen.MDuss hat geschrieben:Und in welcher Datei muss ichdiese Änderung machen, bzw. an welcher Stelle?
Nicht, wenn diese Mods auf die Funktionen encode_ip() und decode_ip() zugreifen. Wenn nicht, dann sind wahrscheinlich Änderungen nötig.MDuss hat geschrieben:Wenn ich noch andere Mods verwende, welche mit IP Adressen arbeiten, muss ich dann in den entsprechenden Dateien auch nach den IP-Funktionen suchen, oder reicht die Änderung von oben aus?
Re: IPv6-Kompatibilität von phpBB2
Hi wolfman24.
Danke für die Nachricht.
Da habe ich wohl vor lauter Bäume den Wald nicht mehr gesehen .
Aber noch eine andere Frage.
Im Eröffnungspost steht:
Bei mir sind die Felder, welche die IP Speichern vom Typ char(8)
Auf welchen Wert muss man diese Felder erhöhen, damit das ganze richtig läuft?
MfG
MDuss
Danke für die Nachricht.
Da habe ich wohl vor lauter Bäume den Wald nicht mehr gesehen .
Aber noch eine andere Frage.
Im Eröffnungspost steht:
Auf was kann oder soll man die Feldlänge erhöhen?In der Datenbank habe ich die Länge der VARCHAR-Felder, in denen die IP-Adressen encoded gespeichert werden, bereits erhöht.
Bei mir sind die Felder, welche die IP Speichern vom Typ char(8)
Auf welchen Wert muss man diese Felder erhöhen, damit das ganze richtig läuft?
MfG
MDuss
Re: IPv6-Kompatibilität von phpBB2
Soweit, wie eine IPv6 maximal groß sein kann. Setze sie auf VARCHAR(32). Dadurch wird kein Platz verschwendet, wenn IPv4 genutzt wird.
@Andreas0815: Danke für den Codeschnipsel. Hast du die Kürzungsfunktion im decode-Teil auskommentiert, weil du sie für sinnlos hältst, oder weil sie nicht funktioniert?
@Andreas0815: Danke für den Codeschnipsel. Hast du die Kürzungsfunktion im decode-Teil auskommentiert, weil du sie für sinnlos hältst, oder weil sie nicht funktioniert?
Re: IPv6-Kompatibilität von phpBB2
Danke für die Nachricht Bachsau.
MfG
MDuss
MfG
MDuss
Re: IPv6-Kompatibilität von phpBB2
In deinen Fall hatte sich das denke schon erledigt, oder? Der Post ist ja schon etwas älter.
Re: IPv6-Kompatibilität von phpBB2
Meine Frage war schon etwas älter, dass stimmt, aber in der zwischenzeit und durch einen Wechsel des Servers hatte ich das hier aus den Augen verloren und sogar schon vergessen .
MfG
MDuss
MfG
MDuss