IPv6 PMX & SMF

Begonnen von wob, 09 August 2010, 08:41:26

⏪ vorheriges - nächstes ⏩

0 Mitglieder und 1 Gast betrachten dieses Thema.

wob

Moin Moin in die Runde,

wir haben am WE unsere Server auf IPv6 umgestellt, nun haben wir ein Prob mit PMX und SMF.

1. In Securelog werden allen IP`s mit 0.0.0.0 gespeichert.
2. In Forumsbeitragen von Usern oder Admins etc. werden die IP`s nur noch als 0.0.0.0 angezeigt.

Kann ich im PMX irgendwas umstellen das es erkannt wird, oder ist SMF und PMX nicht IPv6 tauglich.


Würde mich über eure Hilfe freuen.

Gruß

Rene
Ideen sind immer gut, nur diese Idee`n umsetzen ist eine andere frage :-)

Andi

Moin,

weder pragmaMx noch das smf und die coppermine, sind auf IPv6 Adressen vorbereitet.

Auf die Schnelle habe ich mal etwas für pragmaMx gebastelt.
Ob sich das auch auf die SMF-bridge positiv auswirkt kann ich i.M. noch nicht sagen, weil da auch noch zusätzliche Filter eingebaut sind...

Editiere die /includes/mx_baseconfig.php, suche folgende Stelle:
   /* remote Adresse "cleanen" */
   if (!preg_match('#^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}$#', $_SERVER['REMOTE_ADDR'])) {
       $_SERVER['REMOTE_ADDR'] = '0.0.0.0';
   }


ersetze das Ganz durch folgendes:

   /* remote Adresse "cleanen" */
   switch (true) {
       case function_exists('filter_var'):
           $_SERVER['REMOTE_ADDR'] = filter_var($_SERVER['REMOTE_ADDR'], FILTER_VALIDATE_IP);
           break;
       case preg_match('#^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}(:\d{1,5})?$#', $_SERVER['REMOTE_ADDR']):
       case preg_match('#^(((?=(?>.*?::)(?!.*::)))(::)?|([\dA-F]{1,4}(\2::|:(?!$)|$)|\2))(?4){5}((?4){2}|(25[0-5]|(2[0-4]|1\d|[1-9])?\d)(\.(?7)){3})\z#i', $_SERVER['REMOTE_ADDR']):
           break;
       default:
           $_SERVER['REMOTE_ADDR'] = '';
   }
   if (!$_SERVER['REMOTE_ADDR'] || $_SERVER['REMOTE_ADDR'] == '::') {
       $_SERVER['REMOTE_ADDR'] = '0.0.0.0';
   }


Rückmeldung insbesondere wegen dem SMF wäre nett.  ;)


Der Code gilt für pragmaMx 0.1.11 mit SP1, sollte so aber auch in älteren Versionen funktionieren.
schön´s Grüssle, Andi

wob

Hallo Andi,

danke für die schnelle Hilfe, so nun werden die IP`s in der Systemüberwachung so angezeigt

::ffff:91.65.15


und im Forum mit unknown angezeigt, liegt da jetzt ein Fehler im Script ?

ach ja wir nutzen bisher noch die     pragmaMx 0.1.10, 1.30.2.13/2008-02-02 & SMF:1.1.11


Gruß

Rene
Ideen sind immer gut, nur diese Idee`n umsetzen ist eine andere frage :-)

Andi

Hoi :)

feinerle.
Denke die Anzeige in der Systemüberwachung ist jetzt die richtige IP-Adresse, oder?


Ansonsten, wie geschrieben, SMF unterstützt die IPv6 Adressen noch nicht. Auch nicht in der neusten 2.0RC3 Version.
Dazu evtl. folgendes:
- http://www.simplemachines.org/community/index.php?topic=383614.0
- http://dev.simplemachines.org/mantis/view.php?id=3987

Da ich demnächst eh an einem Patch für das SMF arbeiten muss, schau ich bei der Gelegenheit, ob man da auch was machen kann....
schön´s Grüssle, Andi

wob

Hallo Andi,

wir haben deine Zeile nochmals eingetragen + dieses

# unmap IPv6-mapped IPv4 addresses
if(substr($_SERVER['REMOTE_ADDR'], 0, 7) == "::ffff:")
       $_SERVER['REMOTE_ADDR'] = substr($_SERVER['REMOTE_ADDR'], 7);


Nun läuft wieder alles 1a, vielleicht hilft die Zeile euch ja


Gruss
Ideen sind immer gut, nur diese Idee`n umsetzen ist eine andere frage :-)