
나는 내가 생각할 수 있는 만큼 많은 연구를 했고 두 개의 Windows 2008 서버 사이에서 작동하는 텔넷 연결을 얻으려고 노력하고 있습니다.
서버 A의 애플리케이션은 포트 1433(ms sql)을 통해 서버 B에 연결해야 합니다. 3개의 다른 서버에서 포트 1433을 통해 서버 B에 텔넷을 연결할 수 있으므로 서버 B의 방화벽이 열려 있고 포트 1433에서 연결을 허용하고 있음을 확인했습니다.
문제는 서버 A에서 여전히 텔넷을 할 수 없다는 것입니다. 소프트웨어나 하드웨어 방화벽 때문이라고 생각했습니다.
문제를 해결하기 위해 고급 방화벽과 마찬가지로 제어판 방화벽도 꺼져 있는지 확인했습니다. 또한 이 컴퓨터에서 Windows 방화벽 서비스를 중단했습니다. 어떤 조합도 포트 1433에서 텔넷을 허용하지 않습니다. 항상 같은 오류가 나타납니다.
C:\>텔넷 YY.XX.XYX.XY 1433 YY.XX.XYX.XY에 연결하는 중...포트 1433에서 호스트에 대한 연결을 열 수 없습니다. : 연결 실패
서버 A의 전용 호스팅 공급자를 표시했는데 그들은 아웃바운드 1433 트래픽을 방해하는 라우터나 기타 하드웨어가 없다고 주장합니다.
누가 나에게 거짓말을 하고 있나요? 내 Windows 서버? 호스팅 회사?
어떤 아이디어라도 정말 감사하겠습니다!
답변1
귀하의 설명에 따르면 문제는 서버 A에 있는 것으로 보입니다. 처음부터 시작하십시오. Telnet 프로그램이 실제로 성공적으로 패킷을 보내고 있는지 확인하십시오. 이를 확인하기 위해 Wireshark를 사용하고 싶습니다.
답변2
그러면 서버 A와 서버 B가 동일한 네트워크에 있어야 합니까? 를 이용하면 중간에 아무것도 없는 것을 확인할 수 있습니다 tracert
. 서버 A가 서버 B에 텔넷으로 연결하는 데 사용한 다른 3개 서버와 다른 네트워크에 있는 경우 이는 실제로 유효한 연결 테스트가 아닙니다. 서버 A의 네트워크로부터의 연결을 차단하는 방화벽 규칙이나 라우터 ACL이 여전히 있을 수 있습니다. 서버 A에서 서버 B를 핑하거나 서버 B가 수신 대기 중인 다른 포트에 텔넷을 연결할 수 있습니까?
Wireshark를 서버 A에 설치하고 연결 시도를 모니터링하여 무슨 일이 일어나는지 확인하세요.
또한 서버 A에서 SQL 도구를 사용하여 서버 B에 연결해 보셨나요? 예를 들어 SQL Server Management Studio?
(서버 A에서 나가는 트래픽은 실제로 포트 1433으로만 향한다는 점에 유의하세요. 소스 포트는 다릅니다.)
답변3
몇 가지 기본적인 네트워크 문제 해결 단계부터 시작하겠습니다.
- 서버에 ping을 보낼 수 있나요?
- 서버에 대한 경로를 추적할 수 있나요? (그렇다면 트래픽을 차단할 수 있는 방화벽을 통과하는 것입니다.)
네트워크 세그먼트의 다른 장치에서 서버에 텔넷으로 연결할 수 있습니까?
그래도 문제가 해결되지 않으면 실제로 무슨 일이 일어나고 있는지 확인하기 위해 Wireshark와 같은 것을 권장합니다.
답변4
서버 B에 외부 IP 주소가 두 개 이상 있습니까? SQL Server가 수신 대기 중이 아닐 수 있습니다.모두IP 주소. netstat -n -a를 사용하여 0.0.0.0:1433이 있는지 또는 각 외부 IP 주소가 :1433에서 수신 대기하는 것으로 나열되어 있는지 확인하세요.
서버 A에서 ping을 수행하고 다른 3개의 서버가 이를 확인하는 것과 동일한 IP 주소로 확인되는지 확인합니다.
그렇지 않은 경우 SQL Server 네트워킹 인터페이스를 재구성해야 합니다.