I know there are 100's of article on this issue however in my case. I am able to connect to same instance of sql server from one machine on internet while not able to connect from another machine on internet using same credentials.
I am using SQL authentication.
TCP port are enabled, sqlbrowser service is running. Appropriate ports are added to firewall. All of these settings are checked on machine where SQL Server instance is hosted.
On Client Firewall is off, sqlbrowser service is running.