> 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/learn-the-platform/vi/module-4-networking/03-internal-networks.md).

# Mạng nội bộ & DHCP/DNS

## Mạng nội bộ là gì?

**Mạng nội bộ** là các mạng ảo được tạo bên trong VergeOS — từ giao diện người dùng hoặc qua API — cung cấp các phân đoạn Layer 2/Layer 3 cô lập cho khối lượng công việc VM. Chúng là khối xây dựng chính cho mạng ứng dụng và phân đoạn khối lượng công việc.

Mỗi mạng nội bộ đều **an toàn mặc định**: khi mới được tạo, không có lưu lượng nào đi vào hay đi ra cho đến khi bạn chủ động thêm các quy tắc mạng để cho phép. Điểm khởi đầu zero-trust này có nghĩa là mọi mạng nội bộ đều là một ranh giới bảo mật khép kín ngay từ khi nó tồn tại.

Mạng nội bộ có thể được tạo theo một trong hai loại:

| Loại                    | Thiết lập loại địa chỉ IP | Khả năng                                                                                                                     |
| ----------------------- | ------------------------- | ---------------------------------------------------------------------------------------------------------------------------- |
| **Lớp 3** (khuyến nghị) | Tĩnh                      | Quản lý mạng đầy đủ — DHCP, DNS, định tuyến, tường lửa, giới hạn tốc độ — tất cả được quản lý trong VergeOS                  |
| **Lớp 2**               | Không                     | VergeOS quản lý kết nối đến Layer 2; các dịch vụ ở cấp IP (DHCP, DNS, định tuyến) được xử lý bởi các thiết bị của bên thứ ba |

Mạng nội bộ Layer 3 là lựa chọn tiêu chuẩn cho hầu hết khối lượng công việc. Phần còn lại của trang này tập trung vào các khả năng mạng Layer 3.

## Tạo một Mạng Nội bộ

Để tạo một mạng nội bộ mới:

1. Đi tới **Mạng → Bảng điều khiển** và nhấp vào **Mạng nội bộ** liên kết nhanh
2. Nhấp vào **Mạng nội bộ mới** từ menu bên trái
3. Cấu hình các cài đặt thiết yếu:

| Cài đặt             | Mô tả                                                                                                                 |
| ------------------- | --------------------------------------------------------------------------------------------------------------------- |
| **Tên**             | Bắt buộc. Có thể dùng dấu cách, nhưng khuyến nghị tên ngắn gọn không có dấu cách để dễ viết script và sử dụng API hơn |
| **Mô tả**           | Văn bản mô tả tùy chọn                                                                                                |
| **Nhóm HA**         | Gán mạng vào một nhóm sẵn sàng cao — hệ thống chạy các mạng được nhóm trên các nút vật lý khác nhau                   |
| **Cụm**             | Chọn cụm để chạy mạng, hoặc để mặc định                                                                               |
| **Cụm dự phòng**    | Xác định một cụm dự phòng nếu cụm chính không khả dụng                                                                |
| **Nút ưu tiên**     | Chỉ định nút được ưu tiên đầu tiên cho mạng này                                                                       |
| **Sao chép cổng**   | Tắt (mặc định), North/South (chỉ lưu lượng router), hoặc East/West (mọi lưu lượng kể cả VM-to-VM)                     |
| **Loại địa chỉ IP** | **Tĩnh** cho Layer 3 (khuyến nghị) hoặc **Không** cho Layer 2                                                         |
| **Cổng mặc định**   | Chọn một mạng ngoài để tự động tạo quy tắc định tuyến cho truy cập internet                                           |
| **Khi mất nguồn**   | Trạng thái cuối, Để tắt, hoặc Bật nguồn                                                                               |

### Địa chỉ mặc định

Theo mặc định, một mạng nội bộ Layer 3 mới được gán:

* **Phân đoạn mạng:** `192.168.0.0/24`
* **Địa chỉ IP của bộ định tuyến:** `192.168.0.1`

Vì mỗi mạng nội bộ chạy như một lớp phủ VXLAN riêng biệt, nhiều mạng nội bộ có thể dùng chung cùng dải địa chỉ nếu chúng vẫn ở sau NAT (không bao giờ định tuyến trực tiếp với nhau). Tuy nhiên, nếu bạn dự định định tuyến giữa các mạng nội bộ, mỗi **phải** phải có một dải CIDR duy nhất.

Để thay đổi địa chỉ mặc định, hãy chọn **Tùy chọn nâng cao** hộp kiểm trong quá trình tạo để sửa CIDR mạng và IP bộ định tuyến.

