문제

VPN을 통해 처음으로 기존 네트워크에 연결했습니다.VPN 클라이언트에서 SQL Server가 사용하는 IP 주소를 ping할 수 있지만 SSMS가 SQL Server에 연결되지 않습니다.나는 올바른 로그인 ID와 비밀번호를 사용하고 있습니다.

왜 이런 일이 일어날 수 있습니까?어떤 아이디어가 있나요?

감사해요

도움이 되었습니까?

해결책

기본 인스턴스에서 SQL Server는 기본적으로 TCP/1433에서 청취합니다. 이것은 변경 될 수 있습니다. 이름이 지정된 인스턴스에서 다르게 구성되지 않는 한 SQL Server는 동적 TCP 포트에서 청취합니다. 그것이 의미하는 바는 SQL Server가 포트가 사용되고 있음을 발견하면 다른 TCP 포트를 선택합니다. 명명 된 인스턴스의 경우 클라이언트가 일반적으로 올바른 포트를 찾는 방법은 SQL Server Lister Service/SQL 브라우저와 대화하는 것입니다. UDP/1434를 듣고 변경할 수 없습니다. 이름이 지정된 인스턴스가있는 경우 정적 포트를 구성 할 수 있으며 Kerberos 인증/위임을 사용해야하는 경우해야합니다.

결정해야 할 것은 SQL Server가 듣는 포트입니다. 그런 다음 네트워킹/보안 담당자와 함께 VPN을 통해 해당 포트와의 커뮤니케이션을 허용하는지 확인해야합니다. 표시된대로 방화벽 설정을 점검하십시오. 일부 시스템에는 여러 방화벽이 있습니다 (내 노트북은 예입니다). 그렇다면 시스템의 모든 방화벽을 확인해야합니다.

이 모든 것이 올바른 경우 서버에 IP 주소를 통해 SQL Server 포트에 대한 액세스를 제한하는 IPSEC 정책이 없는지 확인하십시오. 그것은 또한 당신이 차단 될 수 있습니다.

다른 팁

이것이 나에게 일어날 때, DNS가 제대로 작동하지 않기 때문입니다. SQL Server 로그인에서 서버 이름 대신 IP 주소를 사용해보십시오.

TCP/IP에 SQL Server가 활성화되어 있는지 확인하십시오 (누군가가 비활성화했을 수 있음)?

또한 SQL 인스턴스가 사용중인 포트 번호를 확인/확인하는 데 도움이됩니다 (누군가가 포트 1433의 기본값에서 변경 한 경우).

분명히 Port 1433 (또는 포트 SQL이 듣는 것은 무엇이든)를 기계와 박스 SQL 사이의 방화벽으로 차단 해제해야합니다.

SQL의 네트워크 구성을 확인하려면 (SQL Server 클라이언트 도구가 설치되어야 함) : 시작 -> 프로그램 -> SQL Server 200x-> 구성 도구 -> SQL Server Configuration Manager

필요한 컴퓨터에 연결 한 다음 트리 항목 (LHS) "SQL Server Network 구성"을 확장 한 다음 인스턴스를 선택하십시오. 공유 메모리, 파이프, TCP/IP 및 VIA의 네 가지 옵션이 있어야합니다. RHS 창에서 TCP/IP가 활성화되어 있는지 확인할 수 있습니다.

TCP/IP를 두 번 클릭하고 "고급"탭을 누르면 포트 번호를 볼 수도 있습니다.

