Azure Network Watcher 작동 방식
구독의 Azure 지역에 가상 네트워크를 만들면 Network Watcher를 자동으로 사용할 수 있게 됩니다. 검색 창에 Network Watcher를 입력하여 Azure Portal에서 직접 Network Watcher에 액세스할 수 있습니다.
Network Watcher 토폴로지 도구
Azure Network Watcher의 토폴로지 기능을 사용하면 가상 네트워크에서 다음 리소스를 모두 볼 수 있습니다. 가상 네트워크의 리소스와 연결된 리소스 및 리소스 간의 관계를 포함합니다.
- 서브넷
- 네트워크 인터페이스
- 네트워크 보안 그룹
- 부하 분산 장치
- Load Balancer 상태 프로브
- 퍼블릿 IP 주소
- 가상 네트워크 피어링
- 가상 네트워크 게이트웨이
- VPN 게이트웨이 연결
- 가상 머신
- Virtual Machine Scale Sets
토폴로지에서 반환되는 모든 리소스에는 다음과 같은 속성이 있습니다.
- Name: 리소스의 이름입니다.
- Id: 리소스 그룹의 URI입니다.
- Location: 리소스가 있는 Azure 지역입니다.
- Associations: 참조되는 개체에 대한 연결 목록입니다. 각 연결에는 다음과 같은 속성이 있습니다.
- AssociationType: 자식 개체 및 부모 개체 간의 관계를 참조합니다. 유효한 값은
Contains
및Associated
입니다. - Name: 참조되는 리소스의 이름입니다.
- ResourceId: 연결에서 참조되는 리소스의 URI입니다.
- AssociationType: 자식 개체 및 부모 개체 간의 관계를 참조합니다. 유효한 값은
연결 모니터 도구
연결 모니터는 Azure Network Watcher에서 통합된 엔드투엔드 연결 모니터링을 제공합니다. 연결 모니터는 하이브리드 및 Azure 클라우드 배포를 모두 지원합니다. 연결 모니터 도구를 사용하여 리소스 간의 대기 시간을 측정할 수 있습니다. 커넥트ion Monitor는 네트워크 구성 변경 또는 NSG 규칙 수정과 같이 연결에 영향을 주는 변경 내용을 검색할 수 있습니다. 오류 또는 변경 내용을 찾기 위해 정기적으로 VM을 검색하도록 연결 모니터를 구성할 수 있습니다. 연결 모니터는 문제를 진단하고 문제가 발생한 이유와 문제를 해결하기 위해 수행할 수 있는 단계에 대한 설명을 제공할 수 있습니다.
모니터링에 커넥트ion Monitor를 사용하려면 모니터링하는 호스트에 모니터링 에이전트를 설치해야 합니다. 연결 모니터는 간단한 실행 파일을 사용하여 호스트가 Azure 가상 네트워크 또는 온-프레미스 네트워크에 있는지 여부에 관계없이 연결 모니터링을 실시합니다. Azure VM을 사용하면 Network Watcher 확장이라고도 하는 Network Watcher 에이전트 VM을 설치할 수 있습니다. 온-프레미스 컴퓨터의 경우 Log Analytics 에이전트를 설치하여 이 기능을 사용하도록 설정할 수 있습니다.
IP 흐름 확인
IP 흐름 확인 도구는 5-튜플 패킷 매개 변수 기반 확인 메커니즘을 사용하여 인바운드 또는 아웃바운드 패킷이 VM에서 허용되거나 거부되는지를 검색합니다. 도구 내에서 로컬 및 원격 포트, 프로토콜(TCP 또는 UDP), 로컬 IP, 원격 IP, VM 및 VM의 네트워크 어댑터를 지정할 수 있습니다.
다음 홉
IaaS VM의 트래픽은 NIC(네트워크 인터페이스)와 연결된 유효 경로를 기반으로 대상으로 전송됩니다. 다음 홉은 특정 VM 및 NIC에서 다음 홉 유형 및 패킷의 IP 주소를 가져옵니다. 다음 홉을 알고 있으면 트래픽이 의도한 대상으로 향하는지 트래픽이 다른 곳으로 전송되는지 여부를 확인할 수 있습니다. 트래픽이 온-프레미스 위치 또는 가상 어플라이언스로 전달되는 경로의 부적절한 구성으로 인해 연결 문제가 발생할 수 있습니다. 또한 다음 홉은 다음 홉과 연결된 경로 테이블을 반환합니다. 경로가 사용자 정의 경로로 정의된 경우 해당 경로가 반환됩니다. 그렇지 않으면 다음 홉이 System Route
를 반환합니다.
유효한 보안 규칙
NSG(네트워크 보안 그룹)는 원본 및 대상 IP 주소와 포트 번호를 기준으로 패킷을 필터링합니다. 둘 이상의 NSG가 Azure 가상 네트워크의 IaaS 리소스에 적용할 수 있습니다. 리소스에 대한 모든 NSG에 적용되는 모든 규칙을 고려하여 효과적인 보안 규칙 도구를 사용하면 일부 트래픽이 거부되거나 허용되는 이유를 확인할 수 있습니다.
패킷 캡처
패킷 캡처는 Network Watcher를 통해 원격으로 시작되는 가상 머신 확장입니다. 이 기능은 운영 체제 도구 또는 타사 유틸리티를 사용하여 특정 가상 머신에서 패킷 캡처를 수동으로 실행하는 부담을 덜어줍니다. 패킷 캡처는 포털, PowerShell, Azure CLI 또는 REST API를 통해 트리거할 수 있습니다. Network Watcher를 사용하면 모니터링하려는 트래픽을 캡처하도록 캡처 세션에 대한 필터를 구성할 수 있습니다. 필터는 5개 튜플(프로토콜, 로컬 IP 주소, 원격 IP 주소, 로컬 포트 및 원격 포트) 정보를 기반으로 합니다. 캡처된 데이터는 로컬 디스크 또는 스토리지 Blob에 저장됩니다.
연결 문제 해결
연결 문제 해결 도구는 원본과 대상 VM 간의 TCP 연결을 확인합니다. FQDN, URI 또는 IP 주소를 사용하여 대상 VM을 지정할 수 있습니다. 연결에 성공하면 다음과 같은 통신 정보가 나타납니다.
- 대기 시간(밀리초).
- 전송된 프로브 패킷 수.
- 대상에 대한 전체 경로의 홉 수.
연결에 실패하면 도구에 오류에 대한 세부 정보가 표시됩니다. 다음과 같은 오류 유형이 표시될 수 있습니다.
- CPU: 높은 CPU 사용률 때문에 연결에 실패했습니다.
- Memory: 메모리 사용률이 높아 연결에 실패했습니다.
- GuestFirewall: Azure 외부의 방화벽이 연결을 차단했습니다.
- DNSResolution: 대상 IP 주소를 확인할 수 없습니다.
- NetworkSecurityRule: NSG가 연결을 차단했습니다.
- UserDefinedRoute: 라우팅 테이블에 잘못된 사용자 경로가 있습니다.
VPN 문제 해결
Network Watcher는 게이트웨이 및 연결 문제를 해결하는 기능을 제공합니다. 이 기능은 포털, PowerShell, Azure CLI 또는 REST API를 통해 호출할 수 있습니다. 호출되면 Network Watcher는 게이트웨이 또는 연결의 상태를 진단한 다음 적절한 결과를 반환합니다. 요청은 장기 실행 트랜잭션입니다. 반환되는 예비 결과는 리소스의 상태에 대한 전체적인 그림을 제공합니다.
다음 목록에서는 VPN 문제 해결 API를 호출하여 반환되는 값을 설명합니다.
- startTime: 문제 해결이 시작된 시간입니다.
- endTime: 문제 해결이 종료된 시간입니다.
- 코드: 이 값은
UnHealthy
단일 진단 오류가 있는 경우입니다. - 결과: 연결 또는 가상 네트워크 게이트웨이에서 반환된 결과 컬렉션입니다.
- id: 오류 유형입니다.
- 요약: 오류 요약입니다.
- detailed: 오류에 대한 자세한 설명입니다.
- recommendedActions: 수행할 권장 작업의 컬렉션입니다.
- actionText: 수행할 작업을 설명하는 텍스트입니다.
- actionUri: 수행할 작업을 설명하는 설명서의 URI입니다.
- actionUriText: 작업 텍스트에 대한 간단한 설명입니다.