SQL Server: how to troubleshoot login timeout expired error
A lot of time while connecting to this server from a remote host I to face connection timed out error. Developers also reported same error from their scripts as well.

Interestingly, it's not "all the time" which sounds like you can connect "some" of the time. Since this is intermittent it definitely sounds like a name resolution issue. Try registering and connecting to SQL Server with only the SQL Server IP address within SQL Server Studio.  For named instances you can type something like W.X.Y.Z\SQLInstanceName.