> For the complete documentation index, see [llms.txt](https://docs.verge.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.verge.io/knowledge-base/vi/tenants/configuring-tenant-external-ips.md).

# Hướng dẫn nhanh về IP ngoài của Tenant

## Tổng quan

Hướng dẫn này bao gồm các tình huống phổ biến nhất để cung cấp địa chỉ IP bên ngoài/công cộng cho các VM chạy bên trong tenant VergeOS. Cho dù bạn cần một VM đơn lẻ có thể truy cập từ internet hay cả một khối IP cho một khách hàng, hướng dẫn này sẽ hướng dẫn từng bước cấu hình.

{% hint style="info" %}
**Tài liệu liên quan**

Đối với các tình huống nâng cao hơn, bao gồm cổng switch ảo và cấu hình NAT chi tiết, xem [Cách sử dụng IP bên ngoài trong tenant](/knowledge-base/vi/networking/how-to-use-external-ips-in-tenants.md).
{% endhint %}

## Điều kiện tiên quyết

* Một hệ thống VergeOS với ít nhất một tenant đã được cấu hình
* Các địa chỉ IP công cộng/bên ngoài sẵn có trên mạng External gốc của bạn
* Quyền truy cập quản trị vào cả môi trường gốc và tenant

## Kịch bản 1: Một IP bên ngoài duy nhất cho một VM của tenant

**Trường hợp sử dụng:** Bạn có một IP công cộng và muốn một VM tenant cụ thể có thể truy cập từ internet (ví dụ: cho RDP, SSH hoặc dịch vụ web).

### Bước 1: Gán IP cho Tenant (Cấp gốc)

1. Điều hướng tới **Mạng** > **Bên ngoài** (mạng bên ngoài gốc của bạn)
2. Nhấp **Địa chỉ IP** trong menu bên trái
3. Nhấp **Mới** để thêm một địa chỉ IP mới
4. Cấu hình:
   * **Loại:** IP ảo
   * **Địa chỉ IP:** Nhập IP công cộng của bạn (ví dụ, `203.0.113.50`)
   * **Loại chủ sở hữu:** thuê bao
   * **Chủ sở hữu:** Chọn tenant của bạn
5. Nhấp **Gửi**
6. Quay lại bảng điều khiển mạng Bên ngoài và nhấp **Áp dụng quy tắc**

### Bước 2: Gán IP cho Mạng Tenant (Cấp tenant)

1. Đăng nhập vào giao diện người dùng tenant
2. Điều hướng tới **Mạng** > **Bên ngoài**
3. Nhấp **Địa chỉ IP** - bạn sẽ thấy IP với mô tả "IP bên ngoài từ nhà cung cấp dịch vụ"
4. Chọn IP và nhấp **Chỉnh sửa**
5. Đặt:
   * **Loại chủ sở hữu:** Mạng
   * **Chủ sở hữu:** Chọn mạng nội bộ nơi VM của bạn được kết nối
6. Nhấp **Gửi**
7. Nhấp **Áp dụng quy tắc** trên mạng Bên ngoài

### Bước 3: Tạo quy tắc NAT cho VM

Trên **mạng nội bộ** (nơi VM của bạn được kết nối):

1. Điều hướng tới **Quy tắc** trong menu bên trái
2. Tạo một **quy tắc DNAT** (lưu lượng đến):
   * **Tên:** `Đầu vào tới VM`
   * **Hành động:** Dịch
   * **Hướng:** Vào
   * **Loại đích:** Địa chỉ IP của tôi
   * **Đích:** Chọn IP bên ngoài
   * **Loại đích:** IP/Tùy chỉnh
   * **Mục tiêu:** Nhập IP nội bộ của VM (ví dụ, `10.0.0.50`)
3. Tạo một **quy tắc SNAT** (lưu lượng đi):
   * **Tên:** `Đầu ra từ VM`
   * **Hành động:** Dịch
   * **Hướng:** Đi ra
   * **Loại nguồn:** IP/Tùy chỉnh
   * **Nguồn:** Nhập IP nội bộ của VM
   * **Loại đích:** Địa chỉ IP của tôi
   * **Mục tiêu:** Chọn IP bên ngoài
   * **Ghim:** Đầu trang
4. Nhấp **Áp dụng quy tắc**

### Bước 4: Cho phép lưu lượng qua tường lửa

Vẫn ở các quy tắc mạng nội bộ của tenant:

1. Tạo một **quy tắc Chấp nhận** cho dịch vụ của bạn:
   * **Tên:** `Cho phép RDP` (hoặc dịch vụ của bạn)
   * **Hành động:** Chấp nhận
   * **Giao thức:** TCP
   * **Cổng đích:** 3389 (hoặc cổng dịch vụ của bạn)
   * **Loại đích:** Địa chỉ IP của tôi
   * **Đích:** Chọn IP bên ngoài
2. Nhấp **Áp dụng quy tắc**

VM của bạn giờ đây sẽ có thể truy cập từ internet trên cổng đã chỉ định.

***

## Kịch bản 2: Khối IP cho nhiều VM tenant

**Trường hợp sử dụng:** Bạn có một khối IP công cộng /29 hoặc lớn hơn và muốn gán trực tiếp chúng cho các VM.

### Bước 1: Tạo một khối mạng (Cấp gốc)

1. Điều hướng tới **Mạng** > **Bên ngoài**
2. Nhấp **Khối mạng** trong menu bên trái
3. Nhấp **Mới**
4. Cấu hình:
   * **Khối mạng:** Nhập khối CIDR của bạn (ví dụ, `203.0.113.48/29`)
   * **Loại chủ sở hữu:** thuê bao
   * **Chủ sở hữu:** Chọn tenant của bạn
5. Nhấp **Gửi**
6. Nhấp **Áp dụng quy tắc**
7. Điều hướng tới **Mạng Tenant**, lọc theo "Cần áp dụng FW: Có"
8. Chọn mạng của tenant và nhấp **Áp dụng quy tắc**

### Bước 2: Tạo mạng từ khối (Cấp tenant)

1. Đăng nhập vào giao diện người dùng tenant
2. Điều hướng tới **Mạng** > **Bên ngoài**
3. Nhấp **Khối mạng** - bạn sẽ thấy khối của bạn
4. Chọn khối và nhấp **Mạng mới**
5. Các cài đặt mạng được cấu hình sẵn với:
   * **Loại địa chỉ:** Tĩnh (với cách đánh địa chỉ của khối bạn)
   * **DHCP:** Đã bật với các IP khả dụng
6. Đặt cho mạng một **Tên** (ví dụ, `Mạng-Công khai`)
7. Nhấp **Gửi**
8. Nhấp **Bật nguồn** để khởi động mạng

### Bước 3: Kết nối VM

1. Chỉnh sửa VM của bạn và thêm một NIC được kết nối với mạng công khai mới
2. VM có thể:
   * Dùng DHCP để nhận IP tự động
   * Được cấu hình với IP tĩnh từ khối

{% hint style="success" %}
**Lưu ý về tường lửa**

Các VM trên mạng công khai được công khai trực tiếp. Hãy cấu hình quy tắc tường lửa trên mạng hoặc trong hệ điều hành khách để hạn chế quyền truy cập.
{% endhint %}

***

## Kịch bản 3: Truy cập bên ngoài mà không có IP công cộng trên VM

**Trường hợp sử dụng:** Bạn muốn người dùng internet truy cập vào một VM tenant, nhưng VM đó phải giữ IP riêng của nó.

Đây giống như Kịch bản 1 nhưng chỉ dùng các quy tắc DNAT/SNAT. VM giữ IP nội bộ của nó trong khi các quy tắc NAT dịch lưu lượng.

**Ưu điểm:**

* VM không cần biết về IP công cộng
* Cấu hình VM đơn giản hơn
* Có thể thay đổi IP công cộng mà không cần cấu hình lại VM

***

## Khắc phục sự cố

### VM không thể truy cập từ internet

1. **Kiểm tra việc áp dụng quy tắc:** Đảm bảo đã nhấp "Áp dụng quy tắc" trên tất cả các mạng bị ảnh hưởng
2. **Xác minh chuỗi sở hữu IP:** Mạng bên ngoài gốc → Mạng bên ngoài tenant → Mạng nội bộ tenant
3. **Kiểm tra các quy tắc NAT:** Cần cả DNAT (vào) và SNAT (ra)
4. **Hãy thử nội bộ trước:** Bạn có thể truy cập VM từ bên trong tenant không?
5. **Xem lại các quy tắc tường lửa:** Lưu lượng có bị chặn trước khi đến NAT không?

### VM không thể truy cập internet

1. **Kiểm tra quy tắc SNAT:** Đảm bảo đã cấu hình dịch ra ngoài
2. **Xác minh tuyến mặc định:** Mạng External của tenant cần định tuyến phù hợp
3. **Kiểm tra DNS:** Xác minh DNS đã được cấu hình trên VM hoặc DHCP đang cung cấp nó

### Ping hoạt động nhưng dịch vụ thì không

1. **Kiểm tra các quy tắc theo cổng:** Cần các quy tắc Chấp nhận cho từng cổng dịch vụ
2. **Xác minh dịch vụ đang chạy:** Kiểm tra dịch vụ đang lắng nghe trên VM
3. **Kiểm tra tường lửa của máy khách:** Windows Firewall hoặc iptables có thể đang chặn

***

## Tham khảo nhanh

| Tác vụ             | Vị trí                        | Hành động                           |
| ------------------ | ----------------------------- | ----------------------------------- |
| Gán IP cho tenant  | Bên ngoài gốc > Địa chỉ IP    | Đặt Loại chủ sở hữu: Tenant         |
| Gán IP cho mạng    | Bên ngoài tenant > Địa chỉ IP | Đặt Loại chủ sở hữu: Mạng           |
| Tạo quy tắc DNAT   | Nội bộ tenant > Quy tắc       | Hành động: Dịch, Hướng: Vào         |
| Tạo quy tắc SNAT   | Nội bộ tenant > Quy tắc       | Hành động: Dịch, Hướng: Ra          |
| Cho phép lưu lượng | Nội bộ tenant > Quy tắc       | Hành động: Chấp nhận, chỉ định cổng |


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.verge.io/knowledge-base/vi/tenants/configuring-tenant-external-ips.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