```mermaid
graph TB
    subgraph "Hệ thống VergeOS"
        EXT["Mạng ngoài<br/>(LAN / Internet)"]
        DMZ["Mạng DMZ<br/>(trung tâm định tuyến L3)"]
        INT1["Mạng nội bộ A<br/>192.168.1.0/24<br/>Tầng Web"]
        INT2["Mạng nội bộ B<br/>192.168.2.0/24<br/>Tầng Ứng dụng"]
        INT3["Mạng nội bộ C<br/>192.168.3.0/24<br/>Tầng Cơ sở dữ liệu"]
    end

    EXT <-->|"Quy tắc định tuyến<br/>Cổng mặc định"| DMZ
    DMZ <-->|"Quy tắc định tuyến"| INT1
    DMZ <-->|"Quy tắc định tuyến"| INT2
    DMZ <-->|"Quy tắc định tuyến"| INT3

    style EXT fill:#fce4ec,stroke:#c62828
    style DMZ fill:#fff3e0,stroke:#e65100
    style INT1 fill:#e8f5e9,stroke:#2e7d32
    style INT2 fill:#e8f5e9,stroke:#2e7d32
    style INT3 fill:#e8f5e9,stroke:#2e7d32
```

## DHCP tích hợp

Mỗi mạng nội bộ Layer 3 đều có máy chủ DHCP tích hợp, được bật theo mặc định. Máy chủ DHCP được vận hành bởi **dnsmasq** chạy bên trong vùng chứa mạng, cung cấp quản lý địa chỉ nhẹ và đáng tin cậy.

### Cấp phát động vs. tuần tự

VergeOS hỗ trợ hai chiến lược cấp phát địa chỉ DHCP:

| Chế độ              | Cách hoạt động                                                                                                                                     | Phù hợp nhất cho                                                                            |
| ------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- |
| **Động (mặc định)** | IP được chọn dựa trên hàm băm của địa chỉ MAC của máy khách, làm tăng đáng kể khả năng máy khách nhận lại cùng một IP sau khi thuê hết hạn/gia hạn | Hầu hết khối lượng công việc — cung cấp địa chỉ gần như ổn định mà không cần đặt trước tĩnh |
| **Tuần tự**         | Địa chỉ được gán theo thứ tự từ đầu phạm vi DHCP                                                                                                   | Môi trường cần thứ tự IP có thể dự đoán                                                     |

### Tùy chọn cấu hình DHCP

Khi DHCP được bật, các cài đặt sau có sẵn:

| Cài đặt                   | Mô tả                                                                                   |
| ------------------------- | --------------------------------------------------------------------------------------- |
| **Tên miền**              | Đặt tên miền DNS cho các VM khách (FQDN)                                                |
| **Cổng**                  | Ghi đè cổng mặc định gửi đến các máy khách DHCP (mặc định là IP bộ định tuyến của mạng) |
| **DHCP động**             | Bật/tắt cấp phát địa chỉ động (tắt để chỉ phục vụ các đặt trước tĩnh)                   |
| **Địa chỉ bắt đầu DHCP**  | Đầu phạm vi địa chỉ động                                                                |
| **Địa chỉ kết thúc DHCP** | Cuối phạm vi địa chỉ động                                                               |
| **Địa chỉ DHCP tuần tự**  | Bật/tắt chế độ tuần tự (mặc định là động dựa trên hàm băm)                              |

### Đặt trước DHCP tĩnh

Đối với các VM cần địa chỉ IP ổn định được đảm bảo, hãy tạo một **mục DHCP tĩnh** gắn một địa chỉ MAC với một IP cụ thể:

**Cách 1 — Chuyển đổi một lease động hiện có:**

1. Từ Bảng điều khiển mạng, nhấp vào **Địa chỉ IP**
2. Tìm mục động và nhấp đúp vào nó
3. Thay đổi **Loại** thành **Tĩnh**
4. Nhấp vào **Gửi**

**Cách 2 — Tạo một mục tĩnh mới:**

1. Từ Bảng điều khiển mạng, nhấp vào **Mới** trong menu bên trái
2. Đặt **Loại** thành **Tĩnh**
3. Nhập **Địa chỉ IP**, MAC của VM **Địa chỉ MAC**, và một **Tên máy**
4. Nhấp vào **Gửi**

