Monday, March 26, 2012

Report connection fails with DNS name

Hi,

I am facing problem while setting connection string in Report Service project.
Problem is when I specify DNS name instead of machine name as the Server in the connection string.

When I specify DNS name in the connection string it gives error that "A connection cannot be made.Ensure that the server is running" on click of "Test Connection"
Also I am not able to view reports directly through IE. I.e. http://<DNS_NAME>/Reports.
When I access Reports, it prompts me to enter username/password. Even after specifying valid username, it shows me the prompt again n again.

Is there some known issue with Reporting Service or with IIS setting not able to connect to a DNS name? I did not face with any issue when
I specified DNS name in the connection string of Analysis Service project.

Did anyone encountered DNS related problem with SQL Server 2005 Reporting Service?

We also verified that:
1: Ping with both machine name and DNS name returns same result.
2: nslookup with both machine name and DNS name resolves to same IP.

3: Tried putting the DNS name in the hosts file.

Eagerly awaiting some positive reply.

Note: I am working with SQL Server 2005 Standard Edition.

No replies yetSad

We are stuck up with this issue since quite some time.

still waiting for some positive inputs.

|||

After doing some investigation, I have found that the issue is with Analysis server not able to connect using the DNS name (Note: my Reporting Service proj is connecting to Analysis services datasource). When I connect to Analysis server through SQL Server management studio (by def which uses Win authentication), and specify machine name (ABC) in Server then it connects but if I give DNS name (XYZ.PWR.COM) it gives me the following error:

************************************************************************************************************
A connection cannot be made. Ensure that the server is running. (Microsoft.AnalysisServices.AdomdClient)


Program Location:

at Microsoft.AnalysisServices.AdomdClient.XmlaClient.Connect(ConnectionInfo connectionInfo, Boolean beginSession)
at Microsoft.AnalysisServices.AdomdClient.AdomdConnection.XmlaClientProvider.Microsoft.AnalysisServices.AdomdClient.AdomdConnection.IXmlaClientProviderEx.ConnectXmla()
at Microsoft.AnalysisServices.AdomdClient.AdomdConnection.ConnectToXMLA(Boolean createSession, Boolean isHTTP)
at Microsoft.AnalysisServices.AdomdClient.AdomdConnection.Open()
at Microsoft.SqlServer.Management.UI.VSIntegration.ObjectExplorer.ObjectExplorer.ValidateConnection(UIConnectionInfo ci, IServerType server)
at Microsoft.SqlServer.Management.UI.ConnectionDlg.Connector.ConnectionThreadUser()

===================================

Unable to read data from the transport connection: An existing connection was forcibly closed by the remote host. (System)


Program Location:

at System.Net.Sockets.NetworkStream.Read(Byte[] buffer, Int32 offset, Int32 size)
at System.IO.BufferedStream.Read(Byte[] array, Int32 offset, Int32 count)
at Microsoft.AnalysisServices.AdomdClient.DimeRecord.ForceRead(Stream stream, Byte[] buffer, Int32 length)
at Microsoft.AnalysisServices.AdomdClient.DimeRecord.ReadHeader()
at Microsoft.AnalysisServices.AdomdClient.DimeRecord..ctor(Stream stream)
at Microsoft.AnalysisServices.AdomdClient.DimeReader.ReadRecord()
at Microsoft.AnalysisServices.AdomdClient.TcpStream.GetResponseDataType()


************************************************************************************************************

If I connect to Reporting Service using DNS name then I get the following error:


************************************************************************************************************
===================================

Cannot connect to XYZ.PWR.COM.

===================================

A connection to the report server failed. Most likely, you do not have permission to connect to the computer. You should either try to connect using a report server URL for the Server name, or if the Distributed COM Users group exists on the remote computer, verify that you are a member. (Microsoft.SqlServer.Management.UI.RSClient)


Program Location:

at Microsoft.SqlServer.Management.UI.RSClient.RSConnectionInfo.ParseServerName(String serverName)
at Microsoft.SqlServer.Management.UI.RSClient.RSConnectionInfo.RSTypeImpl.CreateSqlOlapConnectionInfoBase(UIConnectionInfo ci)
at Microsoft.SqlServer.Management.UI.RSClient.RSConnectionInfo.RSTypeImpl.GetConnectionObject(UIConnectionInfo ci)
at Microsoft.SqlServer.Management.UI.ConnectionDlg.RSType.GetConnectionObject(UIConnectionInfo ci)
at Microsoft.SqlServer.Management.UI.VSIntegration.ObjectExplorer.ObjectExplorer.ValidateConnection(UIConnectionInfo ci, IServerType server)
at Microsoft.SqlServer.Management.UI.ConnectionDlg.Connector.ConnectionThreadUser()
************************************************************************************************************

When I ping with machine name (ABC) and DNS name (XYZ.PWR.COM), both resolves to the same IP.
C:\Documents and Settings\Administrator>ping ABC

Pinging ABC.corp.abctech.com [xx.x.xx.xx] with 32 bytes of d


C:\Documents and Settings\Administrator>ping XYZ.PWR.COM

Pinging XYZ.PWR.COM [xx.x.xx.xx] with 32 bytes of data:


Is this problem because of the kerberos authentication that Analysis server uses to authenticate?

I am able to connect to the Database engine using DNS name (but using SQL Server authentication).
Also I was able to view the reportserver and reports page by changing the IIS authentication to NTLM.
But finally I am not able to view the reports.

Can anyone please help me in solving this issue.

Awatiitng some positive reply.

No comments:

Post a Comment