Azure API Management의 IP 주소
적용 대상: 모든 API Management 계층
이 문서에서는 Azure API Management 서비스의 IP 주소를 검색하는 방법을 설명합니다. 서비스가 가상 네트워크에 있는 경우 IP 주소는 공용 또는 개인일 수 있습니다. IP 주소를 사용하여 방화벽 규칙을 만들거나 백 엔드 서비스로 들어오는 트래픽을 필터링하거나 아웃바운드 트래픽을 제한할 수 있습니다.
공용 IP 주소
개발자, 기본, 표준 또는 프리미엄 계층의 모든 API Management 서비스 인스턴스에는 공용 IP 주소가 있으며 이 주소는 해당 서비스 인스턴스에만 독점적으로 사용되며 다른 리소스와 공유되지 않습니다.
Azure Portal의 리소스 개요 대시보드에서 IP 주소를 검색할 수 있습니다.
다음 API 호출을 사용하여 프로그래밍 방식으로 가져올 수도 있습니다.
GET https://management.azure.com/subscriptions/<subscription-id>/resourceGroups/<resource-group>/providers/Microsoft.ApiManagement/service/<service-name>?api-version=<api-version>
공용 IP 주소는 응답의 일부입니다.
{
...
"properties": {
...
"publicIPAddresses": [
"13.77.143.53"
],
...
}
...
}
다중 지역 배포의 경우 각 지역 배포에는 하나의 공용 IP 주소가 있습니다.
VNet의 API Management 서비스에 대한 IP 주소
API Management 서비스가 가상 네트워크 내에 있는 경우 공용 및 개인이라는 두 가지 유형의 IP 주소를 가지게 됩니다.
공용 IP 주소는 구성을 관리하기 위해 포트
3443
에 대한 내부 통신에 사용됩니다(예: Azure Resource Manager를 통해). 외부 VNet 구성에서는 런타임 API 트래픽에도 사용됩니다. 내부 VNet 구성에서 공용 IP 주소는 Azure 내부 관리 작업에만 사용되며 인스턴스를 인터넷에 노출하지 않습니다.내부 VNet 모드에서만 사용 가능한 VIP(개인 가상 IP) 주소는 네트워크 내에서 API Management 엔드포인트-게이트웨이, 개발자 포털, 직접 API 액세스를 위한 관리 평면에 연결하는 데 사용됩니다. 네트워크 내에서 DNS 레코드를 설정하는 데 이를 사용할 수 있습니다.
Azure Portal 및 API 호출의 응답에 두 형식의 주소가 모두 표시됩니다.
GET https://management.azure.com/subscriptions/<subscription-id>/resourceGroups/<resource-group>/providers/Microsoft.ApiManagement/service/<service-name>?api-version=<api-version>
{
...
"properties": {
...
"publicIPAddresses": [
"13.85.20.170"
],
"privateIPAddresses": [
"192.168.1.5"
],
...
},
...
}
Important
내부 부하 분산 장치 및 API Management 단위의 개인 IP 주소는 동적으로 할당됩니다. 따라서 배포 전에 API Management 인스턴스의 개인 IP를 예상하는 것은 불가능합니다. 또한 다른 서브넷으로 변경한 다음, 반환하면 개인 IP 주소가 변경될 수 있습니다.
아웃바운드 트래픽의 IP 주소
API Management는 VNet 또는 피어링된 VNet 외부의 연결에 공용 IP 주소를 사용하고 VNet 또는 피어링된 VNet의 연결에 개인 IP 주소를 사용합니다.
API Management가 외부 또는 내부 가상 네트워크에 배포되고 API Management가 프라이빗(인트라넷 연결) 백 엔드에 연결되면 서브넷의 내부 IP 주소(동적 IP 또는 DIP 주소)가 런타임 API 트래픽에 사용됩니다. API Management에서 프라이빗 백 엔드로 요청이 전송되면 개인 IP 주소가 요청의 원본으로 표시됩니다.
따라서 IP 제한이 VNet 또는 피어링된 VNet 내의 보안 리소스를 나열하는 경우 (내부 모드에서) API Management 리소스와 연결된 개인 IP 주소 뿐만 아니라 IP 규칙과 함께 전체 API Management 서브넷 범위를 사용하는 것이 좋습니다.
API Management에서 퍼블릭(인터넷 연결) 백 엔드로 요청이 전송되면 항상 공용 IP 주소가 요청의 원본으로 표시됩니다.
소비, 기본 v2 및 표준 v2 계층 API Management 서비스의 IP 주소
공유 인프라에서 실행되는 서비스 계층에서 API Management 인스턴스를 만든 경우 전용 IP 주소가 없습니다. 현재 소비, 기본 v2, 표준 v2 서비스 계층의 인스턴스는 공유 인프라에서 실행되며 결정적 IP 주소 없이 실행됩니다.
소비, 기본 v2 또는 표준 v2 계층 인스턴스에서 사용하는 아웃바운드 IP 주소를 허용 목록에 추가해야 하는 경우 인스턴스의 데이터 센터(Azure 지역)를 허용 목록에 추가할 수 있습니다. 모든 Azure 데이터 센터의 IP 주소를 나열하는 JSON 파일을 다운로드 할 수 있습니다. 그런 다음, 인스턴스가 실행되는 지역에 적용되는 JSON 조각을 찾습니다.
예를 들어 다음과 같은 JSON 조각은 서유럽에 대한 허용 목록을 나타냅니다.
{
"name": "AzureCloud.westeurope",
"id": "AzureCloud.westeurope",
"properties": {
"changeNumber": 9,
"region": "westeurope",
"platform": "Azure",
"systemService": "",
"addressPrefixes": [
"13.69.0.0/17",
"13.73.128.0/18",
... Some IP addresses not shown here
"213.199.180.192/27",
"213.199.183.0/24"
]
}
}
이 파일이 업데이트되는 시기와 IP 주소가 변경되는 시기에 대한 내용은 다운로드 센터 페이지의 세부 정보 섹션을 펼쳐보세요.
IP 주소에 대한 변경 내용
API Management의 개발자, 기본, 표준 및 프리미엄 계층에서 VIP(공용 IP 주소) 및 개인 IP 주소(내부 VNet 모드로 구성된 경우)는 서비스의 수명 주기 동안 정적이며 다음과 같은 경우는 예외입니다.
API Management 서비스가 삭제된 후 다시 만들어집니다.
서비스 구독이 비활성화되거나 경고된 다음(예: 미지불), 복원되었습니다. 구독 상태에 대해 자세히 알아보기
(개발자 및 프리미엄 계층) Azure Virtual Network가 서비스에 추가되거나 서비스에서 제거됩니다.
(개발자 및 프리미엄 계층) API Management 서비스는 외부 및 내부 VNet 배포 모드 간에 전환됩니다.
(개발자 및 프리미엄 계층) API Management 서비스가 다른 서브넷으로 이동되거나,
stv1
에서stv2
컴퓨팅 플랫폼으로 마이그레이션되거나, 다른 공용 IP 주소 리소스로 구성됩니다.(프리미엄 계층) 가용성 영역이 사용하도록 설정, 추가 또는 제거됩니다.
(프리미엄 계층) 다중 지역 배포에서 지역이 비워졌다가 복원되면 지역 IP 주소가 변경됩니다.
Important
내부 가상 네트워크에서 외부 가상 네트워크로 변경하거나,
stv1
플랫폼에서stv2
플랫폼으로 마이그레이션하여 VNet에서 API Management 인스턴스를 업데이트하거나, 네트워크의 서브넷을 변경하면 다른 공용 IP 주소를 구성할 수 있습니다. 제공하지 않으면 Azure 관리 공용 IP 주소가 자동으로 구성됩니다.