News:

Support the VirtueMart project and become a member

Main Menu

ERROR checkPaypalIps: Error with REMOTE IP ADDRES

Started by tomphillipspcs, September 14, 2018, 14:59:55 PM

Previous topic - Next topic

tomphillipspcs

Seems like this is a problem a few people have had? The IP 181.224.148.114 is the IP of the webserver this is hosted on

Is there anyway of removing this IP checking or solving the issue?

It leaves the order at pending rather than confirmed

Paypal standard
PHP 5.6.37
VirtueMart 3.2.14
Joomla version, 3.8.12.

2018-09-14 12:12:13 DEBUG checkPaypalIps REMOTE ADDRESS: 181.224.148.114
2018-09-14 12:12:13 ERROR checkPaypalIps: Error with REMOTE IP ADDRESS = 181.224.148.114.
                        The remote address of the script posting to this notify script does not match a valid PayPal IP address

            These are the valid IP Addresses: 23.214.136.94,173.0.81.1,173.0.81.33,216.113.188.202,216.113.188.203,216.113.188.204,66.211.170.66,173.0.88.66,173.0.88.98,173.0.84.66,173.0.84.98,173.0.80.00,173.0.80.01,173.0.80.02,173.0.80.03,173.0.80.04,173.0.80.05,173.0.80.06,173.0.80.07,173.0.80.08,173.0.80.09,173.0.80.10,173.0.80.11,173.0.80.12,173.0.80.13,173.0.80.14,173.0.80.15,173.0.80.16,173.0.80.17,173.0.80.18,173.0.80.19,173.0.80.20,173.0.82.126,173.0.88.67,173.0.88.99,173.0.84.99,173.0.84.67,173.0.88.69,173.0.88.101,173.0.84.69,173.0.84.101,173.0.88.68,173.0.88.100,173.0.84.68,173.0.84.100,173.0.81.1,173.0.81.33,64.4.240.0,64.4.240.1,64.4.240.2,64.4.240.3,64.4.240.4,64.4.240.5,64.4.240.6,64.4.240.7,64.4.240.8,64.4.240.9,64.4.240.10,64.4.240.11,64.4.240.12,64.4.240.13,64.4.240.14,64.4.240.15,64.4.240.16,64.4.240.17,64.4.240.18,64.4.240.19,64.4.240.20,118.214.15.186,118.215.103.186,118.215.119.186,118.215.127.186,118.215.15.186,118.215.151.186,118.215.159.186,118.215.167.186,118.215.199.186,118.215.207.186,118.215.215.186,118.215.231.186,118.215.255.186,118.215.39.186,118.215.63.186,118.215.7.186,118.215.79.186,118.215.87.186,118.215.95.186,202.43.63.186,69.192.31.186,72.247.111.186,88.221.43.186,92.122.143.186,92.123.151.186,92.123.159.186,92.123.163.186,92.123.167.186,92.123.179.186,92.123.183.186The Order ID received was: ORD-1331

GJC Web Design

GJC Web Design
VirtueMart and Joomla Developers - php developers https://www.gjcwebdesign.com
VM4 AusPost Shipping Plugin - e-go Shipping Plugin - VM4 Postcode Shipping Plugin - Radius Shipping Plugin - VM4 NZ Post Shipping Plugin - AusPost Estimator
Samport Payment Plugin - EcomMerchant Payment Plugin - ccBill payment Plugin
VM2 Product Lock Extension - VM2 Preconfig Adresses Extension - TaxCloud USA Taxes Plugin - Virtuemart  Product Review Component
https://extensions.joomla.org/profile/profile/details/67210
Contact for any VirtueMart or Joomla development & customisation

tomphillipspcs

that doesn;t seem to be an option for me ?

administrator/index.php?option=com_virtuemart&view=paymentmethod&task=edit&cid[]=3


Jumbo!

Make sure you have installed the latest VirtueMart All In One (AIO) component.

tomphillipspcs

I have 3.2.14 for virtuemart and the AIO

that is the latest release I think?

GJC Web Design