{% hint style="success" %}
Nên ưu tiên đặt trước DHCP tĩnh hơn là cấu hình IP thủ công trong hệ điều hành khách. Chúng giữ việc quản lý địa chỉ tập trung trong mạng VergeOS và đảm bảo VM luôn nhận đúng IP thông qua quá trình thương lượng DHCP tiêu chuẩn.
{% endhint %}

### Chẩn đoán DHCP

Nếu một VM không nhận được địa chỉ IP, hãy dùng công cụ chẩn đoán tích hợp:

1. Đi tới bảng điều khiển mạng → **Chẩn đoán**
2. Chọn **DHCP Giải phóng/Gia hạn** từ danh sách thả xuống Truy vấn để buộc một chu kỳ lease
3. Sử dụng **Quét ARP** để phát hiện các thiết bị đang hoạt động trên mạng
4. Kiểm tra **Địa chỉ IP** danh sách trên bảng điều khiển mạng để xác minh trạng thái lease

## DNS tích hợp

Mỗi mạng nội bộ Layer 3 cung cấp dịch vụ DNS cho các VM kết nối. VergeOS cung cấp nhiều chế độ DNS, được chọn trong quá trình tạo mạng:

| Chế độ DNS              | Mô tả                                                                                                                        |
| ----------------------- | ---------------------------------------------------------------------------------------------------------------------------- |
| **Đơn giản** (mặc định) | Chạy một máy chủ DNS chuyển tiếp; nếu không có máy chủ chuyển tiếp nào được liệt kê, DNS của mạng cổng mặc định sẽ được dùng |
| **Bind**                | Chạy máy chủ DNS BIND đầy đủ tính năng với lưu trữ zone thẩm quyền, DNS views và khả năng split-horizon                      |
| **Mạng khác**           | Chuyển tiếp yêu cầu DNS đến một mạng VergeOS khác và tự động tạo bản ghi A cho các máy khách DHCP                            |
| **Đã tắt**              | Không chạy máy chủ DNS nào, nhưng danh sách máy chủ DNS vẫn được cung cấp cho các máy khách DHCP                             |

### DNS đơn giản (Mặc định)

DNS đơn giản là bộ phân giải chuyển tiếp — nó nhận truy vấn DNS từ VM và chuyển tiếp đến các máy chủ DNS upstream. Điều này đủ cho hầu hết khối lượng công việc chỉ cần phân giải tên internet.

Bạn có thể cấu hình một **danh sách máy chủ DNS** trên mạng để xác định các bộ phân giải upstream cụ thể. Nếu không có danh sách nào được cung cấp, mạng sẽ dùng các máy chủ DNS được cấu hình trên mạng cổng mặc định.

Các VM được cấu hình DHCP sẽ tự động nhận cấu hình DNS từ mạng — không cần thiết lập DNS thủ công trong hệ điều hành khách.

### DNS thẩm quyền với BIND

Đối với các yêu cầu DNS nâng cao — lưu trữ các zone của riêng bạn, cấu hình split-horizon, hoặc làm nameserver thẩm quyền cho một miền — hãy bật **Bind** chế độ này. Nó cung cấp:

* **DNS Views** — Kiểm soát cách máy chủ phản hồi dựa trên IP máy khách (ví dụ: máy khách nội bộ so với bên ngoài)
* **Zone DNS** — Lưu trữ các bản ghi thẩm quyền cho một hoặc nhiều miền
* **Quản lý bản ghi** — Hỗ trợ đầy đủ cho các loại bản ghi A, AAAA, CNAME, MX, TXT, NS, SRV và các loại khác
* **Chuyển zone** — Cấu hình chính/phụ cho dự phòng DNS
* **DNS Split-Horizon** — Cung cấp các địa chỉ IP khác nhau cho máy khách nội bộ so với bên ngoài đối với cùng một tên máy chủ

DNS views được cấu hình tại **Mạng → DNS Views → Mới**, nơi bạn xác định các quy tắc khớp máy khách, cài đặt đệ quy và liên kết zone. Các zone được tạo trong từng view, và bản ghi được quản lý theo từng zone.

### Chẩn đoán DNS

Kiểm tra phân giải DNS từ giao diện chẩn đoán của mạng:

1. Đi tới bảng điều khiển mạng → **Chẩn đoán**
2. Chọn **Tra cứu DNS** từ danh sách thả xuống Truy vấn
3. Nhập một **Máy chủ** (URL) và chọn một **Kiểu truy vấn** (A, AAAA, MX, v.v.)
4. Tùy chọn chỉ định một **Máy chủ DNS** để ghi đè mặc định
5. Nhấp vào **Gửi** — một tra cứu thành công sẽ trả về địa chỉ IP đã phân giải

