跳到主要内容

端口转发

端口转发是 QVMConsole 网络管理的重要功能,用于将宿主机的公网端口流量转发到虚拟机的内网端口。通过端口转发,用户可以从外部网络访问虚拟机上运行的服务,如 Web 服务器、数据库、SSH 等。

端口转发架构

端口转发列表

端口转发列表展示所有已配置的转发规则,包含以下信息:

列表字段说明

字段说明示例
宿主机端口宿主机上监听的端口号8080
目标 IP虚拟机的内网 IP 地址192.168.100.10
目标端口虚拟机上服务监听的端口80
协议网络协议类型TCPUDPboth
状态转发规则状态活跃/非活跃
完整访问地址系统生成的访问地址tcp://1.2.3.4:8080

状态说明

状态图标含义处理建议
活跃绿色转发规则正常工作无需操作
非活跃灰色转发规则未启用检查配置或启用规则
异常红色转发规则配置错误检查目标 IP 和端口

端口转发操作

添加转发规则

添加端口转发规则时需要配置以下参数:

配置项说明必填示例
宿主机端口宿主机上监听的端口号8080
目标 IP虚拟机的内网 IP 地址192.168.100.10
目标端口虚拟机上服务监听的端口80
协议网络协议类型TCP

协议类型说明

协议说明适用场景
TCP传输控制协议Web 服务、数据库、SSH
UDP用户数据报协议DNS、游戏服务器、视频流
bothTCP 和 UDP需要同时支持两种协议的服务

编辑转发规则

编辑转发规则时可以修改以下配置:

可修改项说明限制
宿主机端口宿主机监听端口需避免端口冲突
目标 IP虚拟机 IP 地址需为有效内网 IP
目标端口虚拟机服务端口需为有效端口
协议网络协议-

删除转发规则

支持单条删除和批量删除:

删除方式说明适用场景
单条删除删除单条转发规则删除个别规则
批量删除选中多条规则批量删除清理大量规则
删除确认

删除端口转发规则后,外部网络将无法通过原端口访问虚拟机服务。请确认后再执行删除操作。

完整访问地址

系统自动生成完整的访问地址,方便用户快速访问虚拟机服务。

地址格式

协议://公网IP:宿主机端口

地址示例

协议公网 IP宿主机端口完整地址
tcp1.2.3.48080tcp://1.2.3.4:8080
udp1.2.3.45353udp://1.2.3.4:5353
both1.2.3.48080tcp://1.2.3.4:8080

一键复制功能

完整访问地址支持一键复制功能,点击复制按钮即可将地址复制到剪贴板。

复制功能说明

在 HTTP 环境下,复制功能会自动降级使用兼容方案,确保在各种环境下都能正常工作。

TCP 探测功能

TCP 探测功能用于自动检测端口转发是否可用,帮助用户快速验证配置是否正确。

探测状态

状态图标含义处理建议
成功绿色端口转发正常工作无需操作
失败红色端口转发不可用检查虚拟机服务状态
超时黄色探测超时检查网络连接和防火墙

探测流程

探测原理

TCP 探测通过以下步骤验证端口转发:

  1. 建立连接:尝试连接宿主机的公网端口
  2. 转发验证:验证 iptables DNAT 规则是否正确转发
  3. 服务验证:验证虚拟机服务是否正常监听
  4. 结果返回:返回探测结果和耗时

入站区域限制

入站区域限制功能用于控制端口转发是否继承全局防火墙的入站区域限制。

区域限制说明

设置说明安全性
继承全局限制端口转发受全局防火墙规则限制
不受限制端口转发不受全局防火墙规则限制

区域限制工作原理

安全警告

建议保持"继承全局限制"设置,除非有特殊需求。不受限制的端口转发可能带来安全风险。

端口转发白名单

端口转发白名单用于控制哪些用户和虚拟机可以使用端口转发功能。

用户白名单

用户白名单控制哪些用户可以使用端口转发:

配置项说明
白名单用户允许使用端口转发的用户列表
非白名单用户无法创建端口转发规则

VM 白名单

VM 白名单控制哪些虚拟机可以使用端口转发:

配置项说明
白名单 VM允许使用端口转发的虚拟机列表
非白名单 VM无法创建端口转发规则

建站探测

建站探测功能用于检测非白名单用户的 HTTP 端口是否被用于建站:

功能说明处理方式
HTTP 探测检测 HTTP 端口是否运行 Web 服务自动封禁
HTTPS 探测检测 HTTPS 端口是否运行 Web 服务自动封禁
建站探测

非白名单用户的 HTTP 端口会被自动探测,如果检测到建站行为,系统会自动封禁该端口。建议将需要建站的用户添加到白名单中。

开通引导

首次使用端口转发功能时,系统会显示开通引导,帮助用户完成初始配置。

开通引导流程

开通引导内容

步骤说明操作
1阅读端口转发说明了解功能和限制
2自动绑定静态 IP确保 IP 地址稳定
3配置转发规则添加端口转发规则
4完成开通开始使用端口转发

静态 IP 绑定

静态 IP 绑定是端口转发的必要条件,确保虚拟机的 IP 地址不会因 DHCP 变化而改变。

绑定方式说明适用场景
自动绑定系统自动绑定静态 IP首次开通
手动绑定手动绑定静态 IP已有虚拟机
静态 IP 重要性

端口转发依赖于固定的 IP 地址。如果虚拟机的 IP 地址发生变化,端口转发规则将失效。静态 IP 绑定确保 IP 地址稳定,避免转发规则失效。

实现原理

端口转发基于 iptables DNAT 规则实现,通过网络地址转换将外部流量转发到虚拟机。

iptables DNAT 规则

规则类型说明示例
DNAT目标地址转换-j DNAT --to-destination 192.168.100.10:80
SNAT源地址转换-j SNAT --to-source 1.2.3.4

规则生成示例

# 入站 DNAT 规则
iptables -t nat -A PREROUTING -p tcp --dport 8080 -j DNAT --to-destination 192.168.100.10:80

# 出站 SNAT 规则
iptables -t nat -A POSTROUTING -p tcp -d 192.168.100.10 --dport 80 -j SNAT --to-source 1.2.3.4

静态 IP 绑定原理

端口转发最佳实践

规划建议

  1. 端口规划:提前规划宿主机端口分配,避免冲突
  2. IP 绑定:确保所有转发规则都绑定静态 IP
  3. 安全策略:结合安全组规则,限制访问来源
  4. 监控告警:定期检查端口转发状态,设置异常告警

常见应用场景

场景宿主机端口目标端口协议说明
Web 服务80, 44380, 443TCP对外提供 Web 服务
SSH 管理222222TCP远程管理虚拟机
数据库33063306TCP外部访问数据库
游戏服务器2556525565TCP/UDP游戏服务器端口

性能优化

优化项说明预期效果
端口复用使用不同端口映射同一服务避免端口冲突
协议选择根据服务选择合适协议提升传输效率
连接限制配置连接数限制防止资源耗尽
性能建议

对于高并发场景,建议使用 TCP 协议并配置连接数限制。UDP 协议适合实时性要求高的场景,但需要注意数据包丢失问题。

故障排除

常见问题

问题可能原因解决方案
无法访问端口转发规则未配置添加转发规则
连接超时目标虚拟机未启动启动虚拟机
连接拒绝目标服务未运行启动目标服务
规则不生效iptables 规则未加载重新应用规则

诊断步骤

诊断工具

QVMConsole 提供 TCP 探测功能,可以快速验证端口转发是否正常工作。建议使用该功能进行初步诊断。