D/L the latest   http://dev.virtuemart.net/attachments/download/1118/com_virtuemart.3.2.14.9808_ext_aio.zip

extract and look in the plugins for the payment/paypal
ftp those files to your folder and then u know u have the latest
GJC Web Design
VirtueMart and Joomla Developers - php developers https://www.gjcwebdesign.com
VM4 AusPost Shipping Plugin - e-go Shipping Plugin - VM4 Postcode Shipping Plugin - Radius Shipping Plugin - VM4 NZ Post Shipping Plugin - AusPost Estimator
Samport Payment Plugin - EcomMerchant Payment Plugin - ccBill payment Plugin
VM2 Product Lock Extension - VM2 Preconfig Adresses Extension - TaxCloud USA Taxes Plugin - Virtuemart  Product Review Component
https://extensions.joomla.org/profile/profile/details/67210
Contact for any VirtueMart or Joomla development & customisation

tomphillipspcs

which folder would the AIO - paypal files be in?

on my server /components/com_virtuemart_allinone  seems to be empty?


GJC Web Design

GJC Web Design
VirtueMart and Joomla Developers - php developers https://www.gjcwebdesign.com
VM4 AusPost Shipping Plugin - e-go Shipping Plugin - VM4 Postcode Shipping Plugin - Radius Shipping Plugin - VM4 NZ Post Shipping Plugin - AusPost Estimator
Samport Payment Plugin - EcomMerchant Payment Plugin - ccBill payment Plugin
VM2 Product Lock Extension - VM2 Preconfig Adresses Extension - TaxCloud USA Taxes Plugin - Virtuemart  Product Review Component
https://extensions.joomla.org/profile/profile/details/67210
Contact for any VirtueMart or Joomla development & customisation

jooomlaa

