X
X
X
X

知識庫

主頁知識庫Linux - MultiVPS IPv6+IPv4如何计算 IPv4 NAT 的端口范围?

如何计算 IPv4 NAT 的端口范围?

(新功能) 如何自动计算我的端口?

IPv4 NAT 的外部 10 个端口范围,有趣的是,是从您的... IPv6 地址的末尾计算得出的。
端口在给定的范围内始终预先打开并处于活动状态。
此地址是混合型——支持 IPv6 和 IPv4 连接。

要计算IPv4 NAT端口范围,您只需运行这条Linux命令:
wget -O nat.sh https://cfld.uk/nat.sh && chmod +x nat.sh && ./nat.sh

只需5秒钟,您将获得所需的所有信息:
- 您VPS上的当前IPv6地址;
- 通过IPv6可用的NAT IPv4端口范围(包括TCP和UDP);
- 以及您需要使用的外部IPv4地址及其指向关系。

该命令在Debian和Ubuntu操作系统上可立即生效。
在基于RHEL的系统(如AlmaLinux、Rocky Linux、Red Hat、Oracle)或未安装wget的系统上,您需要先安装wget。

在 RHEL 基于的系统上,这也是一个非常简单的单行 Linux 命令:
sudo dnf install wget -y

在 Windows 系统上

此脚本在未进行调整的情况下无法直接运行,因为 Windows 脚本处理方式与 Linux 不同。
您需要:
- 安装 Windows 子系统 for Linux(WSL),该功能在 Server 2022、Server 2025 和 Windows 11 上可用,并确保在运行命令前已安装 wget、bash 以及内部 Debian 系统;
- 在 Windows 系统下运行任何具有直接 IP 访问权限的 Linux 操作系统虚拟机,使用可用工具(如 VMware Workstation、VirtualBox、QEMU)进行运行。

如何计算端口?

IPv6 是一个十六进制系统,也就是说,除了给定 IP 上通常分配的 0-9 以外,还有 A-F。 我们的 IPv6 通常是按顺序给出的,但由于 NAT 实施在后,端口分配的组织方式与 IPv6 分配略有不同。现在我们来解释一下。

IPv6 地址的末端可以是范围,如 f800-f809,然后是 f80a、f80b 等。十进制范围 "显示的是从 1 到 255 的正常 IP 顺序,它与十六进制值结合使用。请查看此说明表:

TCP 端口范围

例如,以 f80e::1 结尾的地址是十进制范围内的第 14 个地址;
我们的 TCP 端口分配从 10000 开始,这意味着每个区块都有端口 10000-10009、10010-10019 等;
因此,通过乘减可以得到正确的端口分配:

14 x 10 = 140
端口起始: 10000
您的 IPv4 端口块: 10000+140 = 10140-10149 ,减去 10 个端口 = 10130-10139 即为端口范围。

让我们假设一个更难的例子,即表中较早的例子,例如以 f8d1::1 结尾的地址。

根据前面的表格,这是列表中的第 209 个地址(十进制范围中的 “d0-df ”表示 208-223 的范围,因此 d1 比 d0 晚一个地址,所以是第 209 个地址);
请记住,端口分配从 10000 开始;
因此,您需要将端口余量乘以

209 x 10 = 2090
端口起始: 10000
您的 IPv4 TCP 端口块: 10000+2090 = 12090-12099,减去 10 个端口 = 12080-12089,这就是您的 TCP 端口范围。

您总是先在十六进制标尺上找到地址,然后在十进制标尺上数到对应的地址,最后再乘以十进制。为了获得正确的端口余量,最后总是要做减法。

这样,您就能知道 IP 地址的顺序,从而知道哪些端口是可用的。

无论末尾是只有数字、数字+字母还是只有字母,规则都是一样的。

UDP 端口范围

计算公式相同,但有三个主要区别:
- 允许使用的端口是 5 个,而不是 10 个;
- 起始端口总是晚于 TCP 端口。目前,所有 MultiVPS 服务器的端口都是 13000。
- 端口减去的是 5 个端口,而不是 10 个。

使用第一个例子中以 f80e::1 结尾的地址,也就是端口范围中的第 14 个地址,同样可以通过乘法和减法得出正确的范围:

14 x 5 = 70
端口起始: 13000
您的 IPv4 UDP 端口块: 13000 + 70 = 13070-13074,减去 5 个端口 = 13065-13069,这就是您的 UDP 端口范围。

将来,某些服务器可能会使用不同的 UDP 端口起始端口(如 20000 而不是 13000)。如果出现这种情况,您可以随时查看您所在的服务器,并访问这篇文章以查看 UDP 端口范围的起始端口。您也可以随时向我们发送邮件。

Delta1 服务器的特殊情况(TCP/UDP)

以下详细信息适用于 IPv4 NAT 的 Delta1 端口计算:
- 对于以 4xx 结尾的地址,TCP 端口计数从 10000 开始;对于以 5xx 结尾的地址,TCP 端口计数从 12550 开始;对于以 6xx 结尾的地址,TCP 端口计数从 15100 开始;对于以 7xx 结尾的地址,TCP 端口计数从 17650 开始。
- UDP 端口计数以 30000 开始,地址以 4xx 结束;以 31275 开始,地址以 5xx 结束;以 32550 开始,地址以 6xx 结束;以 33825 开始,地址以 7xx 结束。

该模式不支持 ICMP,但可以转发。端口会自动打开,全局服务器级侦听器也会自动就位,只需继续使用该范围即可。如果您想测试您的范围是否可用于 TCP 和 UDP,请单击此处。

这些端口范围内的 SSH 和所有 TCP/UDP 服务都能正常工作。如果你以前访问过 C-Servers Remote 服务,现在就不需要了,因为只要选定的 sshd_config 端口和端口范围得到遵守,我们的 NAT IPv4 就会直接将你转发到 SSH 会话。尽情享受吧

找不到您要找的資訊?

建立支援票證
你覺得有用嗎?
(瀏覽了 2166 次/有 4 人發現它有幫助)

Powered by WISECP
Top