소개
이 문서에서는 Cisco CUPS(Unified Presence Server)와 다른 서버 간에 XMPP(Extensible Messaging and Presence Protocol) 페더레이션을 구성하는 데 사용되는 단계에 대해 설명합니다.
사전 요구 사항
요구 사항
이 문서에 대한 특정 요건이 없습니다.
사용되는 구성 요소
이 문서의 정보는 Cisco CUP(Unified Presence) 릴리스 8.x를 기반으로 합니다.
이 문서의 정보는 특정 랩 환경의 디바이스를 토대로 작성되었습니다. 이 문서에 사용된 모든 디바이스는 초기화된(기본) 컨피그레이션으로 시작되었습니다. 현재 네트워크가 작동 중인 경우, 모든 명령어의 잠재적인 영향을 미리 숙지하시기 바랍니다.
배경 정보
CUPS는 다음 서버에서만 페더레이션을 지원합니다.
- IBM Sametime Server 릴리스 8.2 및 8.5
- Cisco WebEx Connect 릴리스 6
- GoogleTalk
- CUP 릴리스 8.x
- XMPP 표준을 준수하는 서버
두 XMPP 서버에 등록된 두 클라이언트 간의 XMPP 메시지 흐름은 다음과 같습니다.
XMPP Client(Google Talk 또는 WebEx Connect) > TCP: 5222 > XMPP Server(Google Server 또는 WebEx Connect Server) > TCP: 5269 > ASA(방화벽) > TCP: 5269 > CUPS > TCP: 5222 > CUPS XMPP 클라이언트(Jabber 또는 CUPS)
참고: 모든 Jabber 클라이언트가 통합 연락처를 지원하는 것은 아닙니다.
이 문서에 대한 가정은 다음과 같습니다.
- CUPS 도메인은 cupdomain.com입니다.
- CUPS 사용자 IM 주소는 cupuser1@cupdomain.com입니다.
- XMPP 서버 도메인은 gmail.com입니다.
- XMPP 사용자 IM 주소는 jdoe1@gmail.com입니다.
다음과 같은 경우 페더레이션이 발생합니다.
- Cupuser1 Contact List에 jdoe1@gmail.com이 추가되면 CUPS는 인식됩니다.
- CUPS는 _xmpp-server._tcp.gmail.com DNS(Domain Name System) 쿼리를 CUPS에 지정된 DNS 서버로 전송합니다. 이는 show network eth0 details 명령과 함께 발견되며 일반적으로 로컬 DNS 서버입니다.
- 로컬 DNS 서버는 DNS 쿼리를 공용 DNS 서버로 전달합니다. 공용 DNS 서버에는 _xmpp-server._tcp.gmail.com에 대한 항목이 있습니다. 연결 IM에 gmail.com 도메인이 있기 때문입니다. 또한 Google 서버의 FQDN(Fully Qualified Domain Name)/IP 주소 값을 로컬 DNS 서버로 반환합니다. 그러면 값이 CUPS로 전송됩니다.
- 이제 CUP은 현재 상태 서브스크립션 요청을 전송할 위치를 파악하고 이전 단계에서 검색된 XMPP 서버 IP 주소(사용자 jdoe1@gmail.com의 TCP 포트 5369의 경우)에 상태를 요청합니다.
- 요청은 Cisco ASA(Adaptive Security Appliance) 방화벽을 통과하여 TCP 포트 5269의 공용 XMPP 서버(Google)로 전달해야 합니다.
참고: 이 프로세스는 jdoe1@gmail.com이 연락처 목록에 cupuser1@cupdomain.com을 추가하면 취소됩니다.
구성
이 섹션에서는 페더레이션 컨피그레이션에 대한 간단한 개요를 설명합니다.
- 공용 DNS 서버(CUPS 회사 웹 사이트 또는 인터넷 서비스 공급자를 호스팅하는 회사)에 DNS SRV 레코드를 구성합니다. CUPS의 FQDN에 대해 DNS SRV가 생성된 경우 CUPS 공용 IP 주소에 대한 DNS A 레코드를 확인하기 위해 DNS "A" 레코드를 만들어야 합니다.
다음은 CUPS에 대한 DNS SRV 레코드 및 DNS A 레코드의 예입니다.
- DNS SRV 레코드: _xmpp-server._tcp.cupdomain.com은 cup1.cupdomain.com을 가리킵니다(cup1이 CUPS 호스트 이름인 것으로 가정). 우선 순위 가중치는 0이 될 수 있습니다.
- DNS A 레코드: cup1.cupdomain.com은 CUPS용 ASA의 공용 IP를 가리킵니다.
- CUPS IP를 공용 IP로 변환하는 NAT(Network Address Translation)를 포함하도록 방화벽을 구성하거나, CUPS IP 및 TCP 포트 5269를 TCP 포트 5269가 있는 공용 IP로 변환하는 PAT(Port Address Translation)를 ASA에서 구성합니다.
- CUPS 도메인이 XMPP 서버에 등록된 도메인이 아닌지 확인합니다. 예를 들어, cupdomain.com은 Google Apps 또는 WebEx 서비스에 등록할 수 없습니다.
- CUPS에서 XMPP 페더레이션을 활성화합니다. Google의 경우 TCP이고 WebEx의 경우 클라이언트 측 인증서가 선택되지 않은 TLS(Transport Layer Security)가 선택적입니다.
- CUPS에서 XMPP 페더레이션 서비스를 시작합니다.
다음을 확인합니다.
TCP 포트 5269에 대해 수신 트래픽이 ASA를 통과하는지 확인하려면 다음 단계를 완료합니다.
- 로컬 네트워크에 Cisco Unified Presence Server로 연결되지 않았지만 외부 네트워크에 연결되어 ASA로 들어오는 PC를 가져옵니다.
- 명령 프롬프트를 열고 다음을 입력합니다.
telnet
5269
이 작업으로 빈 화면이 생성되면 ASA의 컨피그레이션이 정확합니다.
- CUPS 내부 IP 주소가 텔넷 가능한지 확인합니다. 내부 PC에서 명령 프롬프트를 열고 다음을 입력합니다.
telnet
5269
이 작업이 실패하면 CUPS XMPP 페더레이션이 구성되지 않았거나 XMPP 페더레이션 서비스가 활성화되지 않았음을 의미합니다.
참고: 이전 단계 중 하나라도 실패하면 방화벽 로그 문제를 해결해야 합니다.
또한 CUPS 도메인이 WebEx 또는 Gmail에 등록되어 있는지 확인해야 합니다. Gmail 또는 WebEx가 등록된 도메인이 있는 경우 CUPS XMPP 페더레이션 로그를 분석해야 합니다. 예기치 않은 다이얼 백 응답을 알려줍니다. 이 경우 가입 서비스에서 CUPS 도메인을 제거하려면 Google 또는 WebEx 지원 팀에 문의해야 합니다.
참고: Windows 7은 기본적으로 텔넷 애플리케이션과 함께 제공되지 않습니다. 제어판 > 프로그램 및 기능 > Windows 기능 설정 또는 해제 > 텔넷 클라이언트를 통해 설치해야 합니다.
문제 해결
컨피그레이션 문제를 해결하려면 다음 단계를 완료하십시오.
- 공용 DNS 서버에서 XMPP 레코드가 제대로 생성되었는지 확인하려면 명령 프롬프트를 열고 다음을 입력합니다.
nslookup
set type=SRV
_xmpp-server._tcp.cupdomain.com
참고: 이 단계에서는 CUPS용 ASA에 구성된 CUPS 공용 IP 주소에 대한 결과를 제공합니다. 이 단계에서 문제가 발생하면 DNS SRV 레코드를 만든 웹 사이트 공급자 또는 인터넷 서비스 공급자에게 문의하십시오.
- ASA가 제대로 작동하고 트래픽을 차단하지 않는지 확인하려면 CUPS와 동일한 네트워크에 속하는 PC에서 명령 프롬프트를 열고 다음 단계를 완료하십시오.
- ASA를 통한 발신 트래픽에서 TCP 포트 5269를 확인합니다. 이렇게 하려면 다음 명령을 사용하여 XMPP 서버 IP 주소를 확인해야 합니다.
nslookup
set type=SRV
_xmpp-server._tcp.gmail.com
참고: 이러한 명령의 출력은 XMPP 페더레이션을 위해 gmail.com 도메인을 지원하는 여러 IP 주소를 제공합니다.
- 새 명령 프롬프트를 열고 다음을 입력합니다.
telnet
5269
빈 화면이 생성되면 ASA는 발신 트래픽을 전달합니다.
관련 정보