.NET에 대한 릴리스 및 지원

Microsoft는 .NET용 주요 릴리스, 부 릴리스 및 서비스 업데이트(패치)를 제공합니다. 이 문서에서는 릴리스 종류, 서비스 업데이트, SDK 기능 밴드, 지원 기간, 지원 옵션 등을 설명합니다.

참고 항목

.NET Framework 버전 관리 및 지원에 대한 자세한 내용은 .NET Framework 수명 주기를 참조하세요.

릴리스 유형

각 릴리스 종류에 관한 정보는 버전 번호에 major.minor.patch 형식으로 인코딩됩니다.

예시:

  • .NET 6 및 .NET 7은 주요 릴리스입니다.
  • .NET Core 3.1은 .NET Core 3.0 주 버전 이후의 첫 번째 부 버전입니다.
  • .NET Core 5.0.15는 .NET 5에 대한 15번째 패치입니다.

릴리스된 .NET 버전 목록 및 .NET 배송 빈도에 대한 자세한 내용은 지원 정책을 참조하세요.

주 버전

주 버전에는 새로운 기능, 새 공용 API 노출 영역, 버그 수정이 포함됩니다. 예를 들어 .NET 6 및 .NET 7이 있습니다. 변경 내용의 특성으로 인해 해당 릴리스에는 호환성이 손상되는 변경이 포함될 것으로 예상됩니다. 주 버전은 이전 주 버전과 나란히 설치됩니다.

부 버전

부 버전에도 새로운 기능, 공용 API 노출 영역, 버그 픽스가 포함되며 호환성이 손상되는 변경도 포함될 수 있습니다. 예를 들어 .NET Core 3.1이 있습니다. 주 버전과 차이점은 변경의 크기가 더 작다는 것입니다. 애플리케이션을 .NET Core 3.0에서 3.1로 업그레이드하면 조금 개선됩니다. 부 버전은 이전 부 버전과 나란히 설치됩니다.

서비스 업데이트

서비스 업데이트(패치)는 거의 매월 제공되며 해당 업데이트에는 보안 및 비보안 버그 수정이 모두 포함됩니다. 예를 들어 .NET 5.0.8은 .NET 5의 8번째 업데이트였습니다. 해당 업데이트는 보안 수정을 포함하는 경우 항상 매월 두 번째 화요일인 “화요일 패치(Patch Tuesday)”에 릴리스됩니다. 서비스 업데이트는 호환성을 유지해야 합니다. .NET Core 3.1부터 서비스 업데이트는 이전 업데이트를 제거하는 업그레이드입니다. 예를 들어 3.1의 최신 서비스 업데이트를 설치하면 이전 3.1 업데이트가 제거됩니다.

기능 밴드(SDK만 해당)

.NET SDK의 버전 관리는 .NET 런타임과 약간 다릅니다. 새 Visual Studio 릴리스에 맞추기 위해 .NET SDK 업데이트에는 새로운 기능이나 MSBuild, NuGet 등과 같은 구성 요소의 새 버전이 포함되어 있을 수 있습니다. 이러한 새 기능이나 구성 요소는 동일한 주 또는 부 버전용 이전 SDK 업데이트에서 제공된 버전과 호환되지 않을 수 있습니다.

관련 업데이트를 구분하기 위해 .NET SDK에서는 기능 밴드라는 개념을 사용합니다. 예를 들어 첫 번째 .NET 5 SDK는 5.0.100이었습니다. 이 릴리스는 5.0.1xx 기능 밴드에 해당합니다. 기능 밴드는 버전 번호의 세 번째 섹션에 100~999 사이의 그룹으로 정의됩니다. 예를 들어 5.0.101 및 5.0.201은 서로 다른 두 기능 대역의 버전이며 5.0.101 및 5.0.199는 동일한 기능 밴드에 있습니다. .NET SDK 5.0.101이 설치되면 .NET SDK 5.1.100이 있는 경우 컴퓨터에서 제거됩니다. .NET SDK 5.0.200이 동일한 컴퓨터에 설치된 경우 .NET SDK 5.0.101은 제거되지 않습니다.