## Định tuyến giữa các mạng qua DMZ

Mạng **DMZ** là nơi mọi mạng nội bộ và mạng ngoài kết nối, cung cấp `100.64.0.0/16` không gian địa chỉ dùng chung qua đó lưu lượng giữa các mạng đi qua. Bên dưới, **vnet lõi** là hạ tầng định tuyến giữa các vnet: nó đóng vai trò xương sống định tuyến Layer 3, trong khi DMZ cung cấp không gian địa chỉ dùng chung qua đó lưu lượng giữa các mạng được định tuyến.

### Quy tắc cổng mặc định

Để một mạng nội bộ truy cập internet (hoặc bất kỳ mạng ngoài nào), nó cần một **quy tắc định tuyến cổng mặc định**. Khi bạn chọn một mạng ngoài trong **Cổng mặc định** trường trong quá trình tạo mạng, VergeOS sẽ tự động tạo quy tắc này. Nếu bạn bỏ qua bước đó, hãy tạo quy tắc thủ công:

1. Đi tới bảng điều khiển mạng nội bộ → **Quy tắc**
2. Nhấp vào **Mới** từ menu bên trái
3. Cấu hình quy tắc:
   * **Tên:** `Cổng mặc định`
   * **Hành động:** Định tuyến
   * **Hướng:** Đi ra
   * **Loại (Mục tiêu):** IP DMZ của mạng khác
   * **Mạng mục tiêu:** Chọn mạng ngoài của bạn
4. Nhấp vào **Gửi**, rồi nhấp vào **Áp dụng quy tắc** từ bảng điều khiển mạng

### Định tuyến giữa các mạng nội bộ

Để cho phép hai mạng nội bộ giao tiếp trực tiếp, bạn cần các quy tắc định tuyến trên **cả hai** mạng trỏ đến nhau qua DMZ:

```mermaid
graph LR
    INT1["Mạng nội bộ A<br/>10.10.1.0/24<br/><br/>Quy tắc định tuyến:<br/>→ Mạng B qua DMZ"] -->|"transit"| DMZ["DMZ<br/>(hạ tầng trung chuyển)"]
    DMZ -->|"transit"| INT2["Mạng nội bộ B<br/>10.10.2.0/24<br/><br/>Quy tắc định tuyến:<br/>→ Mạng A qua DMZ"]

    style INT1 fill:#e8f5e9,stroke:#2e7d32
    style INT2 fill:#e3f2fd,stroke:#1565c0
    style DMZ fill:#fff3e0,stroke:#e65100
```

Trên mỗi mạng, tạo một quy tắc định tuyến tĩnh:

* **Hành động:** Định tuyến
* **Hướng:** Đi ra
* **Giao thức:** BẤT KỲ
* **Nguồn:** Địa chỉ mạng của tôi
* **Đích:** Địa chỉ mạng khác — chọn mạng nội bộ đích
* **Mục tiêu:** IP DMZ của mạng khác — chọn mạng nội bộ đích

Sau đó thêm một **quy tắc chấp nhận của tường lửa** (Hành động: Chấp nhận, Hướng: Đi vào) trên mỗi mạng để cho phép lưu lượng được định tuyến. Lưu ý: mạng nội bộ có bảo mật mặc định, vì vậy nếu không có quy tắc chấp nhận rõ ràng, lưu lượng được định tuyến sẽ bị loại bỏ.

## Mạng tự phục vụ cho tenant

Một đặc tính quan trọng của mạng nội bộ VergeOS là **tự phục vụ cho tenant**. Khi một tenant (Trung tâm dữ liệu ảo) được cung cấp:

* Tenant sẽ tự động nhận riêng cho mình **DMZ** làm xương sống định tuyến
* Quản trị viên tenant có thể tạo **các mạng nội bộ không giới hạn** trong môi trường của họ
* Mỗi mạng của tenant được cô lập hoàn toàn — tenant không thể nhìn thấy hoặc truy cập mạng của tenant khác
* Các tenant tự quản lý DHCP, DNS, quy tắc tường lửa và định tuyến của họ mà không cần can thiệp ở cấp host

Kiến trúc này khiến VergeOS trở nên lý tưởng cho **các nhà cung cấp dịch vụ quản lý (MSP)** và **môi trường doanh nghiệp đa tenant** nơi mỗi đơn vị kinh doanh hoặc khách hàng cần quản lý mạng tự chủ trong một hạ tầng dùng chung.