#8
de:
Irgendwie scheint dieses Problem immer mal wieder aufzutreten. Aktuell sind bei mir seit einigen Tagen (vermutlich 15.10.2019) wieder alle VM-Projekte betroffen. Ich bekomme diese IP-Adresse lt. paypal.3.log.php als nicht zulässig gemeldet: 66.211.170.66. Verantwortlich ist das Script plugins/vmpayment/paypal/paypal/helpers/paypal.php. Hier wird in Zeile 560 eine Liste von IP-Adressen vom Paypal-Server geholt die als IP-Adressen zulässig sind. In diesen erzeugten Arrays ist die angemahnte IP-Adresse aber nicht enthalten. Wenn man sich in der PayPal-Dokumentation (https://www.paypal.com/us/smarthelp/article/what-are-the-ip-addresses-for-live-paypal-servers-ts1056) anschaut, welcher IP-Pool verwendet wird, steht dort die o.g. IP Adresse eindeutig mit drin (Geschaut werden muss unter den Servern notify.paypal.com und ipnpb.paypal.com.). Also irgendwie scheinen die gethostbynamel()-Aufrufe keine korrekten Listen zu liefern. Das ist aber keine VM-Funktion, sondern klassisch PHP. Also vermute ich mal den Fehler beim PayPal-Server.
Ich habe auch untersucht, ob eine neuere Version des PayPal-Plugins das Problem anders angeht. Tut es nicht, diese Prüfungssequenz ist auch in der Version 3.6.2 exakt gleich.
Also Schnelllösung habe ich das gelöst, in dem ich diese Scriptänderung in der helpers/paypal.php eingefügt habe:

en:
Somehow this problem seems to recur from time to time. Since a few days (probably 15.10.2019) all my VM projects are affected again. I get this IP address according to paypal.3.log.php reported as not allowed: 66.211.170.66. Responsible is the script plugins/vmpayment/paypal/paypal/helpers/paypal.php. Here in line 560 a list of IP addresses of the Paypal server is fetched which are permissible as IP addresses. These arrays do not contain the requested IP address. If you take a look at the PayPal documentation (https://www.paypal.com/us/smarthelp/article/what-are-the-ip-addresses-for-live-paypal-servers-ts1056) to see which IP pool is used, you will see the IP address mentioned above (you have to look at the servers notify.paypal.com and ipnpb.paypal.com.). So somehow the gethostbynamel() calls don't seem to return correct lists. But this is not a VM function, but classic PHP. So I suppose the PayPal server has an error.
I also checked if a newer version of the PayPal plugin addresses the problem differently. It doesn't, this check sequence is exactly the same in version 3.6.2.
So I solved the quick solution by inserting this script change in the helpers/paypal.php:

} else {
            // JH 2017-04-23
//              QUORVIA 2017April24
            // Get IP through DNS call
            // Reporting and order management
            $paypal_iplist_ipnpb       = gethostbynamel('ipnpb.paypal.com');
            $paypal_iplist_notify      = gethostbynamel('notify.paypal.com');

            $paypal_mDSK_additionals = array('66.211.170.66');

            $paypal_iplist = array_merge( // JH 2017-04-23
            // List of Reporting and order management
                $paypal_iplist_ipnpb,
                $paypal_iplist_notify,
                $paypal_mDSK_additionals
            );


de:
Aber evtl. bekommt einer der VM-Profis eine beständige Lösung hin.

en:
But maybe one of the VM professionals will get a stable solution.

GJC Web Design

check this thread:  http://forum.virtuemart.net/index.php?topic=131735.0

if u d/L http://dev.virtuemart.net/attachments/1204/com_virtuemart.3.6.3.10179_package_or_extract.zip and extract the paypal plugin from it you can see the solution ( adding ips thru the admin) until Paypal fix THEIR problem
GJC Web Design
VirtueMart and Joomla Developers - php developers https://www.gjcwebdesign.com
VM4 AusPost Shipping Plugin - e-go Shipping Plugin - VM4 Postcode Shipping Plugin - Radius Shipping Plugin - VM4 NZ Post Shipping Plugin - AusPost Estimator
Samport Payment Plugin - EcomMerchant Payment Plugin - ccBill payment Plugin
VM2 Product Lock Extension - VM2 Preconfig Adresses Extension - TaxCloud USA Taxes Plugin - Virtuemart  Product Review Component
https://extensions.joomla.org/profile/profile/details/67210
Contact for any VirtueMart or Joomla development & customisation

jooomlaa

But there's no solution to the problem.
I get an IP address, which is allowed according to the PayPal documentation, but is not determined by gethostbynamel(). There is a contradiction between Palpal whitelist and hostlist. The problem must be solved.

jooomlaa

Okay, I see that in the new plugin script (Vers. 3.6.3) there is the possibility to pass an extra list of IP addresses. This is a good solution for now. But it is difficult for shop owners with little background knowledge to use. They don't know the meaning.
The question is why does gethostbynamel() not return a correct list?

Jörgen

This is as we said something that comes from problems with the PAYPAL server. All action on our side of the fence will only be band aids for damage control.

Jörgen @ Kreativ Fotografi
Joomla 3.9.18
Virtuemart 3.4.x
Olympiantheme Hera (customized)
This reflects current status when viewing old post.

jooomlaa

Okay, thank you very much. At least I and you have recognized the problem identically and have it surely also on the screen and have informed Paypal about this abomination. Should also affect many other non-VM shops.

GJC Web Design

QuoteShould also affect many other non-VM shops.

and am sure it does ...  IMHO Paypal - although we are more or less forced to use them by their market dominance - are not the vorbild for a professional customer orientated company.
It is THEY who recommend using gethostbynamel() yet they obviously fail to ensure the results are correct.
GJC Web Design
VirtueMart and Joomla Developers - php developers https://www.gjcwebdesign.com
VM4 AusPost Shipping Plugin - e-go Shipping Plugin - VM4 Postcode Shipping Plugin - Radius Shipping Plugin - VM4 NZ Post Shipping Plugin - AusPost Estimator
Samport Payment Plugin - EcomMerchant Payment Plugin - ccBill payment Plugin
VM2 Product Lock Extension - VM2 Preconfig Adresses Extension - TaxCloud USA Taxes Plugin - Virtuemart  Product Review Component
https://extensions.joomla.org/profile/profile/details/67210
Contact for any VirtueMart or Joomla development & customisation