.NET SDK와 Visual Studio 버전 간의 관계에 대한 자세한 내용은 .NET SDK, MSBuild 및 Visual Studio 버전 관리참조하세요.

런타임 롤포워드 및 호환성

주 및 부 업데이트는 이전 버전과 나란히 설치됩니다. 특정 major.minor 버전을 대상으로 빌드된 애플리케이션은 최신 버전을 설치하더라도 해당하는 대상 런타임을 계속 사용합니다. 해당 동작을 옵트인하는 경우 외에는 앱이 최신 major.minor 버전의 런타임을 사용하도록 자동으로 롤포워드되지 않습니다. .NET Core 3.0을 대상으로 빌드된 애플리케이션은 .NET Core 3.1에서 자동으로 실행이 시작되지 않습니다. 앱을 다시 빌드하고 최신 주 또는 부 런타임 버전에 대해 테스트한 후 프로덕션으로 배포하는 것이 좋습니다. 자세한 내용은 프레임워크 종속 앱 롤포워드자체 포함 배포 런타임 롤포워드를 참조하세요.

서비스 업데이트는 주 및 부 버전과 다르게 처리됩니다. .NET 7을 대상으로 빌드된 애플리케이션은 기본적으로 7.0.0 런타임에서 실행됩니다. 서비스 업데이트가 설치될 때 최신 7.0.1 런타임을 사용하도록 자동으로 롤아웃됩니다. 이 동작이 기본값인 이유는 보안 수정이 설치되는 즉시 별도의 작업 없이 사용되도록 하기 위해서입니다. 해당 기본 롤포워드 동작을 옵트아웃할 수도 있습니다.

.NET 버전 수명 주기

.NET 버전은 .NET Framework 릴리스에 사용된 고정 수명 주기 대신 최신 수명 주기 채택합니다. 최신 수명 주기를 채택하는 제품은 서비스와 더 유사한 지원 모델을 사용하여 지원 기간은 더 짧지만 릴리스는 빈번합니다.

릴리스 트랙

릴리스의 지원 트랙은 두 가지입니다.

  • STS(표준 용어 지원) 릴리스

    이러한 버전은 다음 주 릴리스 또는 부 릴리스가 출시된 후 6개월까지 지원됩니다.

    예시:

    • .NET 5는 STS 릴리스이며 2020년 11월에 릴리스되었습니다. 2022년 5월까지 18개월 동안 지원되었습니다.
    • .NET 7은 STS 릴리스이며 2022년 11월에 릴리스되었습니다. 2024년 5월까지 18개월 동안 지원됩니다.
  • ‘LTS(장기 지원)’ 릴리스

    해당 버전은 최소 3년간 또는 다음 LTS 릴리스가 제공되고 1년 후까지 중 나중 시점까지 지원됩니다.

    예시:

    • .NET Core 3.1은 LTS 릴리스이며 2019년 12월에 릴리스되었습니다. 2022년 12월까지 3년간 지원되었습니다.
    • .NET 6은 LTS 릴리스이며 2021년 11월에 릴리스되었습니다. 2024년 11월까지 3년 동안 지원됩니다.

릴리스는 LTS와 STS를 번갈아 사용하므로 이전 릴리스가 이후 릴리스보다 더 오래 지원될 수 있습니다. 예를 들어 .NET Core 3.1은 2022년 12월까지 지원되는 LTS 릴리스였습니다. .NET 5 릴리스는 거의 1년 후에 출시되었지만 2022년 5월에 지원이 중단되었습니다.

