当前位置: 首页 > news >正文

Rinetd解决服务器IP端口的转发

Rinetd(Redirection Internet Daemon)是一个轻量级、简单易用的 TCP 端口转发/重定向工具。它的核心功能是解决一个非常具体但常见的问题:在不修改服务本身配置的情况下,将到达一台服务器某个端口的TCP连接,透明地转发到另一台服务器的指定端口。

使用场景

你有一台位于公网的服务器(假设IP是 1.2.3.4),但需要访问一个在内网私有网络(比如 192.168.1.100)中运行的服务的端口(例如MySQL的 3306)那么就需要在公网服务器 (1.2.3.4) 上安装并配置 Rinetd,将所有发到本机 3306 端口的流量,转发到内网服务器 192.168.1.100:3306,这样,外部客户端只需要连接 1.2.3.4:3306,Rinetd 就会自动帮你把连接桥接到内部的 192.168.1.100:3306。对于客户端和MySQL服务器来说,它们都感知不到Rinetd的存在,仿佛是在直接通信。

  • 你需要一个快速、临时的端口转发解决方案。

  • 你的需求非常简单,仅仅是TCP端口到端口的映射。

  • 服务器资源非常紧张,无法运行更重的代理软件。

  • 你不想配置复杂的iptables规则(虽然 iptables 本身也能做端口转发)。

安装过程

1、从https://github.com/samhocevar/rinetd/releases下载最新安装包;新建文件夹,并将包上传至新的目录

mkdir -p /usr/local/rinetd
cd /usr/local/rinetd
tar -zxvf rinetd-0.73.tar.gz

2、编译,编译前先安装好GCC(本次服务器已安装)进入解压目录,进入src目录,以此执行

#修改端口范围,否则会报错
sed -i 's/65536/65535/g' rinetd.c
./configure
make && make install

3、配置rinetd.conf

vim  /usr/local/etc/rinetd.conf
## 命令格式
## bindaddress bindport connectaddress connectport
## 绑定的地址 绑定的端口 连接的地址 连接的端口
0.0.0.0 80 192.168.1.123 80
allow *.*.*.*
logfile /var/log/rinetd.log

4、开始使用

# 启动
rinetd -c /usr/local/etc/rinetd.conf
#查看转发
netstat -tanulp|grep rinetd
#停止
pkill rinetd

优缺点

Rinetd 主要解决的是“TCP流量从哪里来,转发到哪里去”的最基本网络连通性问题,只做纯粹的TCP流量转发,它是一个简单到极致的TCP端口转发器,适用于轻量级、临时性或资源受限的网络中转场景

极其简单配置直观,只需编辑一个文本文件,无需学习复杂概念。
非常轻量体积小,占用内存和CPU资源极少(内存只需几百KB),适合资源受限的环境,
配置超级简单(一个配置文件几行命令)
纯TCP转发不关心应用层协议,可转发任何基于TCP的服务(SSH, HTTP, MySQL, Redis等)。
跨平台在Linux、BSD等类Unix系统上均可运行。
❌ 缺点
功能单一

仅支持四层转发,不支持基于域名、URL路径的转发(那是HTTP反向代理做的事)

不支持七层协议解析、负载均衡、健康检查、SSL加密/解密。

单点故障本身不具备高可用性,如果转发服务器宕机,链路就中断。
性能瓶颈对于极高的并发连接,其单进程模型可能成为瓶颈(但对于大多数中小流量场景完全足够)。
http://www.dtcms.com/a/360904.html

相关文章:

  • Adobe Illustrator 2025最新破解教程下载安装教程,Illustrator2025最新版下载
  • Adobe Photoshop 2025 最新下载安装教程,附PS2025下载
  • 自由学习记录(91)
  • 从零开始的python学习——函数(1)
  • stdexcept介绍与使用指南
  • 13 选 list 还是 vector?C++ STL list 扩容 / 迭代器失效问题 + 模拟实现,对比后再做选择
  • 基于 HTML、CSS 和 JavaScript 的智能图像边缘检测系统
  • 【数据分享】上市公司-信息透明度综合指数数据(2003-2023)
  • Neurokit———开源多模态电生理数据处理Python包
  • ubantu安装配置hive
  • Java内功修炼(3)——并发的四重境界:单例之固、生产消费之衡、定时之准、池化之效
  • 响应式编程框架Reactor【9】
  • 《论文阅读》从心到词:通过综合比喻语言和语义上下文信号产生同理心反应 2025 ACL findings
  • 【HTML】draggable 属性:解锁网页交互新维度
  • SpringAI模型评估
  • python爬虫之requests库的使用(小白五分钟从入门到精通)
  • Selenium 自动化测试实战:绕过登录直接获取 Cookie
  • 如何用AI视频增强清晰度软件解决画质模糊问题
  • 血缘元数据采集开放标准:OpenLineage Guides 使用 Apache Airflow® 和 OpenLineage + Marquez 入门
  • IPC 进程间通信 interprocess communicate
  • 【macOS】垃圾箱中文件无法清理的“含特殊字符文件名”的方法
  • 应用平台更新:可定制目录、基于Git的密钥管理与K8s项目自动化管理
  • Python 爬虫基础教学
  • C#/.NET/.NET Core技术前沿周刊 | 第 52 期(2025年8.25-8.31)
  • C++ 面试高频考点 力扣 35. 搜索插入位置 二分查找 左右端点查找 题解 每日一题
  • RocksDB 在 macOS M 系列 上运行时报错的解决方案
  • 【公告】更新预告
  • vite基础讲解
  • 超越Transformer:语言模型未来的认知革命与架构重构
  • Golang之GoWorld深度解析:基于Go语言的分布式游戏服务器框架