## Tùy chọn giám sát mạng

Mạng nội bộ cung cấp một số tính năng giám sát tích hợp:

| Tính năng                                | Mô tả                                                                                          |
| ---------------------------------------- | ---------------------------------------------------------------------------------------------- |
| **Giám sát cổng**                        | Ping liên tục cổng với lịch sử thời gian hoạt động, chất lượng và độ trễ trên bảng điều khiển  |
| **Theo dõi thống kê cho tất cả quy tắc** | Theo dõi tổng số gói/byte theo từng quy tắc cho tất cả quy tắc trên mạng                       |
| **Theo dõi thống kê DMZ**                | Theo dõi gói/byte đi từ mạng này qua DMZ                                                       |
| **Theo vết/Gỡ lỗi quy tắc**              | Theo dõi mọi lưu lượng qua tường lửa cho mục đích chẩn đoán                                    |
| **Giới hạn tốc độ**                      | Giới hạn bộ định tuyến mạng với tốc độ, kiểu (ví dụ: MB/s) và dung lượng burst có thể cấu hình |

{% hint style="info" %}
**Đến từ VMware hoặc Nutanix?**

Trong VergeOS, một mạng nội bộ là một đối tượng duy nhất gộp phân đoạn + bộ định tuyến + DHCP + DNS + tường lửa mặc định từ chối. Mạng DMZ là điểm định tuyến L3 duy nhất cho lưu lượng giữa các mạng.
{% endhint %}

## Thực hành tốt nhất

### Quy ước đặt tên

Dùng tên mô tả, nhất quán và không có dấu cách (ví dụ, `web-tier`, `db-prod`, `dev-lab-01`). Tên nên cho biết mục đích và môi trường chỉ trong nháy mắt.

### Lập kế hoạch CIDR

Lập kế hoạch dải địa chỉ trước khi triển khai. Dùng CIDR duy nhất cho bất kỳ mạng nào sẽ được định tuyến với nhau. Ghi lại sơ đồ phân bổ IP để tránh chồng lấn khi môi trường mở rộng.

### Chiến lược phân đoạn

Tạo các mạng nội bộ riêng cho từng tầng ứng dụng hoặc vùng bảo mật (web, app, database). Dùng quy tắc tường lửa để kiểm soát lưu lượng giữa các tầng — chỉ cho phép các cổng và giao thức mà từng tầng thực sự cần.

### Dùng đặt trước DHCP

Ưu tiên đặt trước DHCP tĩnh hơn là gán IP thủ công trong hệ điều hành khách. Điều này giữ việc quản lý IP tập trung trong VergeOS và đảm bảo VM luôn nhận đúng địa chỉ thông qua DHCP tiêu chuẩn.

## Điểm chính

| Khái niệm                    | Tóm tắt                                                                                          |
| ---------------------------- | ------------------------------------------------------------------------------------------------ |
| **An toàn mặc định**         | Mạng nội bộ chặn mọi lưu lượng cho đến khi các quy tắc cho phép rõ ràng — mặc định là zero-trust |
| **Layer 3 được khuyến nghị** | Loại IP tĩnh cho phép DHCP, DNS, định tuyến, tường lửa và giới hạn tốc độ tích hợp               |
| **Chế độ DHCP**              | Động (dùng băm MAC cho IP giả ổn định) hoặc Tuần tự (gán theo thứ tự)                            |
| **Chế độ DNS**               | Đơn giản (chuyển tiếp), Bind (thẩm quyền với views/zones), Mạng khác, hoặc Đã tắt                |
| **Định tuyến DMZ**           | Mọi lưu lượng liên mạng đều đi qua DMZ; các quy tắc định tuyến xác định đường đi giữa các mạng   |
| **Tự phục vụ tenant**        | Tenant tự tạo và quản lý các mạng nội bộ của họ một cách tự chủ                                  |
| **Đặt trước tĩnh**           | Gắn một địa chỉ MAC với một IP cụ thể để đảm bảo địa chỉ ổn định                                 |

## Các bước tiếp theo

Khi đã cấu hình mạng nội bộ, chủ đề tiếp theo sẽ đề cập cách bảo mật và kiểm soát luồng lưu lượng bằng quy tắc tường lửa, NAT và VLAN: [**Quy tắc tường lửa, NAT & VLANs →**](/learn-the-platform/vi/module-4-networking/04-firewall-nat-vlans.md)


---

# 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/learn-the-platform/vi/module-4-networking/03-internal-networks.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.