서비스 업데이트는 매달 제공되며 보안 및 비보안(신뢰성, 호환성, 안정성) 수정을 모두 포함합니다. 서비스 업데이트는 다음 서비스 업데이트가 릴리스될 때까지 지원됩니다. 서비스 업데이트에는 런타임 롤포워드 동작이 제공됩니다. 즉, 애플리케이션은 기본적으로 설치된 최신 런타임 서비스 업데이트에서 실행되도록 설정됩니다.

릴리스를 선택하는 방법

서비스를 빌드하고 정기적으로 계속 업데이트해야 하는 경우 .NET 7 런타임과 같은 STS 릴리스가 .NET에서 제공하는 최신 기능을 최신 상태로 유지하는 가장 좋은 옵션이 될 수 있습니다.

소비자에게 배포할 클라이언트 애플리케이션을 빌드하는 경우 안정성이 최신 기능에 액세스하는 것보다 더 중요할 수 있습니다. 소비자가 애플리케이션의 다음 버전으로 업그레이드하기 전까지 일정 기간 애플리케이션을 지원해야 할 수 있습니다. 이 경우 .NET 6 런타임과 같은 LTS 릴리스가 올바른 옵션이 될 수 있습니다.

참고 항목

STS 릴리스인 경우에도 사용 가능한 모든 런타임을 대상으로 할 수 있으므로 최신 SDK 버전으로 업그레이드하는 것이 좋습니다.

서비스 업데이트 지원

.NET 서비스 업데이트는 다음 서비스 업데이트가 릴리스될 때까지 지원됩니다. 릴리스 주기는 매월입니다.

앱을 안전하고 지원되는 상태로 유지하기 위해 정기적으로 서비스 업데이트를 설치해야 합니다. 예를 들어 .NET 7에 대한 최신 서비스 업데이트가 7.0.8이고 7.0.9를 제공한다면 7.0.8은 더 이상 최신 업데이트가 아닙니다. .NET 7에 대해 지원되는 서비스 수준은 7.0.9입니다.

각 주 및 부 버전의 최신 서비스 업데이트에 대한 자세한 내용은 .NET 다운로드 페이지를 참조하세요.

지원 종료

지원 종료일이란 해당 날짜 이후에 Microsoft에서 제품 버전을 위한 수정, 업데이트, 기술 지원을 더 이상 제공하지 않는 날짜를 나타냅니다. 해당 날짜 이전에 지원되는 버전을 사용하도록 이동해야 합니다. 지원되지 않는 버전은 애플리케이션과 데이터를 보호하는 보안 업데이트를 더 이상 받을 수 없습니다. 각 .NET 버전에 대해 지원되는 날짜 범위는 지원 정책을 참조하세요.

지원되는 운영 체제

.NET은 다양한 운영 체제에서 실행할 수 있습니다. 각 관련 운영 체제의 수명 주기는 스폰서 조직(Microsoft, Red Hat, Apple 등)에서 정의합니다. Microsoft는 운영 체제 버전의 지원을 추가하거나 제거할 때 해당 수명 주기 일정을 고려합니다.

운영 체제 버전의 지원이 중단되면 해당 버전의 테스트와 해당 버전의 지원 제공이 중지됩니다. 지원을 받으려면 사용자가 지원되는 운영 체제 버전으로 이동해야 합니다.

자세한 내용은 .NET OS Lifecycle Policy(.NET OS 수명 주기 정책)를 참조하세요.

지원 받기

Microsoft 보조 지원과 커뮤니티 지원 중에서 선택할 수 있습니다.

Microsoft 지원

보조 지원을 받으려면 Microsoft 지원 전문가에게 문의하세요.

지원을 받으려면 지원되는 서비스 수준(사용 가능한 최신 서비스 업데이트)에 있어야 합니다. 시스템이 .NET 7을 실행하고 7.0.8 서비스 업데이트가 릴리스된 경우 첫 번째 단계로 7.0.8을 설치해야 합니다.

커뮤니티 지원

커뮤니티 지원을 받으려면 커뮤니티 페이지를 참조하세요.