# 网络与端口分配

> 了解 Daki Hosting 上的端口与公网访问 — 以及 Free Tier 与付费套餐之间的区别。

在 Free Tier 和付费套餐上，网络访问的方式有所不同。本页说明端口和端口分配的工作方式，以及每种情况下你可以预期的效果。

## 你将学到

- Free Tier 与付费套餐在网络访问上的区别
- 什么是端口分配
- 如何查看你的主机名和端口
- 如何在付费套餐上添加端口分配

---

## Free Tier：无公网端口

Free Tier 服务器**没有**可公开访问的端口。Free Tier 不支持来自服务器外部的入站连接。

这意味着：
- 你的应用无法接收外部的 HTTP 请求或 WebSocket 连接。
- Web 服务器、API 和 Webhook 端点将无法从互联网访问。
- **Discord 机器人不受影响** — 它们向外连接到 Discord，不需要入站端口。

如果你的应用需要从外部访问（例如 Web API、游戏服务器，或使用基于 Webhook 交互的机器人），你就需要付费套餐。

---

## 付费套餐：可公开访问的端口

所有付费套餐（Bronze、Silver、Gold 以及游戏服务器套餐）都至少包含一个**可公开访问的端口分配**。这让你的应用可以接受来自任何地方的入站连接。

每台付费服务器都会被分配一个**主机名**和一个**端口**，两者都可以在 门户的 **Network** 标签页中查看。

**示例：**
- 主机名：`eu-node1.daki.cc`
- 端口：`25565`
- 完整地址：`eu-node1.daki.cc:25565`

你的应用必须监听分配的端口，才能被外部访问。

---

## 什么是端口分配？

**端口分配**是分配给你服务器的一组主机名 + 端口。它代表一个可公开访问的网络端点。付费服务器默认以一个端口分配开始。

---

## 添加端口分配（仅付费套餐）

在付费套餐上，你可以在门户的 **Network** 标签页中添加更多端口分配。当你的应用需要同时监听多个端口时，这非常有用 — 例如，游戏服务器在主端口之外还需要一个查询端口。

---

## 常见问题

**我的应用应该监听哪个端口？**

你的应用必须监听 **Network** 标签页中显示的确切端口。监听任何其他端口都会使你的应用无法被外部访问。某些 Egg 会将该值作为环境变量提供（例如 `PORT` 或 `SERVER_PORT`），你可以在代码中读取它。

**我的 Discord 机器人在 Free Tier 上运行正常，为什么？**

Discord 机器人会与 Discord 的服务器建立向外的连接（通过 WebSocket）。它们运行时不需要入站端口，因此可以在 Free Tier 上工作。如果你的机器人还运行 HTTP 服务器（例如用于斜杠命令交互或 Web 仪表板），则该部分需要付费套餐才能被访问。

**我可以获得静态 IP 或自定义域名吗？**

Daki 的各节点使用共享 IP。你可以使用 Cloudflare 作为反向代理，将你自己的域名指向付费套餐服务器 — 参见[连接自定义域名](https://daki.cc/zh/wiki/guides/custom-domain)。如需静态 IP 方案，请通过 Billing Panel 或 Discord 联系支持。

**我使用的是付费套餐，但端口似乎无法访问**

请确认你的应用正在监听正确的端口（在 Network 标签页中检查）。同时确认服务器正在运行，且应用已完全启动。如果问题仍然存在，请联系支持。

---

## 下一步

- [启动设置](https://daki.cc/zh/wiki/guides/startup-settings) — 配置启动命令以使用正确的端口。
- [付费套餐](https://daki.cc/zh/wiki/guides/paid-plans) — 升级以获得可公开访问的端口。
- [获取帮助](https://daki.cc/zh/wiki/guides/support) — 如果遇到端口分配问题，请联系支持。

---
Source: https://daki.cc/zh/wiki/guides/network-allocations
