Windows.Networking 네임스페이스
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
네트워크 앱에서 사용하는 호스트 이름 및 엔드포인트에 대한 액세스를 제공합니다.
클래스
EndpointPair |
네트워크 앱에서 사용하는 네트워크 연결에 대한 로컬 엔드포인트 및 원격 엔드포인트에 대한 데이터를 제공합니다. |
HostName |
호스트 이름 또는 IP 주소에 대한 데이터를 제공합니다. |
열거형
DomainNameType |
HostNameType이 도메인 이름인 경우 HostName 개체의 도메인 형식입니다. |
HostNameSortOptions |
EndpointPair 개체 목록을 정렬하는 방법에 대한 옵션입니다. |
HostNameType |
HostName 개체의 형식입니다. |
설명
Windows.Networking 네임스페이스는 호스트 이름 또는 IP 주소 및 네트워크 앱에서 사용되는 네트워크 엔드포인트 쌍에 대한 데이터를 초기화하고 제공하는 데 사용되는 클래스를 제공합니다. HostName 및 EndpointPair 개체는 다른 관련 네임스페이스의 많은 클래스에서 사용됩니다. 여기에는 다음과 같은 옵션이 포함됩니다.
- 소켓 및 WebSocket을 사용하는 네트워크 앱에 사용되는 Windows.Networking.Sockets 네임스페이스의 클래스입니다.
- Windows.Networking.Connectivity 네임스페이스의 NetworkInformation 클래스입니다.
Windows Server 2012에서는 Media Foundation 기능을 사용하지 않는 한 Windows.Networking 네임스페이스에서 클래스를 구현하는Windows.Networking.dll로드되지 않습니다. 따라서 Media Foundation 기능을 사용하지 않도록 설정하면 Windows.Networking 네임스페이스의 클래스를 사용하는 앱이 실패합니다(Windows Server 2012의 기본값).
Media Foundation 기능은 서버 관리자 사용하거나 CMD 창 또는 스크립트에 다음 명령을 입력하여 Windows Server 2012에서 사용하도록 설정할 수 있습니다.
dism /online /enable-feature /featurename:ServerMediaFoundation
Windows Server 2012에서 Media Foundation 기능을 사용하도록 설정한 후 사용자에게 다시 부팅하라는 메시지가 표시됩니다. 컴퓨터를 다시 부팅하면 Windows.Networking 네임스페이스의 클래스가 예상대로 작동합니다.
네트워크 격리 사용
Windows 8의 네트워크 격리 기능을 사용하면 개발자가 UWP 앱의 네트워크 액세스를 완전히 제어할 수 있습니다. 일부 앱은 네트워크에 대한 액세스 권한이 필요하지 않을 수 있습니다. 그러나 이러한 앱의 경우 Windows 8은 적절한 기능을 선택하여 사용하도록 설정할 수 있는 네트워크에 대한 다양한 수준의 액세스를 제공합니다.
개발자는 네트워크 격리를 통해 각 앱에 대해 필요한 네트워크 액세스 범위를 정의할 수 있습니다. 적절한 범위가 정의되지 않은 앱은 지정된 유형의 네트워크와 특정 유형의 네트워크 요청(클라이언트가 시작한 아웃바운드 요청 또는 원치 않는 인바운드 요청과 클라이언트가 시작한 아웃바운드 요청 모두)에 액세스할 수 없습니다. 네트워크 격리를 설정하고 적용할 수 있게 되면 앱이 손상되었을 경우 명시적으로 액세스가 허용된 네트워크에만 액세스하도록 할 수 있습니다. 이렇게 하면 다른 앱과 Windows에 미치는 영향의 scope 크게 줄어듭니다.
네트워크 격리는 네트워크에 액세스하려는 Windows.Networking.Sockets, Windows.Networking.BackgroundTransfer, Windows.Web.AtomPub 및 Windows.Web.Syndication 네임스페이스의 메서드와 속성에 영향을 줍니다. Windows에서는 적극적으로 네트워크 격리가 적용됩니다. 적절한 네트워크 기능을 사용하도록 설정하지 않은 경우 네트워크 격리로 인해 네트워크 액세스를 초래하는 메서드 또는 이러한 네임스페이스의 속성에 대한 액세스가 실패할 수 있습니다.
앱의 네트워크 접근 권한 값은 앱을 빌드할 때 앱 매니페스트에 구성됩니다. 네트워크 기능은 일반적으로 앱을 개발할 때 Microsoft Visual Studio 2012를 사용하여 추가됩니다. 텍스트 편집기를 사용하여 앱 매니페스트 파일에서 수동으로 네트워크 접근 권한 값을 설정할 수도 있습니다.
네트워크 격리에 대한 자세한 내용은 네트워크 격리 기능을 구성하는 방법을 참조하세요.