다른 생각 .. SQL 인증 또는 Windows (도메인) 인증을 사용하고 있습니까?

  • SQL 인증 (사용자 이름과 비밀번호가 주어진 것으로 가정 한 것으로 가정 한 경우, 연결중인 SQL 인스턴스에 혼합 모드 인증이 활성화되어 있다고 확신합니까? 그렇지 않은 경우 관리자로 연결하고 기본 보안 설정을 변경하여 SQL 인증을 허용해야합니다.

  • Windows 인증이라면 네트워크가 Kerberos를 잠재적으로 사용할 수 있습니까? VPN 자격 증명이 악수에 사용될 것이라고 생각할 것입니다. 귀하의 계정에 적절한 로그인 권한이 있는지 확인합니다.

SQL Server가 사용하는 포트가 방화벽이나 VPN에 의해 ​​차단되고 있지 않은지 확인하세요.

또한 Hamachi VPN을 통해 원격으로 연결하려고 할 때이 문제가있었습니다. 인터넷에서 사용할 수있는 모든 것을 시도했지만 (이 게시물 포함) 여전히 작동하지 않았습니다. 동일한 데이터베이스가 로컬 네트워크의 컴퓨터에 설치 될 때 모든 것이 잘 작동했습니다. 마지막으로 다음 수정 사항을 사용하여 성공을 달성 할 수있었습니다. 원격 시스템에서 TCP/IP 프로토콜에서 IP 주소를 활성화합니다.

원격 컴퓨터에서 SQL Server 구성 관리자를 시작하고 SQL Server Network 구성을 확장하고 "SQLEXPRESS 용 프로토콜"(또는 "MSQLSERVER")을 선택하고 TCP/IP를 마우스 오른쪽 버튼으로 클릭하고 결과 대화 상자에서 IP 주소 탭으로 이동합니다. "IP1"요소가 있는지 확인하십시오 Active=Yes 그리고 Enabled=Yes. IP 주소를 기록하십시오 (나에게는이를 수정할 필요가 없었습니다). 그런 다음 SQL Server 서비스를 중지하고 시작하십시오. 그런 다음 원격 기계의 방화벽이 비활성화되거나 이전 대화 상자에 언급 된 주소에 대한 로컬 서브넷과 서브넷이 모두 포함 된 포트 1433에 대한 예외가 허용되는지 확인하십시오. 로컬 컴퓨터에서 서버 이름을 설정하여 연결할 수 있어야합니다. 192.168.1.22\SQLEXPRESS (또는 [ip address of remote machine]\[SQL server instance name]).

도움이되기를 바랍니다.

UDP 포트가 오픈/vpn-forwarded가 없을 수 있습니다. 포트 번호 1433입니다.

"TCP/IP"의 클라이언트 프로토콜 이름에도 불구하고 MSSQL은 BitBanging에 UDP를 사용합니다.

SQL Server는 TCP 포트 1433을 사용합니다. 이것은 아마도 VPN 터널 또는 서버의 방화벽으로 차단 될 수 있습니다.

VPN에 연결할 때 모든 메시지는 VPN 서버를 통해 진행되며 해당 포트 SQL 서버로 메시지를 전달할 수 없습니다.

노력하다

VPN 설정 비활성화-> 속성-> TCP/IP 속성-> 고급-> 원격 네트워크에서 기본 게이트웨이 사용.

이렇게하면 먼저 SQL Server의 로컬 IP를 연결하고 VPN 서버를 사용하여 전달합니다.

Citrix Access Gateway와 함께이 문제가 많이 있습니다. 보통 타임 아웃 오류가 발생합니다. VPN을 통해 원격 클라이언트에서는 네트워크의 클라이언트에서 데이터베이스에 연결할 수 있지만 여기에 제공된 대부분의 제안을 잊어 버릴 수 있습니다. 모든 제안이 서버 측 문제를 다루기 때문입니다.

시간 초과를 기본값 (15 초)에서 60 초로 늘릴 때 연결할 수 있고, 적절한 측정을 위해 프로토콜을 TCP/IP로 강제합니다. 이 작업은 로그인 대화 상자의 옵션 화면에서 수행 할 수 있습니다.

`

이것이 VPN을 통해 SQL Server 2012 데이터베이스에 액세스하는 연결 문제를 해결 한 것입니다.

SQL Server 2012 구성 관리자를 사용하여

SQL Server 네트워크 구성으로 갔다

그런 다음 새 서버 인스턴스를 클릭하고 TCP/IP 프로토콜을 두 번 클릭했습니다.

TCP/IP가 활성화되었으므로 TCP/IP 속성 고급 대화 상자의 'IP 주소'탭의 모든 IP 포트 슬롯이 enabled = no로 설정되었습니다.

새 설치가 왜이 모든 IP 슬롯을 예보 대신하지 않도록 설정했는지 궁금했기 때문에 예수로 변경했습니다.

이제 VPN을 통해 Sever와의 연결은 훌륭하게 작동하며 포트 번호를 변경하지 않았습니다.

참고 : 또한 Visual Studio 2010의 SQL Server 2008 기본값이 제거되지 않았지만 TCP/IP 상황에 직접적인 영향을 미치지 않았다고 생각합니다. 한 동료는 Visual Studio와 함께 제공되는 2008 년과 2005 년 설치가 SQL 2012를 방해 할 수 있다고 말했습니다.

SQL Server 인스턴스가 사용하는 포트를 허용하기 위해 방화벽 세트가있는 한, 데이터 소스를 변경하기 만하면됩니다. =Server name 에게 =IP,Port

즉, 연결 문자열에서 이와 같은 것을 사용합니다.

Data Source=190.190.1.100,1433;

클라이언트 측에서 아무것도 변경할 필요가 없습니다.

SQL Server 2017 에서도이 문제를 겪고있었습니다.

나는 VPN을 통해 서버와 같은 네트워크에 있으며 핑을 할 수 있습니다. 인증 방법이 작동하지 않을 것이라는 좌절감을 한 후에는 SQL 서버에서 SSH 서버를 설정했으며 정상적으로 연결할 수있었습니다. 이것은 올바른 포트가 어떤 이유로 맞지 않았다는 것을 확인했습니다. 양쪽 끝에 새로운 사용자 계정, 도메인 계정, 방화벽 점검 등을 만들었습니다.

나를위한 해결책은 다음과 같습니다.1. SSMS에서 TCP/IP를 엄격하게 사용하도록 연결 설정 2. 사용자 정의 문자열을 사용하여 기본 포트 (예 : 데이터 소스 = 192.168.168.166,1433;)

위의 다른 모든 의견은 지금까지 작동하지 않았습니다. 포트를 포함 해야하는 것은 필수 인 것 같습니다 (기본값에도 불구하고).

SQL Server 2005를 사용하는 경우 먼저 SQL Server 브라우저 서비스를 시작하십시오.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top