端口转发是Linux系统中常见的网络配置技巧,适用于将外部流量引导至本地服务的场景。以下是两种常用实现方法:

1. 使用iptables实现端口转发

sudo iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 3000
  • 作用:将外部HTTP请求(端口80)重定向到本地服务端口3000
  • 适用场景:开发环境测试、临时服务暴露
  • 📌 注意:需确保服务已启动且端口开放
iptables规则示意图

2. 使用socat实现端口转发

socat TCP-LISTEN:80,fork TCP:localhost:3000
  • 优势:轻量级工具,支持多种协议
  • 操作步骤:
    1. 安装socat:sudo apt install socat
    2. 运行命令并保持后台进程
    3. 配置防火墙放行端口
socat命令行界面示例

常见应用场景

  • 🏠 家庭网络:将公网端口映射到内网服务器
  • 🌐 云服务器:配置反向代理访问本地服务
  • 🔌 路由器配合:与家用路由器端口转发功能联动

如需深入了解高级防火墙配置,可访问Linux防火墙进阶指南

网络拓扑结构示意图