(Gelöst) Captive Portal Sync Problem in CARP Cluster (TYPO Invalid magic)
-
Hallo Zusammen,
leider hatte ich Probleme bei der Registrierung hier im Forum, weshalb ich jetzt einen bugmenot.com Account nutzen muss - Verzeihung!
Nach ewiger Recherche und erfolglosen Versuchen wollte ich bei euch noch mal nach Ideen Fragen und würde mich über Hilfe freuen.Beteiligte Geräte:
Zwei pfSense VMs im CARP Cluster.
[Edit] Beide VMs sind auf 2.4.1[/Edit]
pfSense 1
GST IP: 172.17.0.1
CARP IP: 1.1.1.1pfSense 2
GST IP: 172.17.0.2
CARP IP: 1.1.1.2pfSense VIP
GST IP: 172.17.0.254Es ist HA Sync auf pfSense1 aktiviert und Captive Portal Settings sind zum Sync aktiviert.
Zusätzlich ist auf pfSense2 unter Captive Portal / WLAN_GUEST / Vouchers / Database Synchronization die Synchronisierung aktiviert.Der erste Sync scheint auch zu klappen (Achtung, Logs in Reverse Order!):
Oct 28 13:46:02 php-fpm 45914 /services_captiveportal_vouchers.php: The Captive Portal voucher database has been synchronized with (pfsense.exec_php).
Oct 28 13:46:02 php-fpm 45914 /services_captiveportal_vouchers.php: XMLRPC reload data success with https://1.1.1.1:443/xmlrpc.php (pfsense.exec_php).
Oct 28 13:46:01 php-fpm 45914 /services_captiveportal_vouchers.php: Beginning XMLRPC sync data to https://1.1.1.1:443/xmlrpc.php.Anschließend erhalte ich aber wiederholt folgende Meldungen:
Oct 28 14:54:13 php-fpm 44837 /status_captiveportal_test.php: New alert found: Exception calling XMLRPC method exec_php #1 : Unhandled XML_RPC2_InvalidTypeEncodeException exception:Impossible to encode value '' from type 'NULL'. No analogous type in XML_RPC.#0 /usr/local/share/pear/XML/RPC2/Backend/Php/Value/Struct.php(107): XML_RPC2_Backend_Php_Value::createFromNative(NULL) #1 /usr/local/share/pear/XML/RPC2/Backend/Php/Value/Struct.php(107): XML_RPC2_Backend_Php_Value_Struct->encode() #2 /usr/local/share/pear/XML/RPC2/Backend/Php/Response.php(86): XML_RPC2_Backend_Php_Value_Struct->encode() #3 /usr/local/share/pear/XML/RPC2/Backend/Php/Server.php(135): XML_RPC2_Backend_Php_Response::encode(Array, 'utf-8') #4 /usr/local/share/pear/XML/RPC2/Backend/Php/Server.php(99): XML_RPC2_Backend_Php_Server->getResponse() #5 /usr/local/www/xmlrpc.php(555): XML_RPC2_Backend_Php_Server->handleCall() #6 {main}
Oct 28 14:54:13 php-fpm 44837 /status_captiveportal_test.php: Exception calling XMLRPC method exec_php #1 : Unhandled XML_RPC2_InvalidTypeEncodeException exception:Impossible to encode value '' from type 'NULL'. No analogous type in XML_RPC.#0 /usr/local/share/pear/XML/RPC2/Backend/Php/Value/Struct.php(107): XML_RPC2_Backend_Php_Value::createFromNative(NULL) #1 /usr/local/share/pear/XML/RPC2/Backend/Php/Value/Struct.php(107): XML_RPC2_Backend_Php_Value_Struct->encode() #2 /usr/local/share/pear/XML/RPC2/Backend/Php/Response.php(86): XML_RPC2_Backend_Php_Value_Struct->encode() #3 /usr/local/share/pear/XML/RPC2/Backend/Php/Server.php(135): XML_RPC2_Backend_Php_Response::encode(Array, 'utf-8') #4 /usr/local/share/pear/XML/RPC2/Backend/Php/Server.php(99): XML_RPC2_Backend_Php_Server->getResponse() #5 /usr/local/www/xmlrpc.php(555): XML_RPC2_Backend_Php_Server->handleCall() #6 {main}
Oct 28 14:54:13 php-fpm 44837 /status_captiveportal_test.php: Beginning XMLRPC sync data to https://1.1.1.1:443/xmlrpc.php.
Wäre das nicht schon genug, bekomme ich beim Voucher Test folgendes Ergebnis:
pfSense1:
WT2TMX5Z5X6ZK (0/10) active and good for 4178 Minutes
Access granted for 4178 Minutes in total.pfSense2:
WT2TMX5Z5X6ZK invalid: TYPO Invalid magic <wt2tmx5z5x6zk>!!
Access denied!
Hat jemand eine Idee für mich, wo ich noch weiter untersuchen kann, oder was ich ändern muss?
Das wäre super. Vielen Dank und viele Grüße!</wt2tmx5z5x6zk> -
pfSense 1
GST IP: 172.17.0.1
CARP IP: 1.1.1.1pfSense 2
GST IP: 172.17.0.2
CARP IP: 1.1.1.2pfSense VIP
GST IP: 172.17.0.254Warum haben denn beide Sensen eine "CARP IP"? :o Für was ist die? Und was ist die GST IP?
Der Fehler den du weiter unten beschreibst liest sich wie ein Sync Fehler. Ohne korrekte VIP funktioniert(e) der Sync nicht sauber, ist mir gerade im Kundenprojekt auch passiert. Nachdem eine VIP konfiguriert war hat der Sync wieder sauber geklappt. In deinem Fall liest es sich aber nach CP Fehler, also dass irgendwas im Portal nicht konfiguriert wurde, was der Sync aber replizieren will. Dafür spricht auch der Fehler unten, wobei ich nicht weiß, wie du bei einem Active Standby Cluster bitte auf Cluster 2 prüfen kannst dass der Voucher gilt da du da ja überhaupt nicht rauskommen solltest?
Gruß
-
CARPIP ist ein dediziertes Interface zum synchronisieren.
GSTIP ist das Netz für die Gäste.Sorry, das hätte ich erklären sollen.
Meine Konfiguration war wohl richtig und es handelte sich um einen Bug.
Zumindest etwas ähnliches wird hier beschrieben:https://redmine.pfsense.org/issues/8079
Danke trotzdem für deine Antwort. Damit ist das Thema erledigt und alles klappt wieder.
Viele Grüße -
Sprich nach Update auf 2.4.2 ist der Sync-Portal-Bug weg (den du wohl auch hattest)? :)