> For the complete documentation index, see [llms.txt](https://ia-cloud.gitbook.io/cloudia-manual/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://ia-cloud.gitbook.io/cloudia-manual/network/floating-ip.md).

# 플로팅 IP

`플로팅 IP`는 외부 IP를 특정 내부 리소스에 직접 연결하는 가상 IP 리소스입니다. 주로 인스턴스나 특정 내부 IP에 고정된 외부 접근 지점을 부여할 때 사용합니다.

## 화면 개요

* `목록 화면`: 플로팅 IP 현황을 조회하고 생성, 편집, 삭제를 수행합니다.
* `상세 화면`: 연결 대상과 외부 IP 정보를 확인하고, 리소스 연결/해제를 수행합니다.
* `생성 화면`: 이름, VPC, 외부 IP, 초기 연결 대상 여부를 설정합니다.
* `편집 화면`: 기본 정보와 일부 네트워크 정보를 수정합니다.

## 플로팅 IP 목록

### 주요 작업

* `생성`: 새로운 플로팅 IP를 생성합니다.
* `편집`: 선택한 1개 플로팅 IP를 편집합니다.
* `삭제`: 선택한 플로팅 IP를 삭제합니다. 연결된 리소스가 없는 항목만 삭제할 수 있습니다.

### 테이블 컬럼

| 컬럼           | 설명                                              |
| ------------ | ----------------------------------------------- |
| **이름**       | 플로팅 IP 이름입니다. **클릭하면 상세 화면으로 이동**합니다.           |
| **ID**       | 플로팅 IP 고유 ID입니다.                                |
| **VPC**      | 소속 VPC의 이름입니다.                                  |
| **외부 IP 주소** | 할당된 외부 IP 주소입니다.                                |
| **타겟 유형**    | 현재 연결 대상 유형입니다. `인스턴스`, `IP 주소`, 또는 `-`로 표시됩니다. |
| **연결된 리소스**  | 연결된 리소스 이름 또는 IP 정보입니다.                         |
| **생성 일시**    | 플로팅 IP가 생성된 날짜와 시각입니다.                          |

#### 목록 화면에서 확인할 사항

* `타겟 유형`과 `연결된 리소스`를 보면 현재 실제 서비스에 연결 중인지 빠르게 판단할 수 있습니다.
* 삭제 가능 여부는 연결 대상 존재 여부와 직접 연결됩니다.

***

## 플로팅 IP 상세

### 상단 요약

상세 화면에서는 다음 정보를 확인할 수 있습니다.

* **이름**: 플로팅 IP 이름입니다.
* **ID**: 플로팅 IP 고유 ID입니다.
* **VPC**: 소속 VPC의 이름입니다.
* **외부 IP 주소**: 할당된 외부 IP 주소입니다.
* **타겟 유형**: 현재 연결 대상 유형입니다. `인스턴스`, `IP 주소`, 또는 `-`로 표시됩니다.
* **연결된 리소스**: 연결된 리소스 이름 또는 IP 정보입니다.
* **설명**: 플로팅 IP에 대한 설명입니다.
* **생성 일시**: 플로팅 IP가 생성된 날짜와 시각입니다.

### 상단 작업 버튼

* 연결 대상이 없으면 `리소스 연결`
* 연결 대상이 있으면 `리소스 연결 해제`

### 리소스 연결/해제 동작

* `리소스 연결` 모달에서는 `인스턴스` 또는 `IP 주소`를 대상으로 선택할 수 있습니다.
* `인스턴스`를 선택하면 인스턴스와 연결할 인터페이스 IP를 함께 지정합니다.
* `IP 주소`를 선택하면 VPC 내부 IP를 직접 선택합니다.
* `리소스 연결 해제`는 확인 후 즉시 수행됩니다.
* 플로팅 IP가 가상머신에 연결된 상태에서 해당 가상머신이 삭제되면, 플로팅 IP 연결은 자동으로 해제됩니다.
* 이 경우 플로팅 IP 리소스 자체가 함께 삭제되지는 않으며, 연결 대상이 없는 상태로 유지됩니다.

***

## 플로팅 IP 생성

### 기본 정보

* **이름**: 플로팅 IP 리소스를 식별하는 이름입니다.
* **설명**: 외부 노출 목적, 연결 대상, 운영 메모를 적습니다.

### 네트워크 정보

* **VPC**: 플로팅 IP가 속할 VPC를 선택합니다.
* **외부 IP 주소**: `자동 할당` 또는 `수동 할당` 방식으로 외부 IP 주소를 정합니다.

### 대상 리소스

* **리소스 연결**: 생성과 동시에 내부 리소스에 연결할지 결정합니다.
* **타겟 유형**: 연결 대상을 `인스턴스` 또는 `IP 주소`로 선택합니다.
* **인스턴스 / 내부 IP 주소**: 인스턴스에 연결할 경우 대상 인스턴스와 실제 인터페이스 IP를 함께 지정합니다.
* **내부 IP 주소**: 내부 IP에 직접 연결할 경우 VPC 내부 IP를 지정합니다.

### 입력 필드 유효성

| 필드           | 허용 값                              | 검증 규칙                                                                                                     | 비고                               |
| ------------ | --------------------------------- | --------------------------------------------------------------------------------------------------------- | -------------------------------- |
| **이름**       | 영문, 숫자, `-`, `_` 조합의 문자열          | 필수입니다. 80자 이내로 입력합니다.                                                                                     | 플로팅 IP 식별용 이름입니다.                |
| **설명**       | 최대 200자 문자열                       | 선택 입력입니다. 200자를 초과할 수 없습니다.                                                                               | 운영 메모용입니다.                       |
| **VPC**      | 현재 프로젝트의 VPC                      | 필수입니다. 선택한 VPC 기준으로 연결 가능한 내부 리소스 목록이 바뀝니다.                                                               | 플로팅 IP 소속 네트워크입니다.               |
| **외부 IP 주소** | `자동 할당`, `수동 할당`                  | 필수입니다. `수동 할당`은 외부 IP 풀에서 외부 IP를 선택합니다. `자동 할당`은 외부 IP 풀의 시작 IP가 작은 풀부터, 각 풀 내부도 시작 IP부터 순서대로 빈 주소를 찾습니다. | 생성 시점에 외부 IP를 확정합니다.             |
| **리소스 연결**   | `적용`, `적용 안함`                     | 필수입니다. `적용`을 선택해야 연결 대상 입력 필드가 활성화됩니다.                                                                    | 생성과 동시에 리소스 연결 여부를 결정합니다.        |
| **타겟 유형**    | `인스턴스`, `IP 주소`                   | `적용` 선택 시 필수입니다.                                                                                          | 연결 대상을 지정할 때만 사용합니다.             |
| **인스턴스**     | 선택한 VPC의 인스턴스                     | `타겟 유형`이 `인스턴스`일 때 필수입니다.                                                                                 | 인스턴스 선택 후 인터페이스 IP를 함께 지정해야 합니다. |
| **내부 IP 주소** | 선택한 인스턴스에 연결된 IP 또는 선택한 VPC 내부 IP | 필수입니다. `타겟 유형`이 `인스턴스`일 때는 선택한 인스턴스 소속 IP만 선택할 수 있고, `타겟 유형`이 `IP 주소`일 때는 선택한 VPC 소속 IP만 선택할 수 있습니다.      | 실제 연결 대상 내부 IP입니다.               |

`자동 할당`을 선택하면 외부 IP는 관리자 `외부 IP 풀` 기준으로 가장 앞선 사용 가능 주소가 할당됩니다. 즉, `시작 IP`가 작은 풀을 먼저 보고, 각 풀 내부에서도 `시작 IP -> 종료 IP` 순으로 빈 주소를 찾습니다.

### 대상 리소스 설정

생성 화면에서 필요하면 즉시 내부 리소스에 연결할 수 있습니다.

* **리소스 연결**: `적용` / `적용 안함`
* **타겟 유형**: `인스턴스` 또는 `IP 주소`
* **인스턴스 선택 시**: 인스턴스와 인터페이스 IP를 모두 선택합니다.
* **내부 IP 주소 선택 시**: VPC 내부 IP를 직접 선택합니다.

#### 생성 시 활용 예시

* 특정 인스턴스에 고정 외부 IP를 직접 연결하고 싶을 때
* 플로팅 IP를 먼저 확보해 두고 나중에 서비스 대상만 바꿔 연결할 때

### 운영 시 주의사항

* 현재 Cloud:iA는 플로팅 IP 연결 시 가상머신의 실행 상태를 별도로 검사하지 않으므로, `실행 중`이 아닌 가상머신에도 연결할 수 있습니다.
* 다만 가상머신이 `종료됨`, `중지됨`, 비정상 상태이거나 내부 서비스가 실행 중이 아니면 외부에서 접속되지 않을 수 있습니다.
* 플로팅 IP가 연결된 인터페이스가 속한 퍼블릭 서브넷은 프라이빗 서브넷으로 변경할 수 없습니다.
* 서브넷을 프라이빗으로 변경하려면 먼저 해당 플로팅 IP 연결을 해제해야 합니다.

### 외부 접속이 되지 않을 때 확인 사항

플로팅 IP가 정상적으로 연결되어 있고 가상머신 상태와 내부 서비스가 정상이어도, 보안그룹 인바운드 규칙에서 해당 접속을 허용하지 않으면 외부에서 접속할 수 없습니다.

* 접속에 사용한 프로토콜(`TCP`, `UDP`)이 보안그룹에 허용되어 있는지 확인합니다.
* 내부 서비스 포트가 보안그룹 인바운드 규칙에 포함되어 있는지 확인합니다.
* 외부에서 접속하는 IP 또는 CIDR 대역이 보안그룹 허용 범위에 포함되어 있는지 확인합니다.
* 필요한 경우 `보안그룹` 메뉴에서 인바운드 규칙을 확인하거나 수정합니다.

***

## 플로팅 IP 편집

### 편집 항목

편집 화면에서는 항상 다음 항목을 수정할 수 있습니다.

* **이름**: 플로팅 IP 식별용 이름을 수정합니다.
* **설명**: 운영 메모를 수정합니다.

다음 항목은 **연결된 리소스가 없을 때만** 변경할 수 있습니다.

* **VPC**: 아직 어떤 리소스에도 연결되지 않았을 때만 변경합니다.
* **외부 IP**: 아직 어떤 리소스에도 연결되지 않았을 때만 변경합니다.

### 편집 입력 필드 유효성

| 필드           | 허용 값                     | 검증 규칙                       | 비고                                   |
| ------------ | ------------------------ | --------------------------- | ------------------------------------ |
| **이름**       | 영문, 숫자, `-`, `_` 조합의 문자열 | 필수입니다. 80자 이내로 입력합니다.       | 항상 수정 가능합니다.                         |
| **설명**       | 최대 200자 문자열              | 선택 입력입니다. 200자를 초과할 수 없습니다. | 항상 수정 가능합니다.                         |
| **VPC**      | 현재 프로젝트의 VPC             | 연결된 리소스가 없을 때만 변경할 수 있습니다.  | 연결 상태에서는 비활성화됩니다.                    |
| **외부 IP 주소** | `자동 할당`, `수동 할당`         | 연결된 리소스가 없을 때만 변경할 수 있습니다.  | 연결 상태에서는 비활성화됩니다.                    |
| **연결 대상**    | 기존 연결 정보                 | 편집 화면에서 변경할 수 없습니다.         | 상세 화면의 `리소스 연결`, `리소스 연결 해제`로 관리합니다. |

### 편집 시 주의사항

* 편집 화면에서는 연결 대상 자체를 바꾸지 않습니다.
* 연결 대상 변경이 필요하면 상세 화면에서 `리소스 연결 해제` 후 다시 `리소스 연결`을 수행해야 합니다.
* 연결된 상태에서는 VPC와 외부 IP를 변경할 수 없다는 경고가 표시됩니다.

***

## 플로팅 IP 삭제

* 여러 개를 선택해 삭제할 수 있습니다.
* 연결된 리소스가 있는 플로팅 IP는 삭제할 수 없습니다.
* 삭제 전에 상세 화면에서 먼저 리소스 연결을 해제해야 합니다.

⚠️ **주의:** 플로팅 IP 삭제는 **복구할 수 없습니다.** 삭제 전에 반드시 해당 플로팅 IP의 용도를 확인한 후 삭제하세요.

### 삭제 전 점검 순서

1. 상세 화면에서 `타겟 유형`과 `연결된 리소스`를 확인합니다.
2. 연결된 대상이 있으면 `리소스 연결 해제`를 수행합니다.
3. 이후 삭제를 진행합니다.
