端口映射和转发在实际应用中非常常见,比如一个局域网只有一台服务器可以被互联网访问到,那么如果想通过互联网访问局域网中其他的服务,最常用的方式就是在这一台机器上开放端口,然后转发至局域网中其他主机的端口,实现内网服务的访问,而在互联网中就好像直接使用这个服务一样没什么变化,端口转发的大致流程如下图所示:

上面这个是一个简单的示例,其中ip都是随便写的,过程很简单就是代理服务器对应的公网ip为:212.121.87.168,也就是访问公网ip就可以直接访问到37.58.1.2,同样访问18080端口就相当于内网的8080端口,这个ip和端口映射的过程是由路由器来实现的,另外在server1服务器上有一个redis服务,端口为6379,我们现在就是要实现将代理服务器的8080端口转发至server1的6379端口,直接通过访问代理服务器来实现server1 redis服务的访问.  正常情况下这类的转发过程很多工具都可以实现,比如nginx,haproxy以及linux自带的iptables或者firewalld服务都可以通过配置来实现,本文主要叙述一款rinetd的工具来实现端口转发,安装和配置都比较简单,用起来也比较好用,具体安装配置如下:

  rinetd官方下载地址为:https://boutell.com/rinetd/ 进入后直接找到WHERE TO GET下载linux版本:,下载成功后接下来我们需要在代理服务器上进行安装,从而实现将端口转发至server1,分别执行下面命令安装:

tar -xvzf rinetd.tar.gz
cd rinetd/

  执行编译: make

  然后如果现在直接执行安装会出现/usr/man找不到的错误,因为年代比较久远的原因,默认rinetd会将帮助写入/usr/man下,而linux可能不存在/usr/man这个目录,所以会写入失败报错,现在只需要手动执行: mkdir /usr/man

  然后安装: make install 即可成功,执行 rinetd -v 可以查看版本号,最新的是0.62

  rinetd配置文件默认不存在需要自己手动创建,执行: vim /etc/rinetd.conf ,然后添加如下内容:

0.0.0.0  37.58.1.21 

  配置非常简单,第一个是rinetd绑定本地代理服务器的地址,0.0.0.0是绑定所有的网卡地址,当然也可以直接绑定ip地址即37.58.1.2;后面8080是rinetd监听的转发端口;第三个是转发到目标服务器的ip,这里是server1的地址即37.58.1.21,最后6379是转发到目标服务器的端口,这里服务为redis,这条配置生效后,会将本地8080端口收到的所有数据原封不动的发送至目标服务器的指定端口,另外需要注意目标服务器的实际ip和端口号必须被正确绑定才可以,其中ip一定不要绑定127.0.0.1而是实际ip,否则会报错.  配置完毕后就可以执行下面命令启动rinetd服务了

rinetd -c /etc/rinetd.conf

  其中-c参数指定配置文件的路径,如果不加默认就是/etc/rinetd.conf,启动后查看进程正常存在并且端口正常绑定即可测试使用,这时候在内网直接连接37.58.1.2 8080或者在外网直接连接212.121.87.168 18080,应该都可以正常访问到server1上的6379了.

端口转发工具rinetd的安装与配置的更多相关文章

  1. [转帖]【rinetd】CentOS7.x上轻量级TCP转发工具rinetd的安装配置

    [rinetd]CentOS7.x上轻量级TCP转发工具rinetd的安装配置 https://www.jianshu.com/p/2605d247b944 这一个写的更加全面了. 2019.07.0 ...

  2. CentOS7.x上轻量级TCP转发工具rinetd的安装配置

    一.实验背景 Linux下端口转发一般都使用iptables来实现,使用iptables可以很容易将TCP和UDP端口从防火墙转发到内部主机上. 如果需要将流量从专用地址转发到不在您当前网络上的机器上 ...

  3. ubuntu14 安装 端口转发工具rinetd

    1,下载  第一中方式 用 apt-get install rinetd  或者从官网下载http://www.boutell.com/rinetd/ 2,配置,端口转发的配置在 /etc/rinet ...

  4. 全平台正向tcp端口转发工具rinetd的使用

    Linux下做地址NAT有很多种方法.比如haproxy.nginx的4层代理,linux自带的iptables等都能实现.其实,Linux下有一个叫rinetd的工具,安装简单,配置也不复杂. 下载 ...

  5. 代理端口转发工具rinetd

    转载: https://my.oschina.net/wuweixiang/blog/2983280 rinetd 前言 iptables 的功能当然强大,但理解与设置却有点抽象,便通过google认 ...

  6. Linux端口转发工具rinetd

    介绍:Rinetd是为在一个Unix和Linux操作系统中为重定向传输控制协议(TCP)连接的一个工具.Rinetd是单一过程的服务器,它处理任何数量的连接到在配置文件etc/rinetd中指定的地址 ...

  7. QC邮件转发工具Mail Direct安装配置手册

    QC邮件转发工具Mail Direct安装配置手册 2010-06-11 10:00:56| 分类: 软件测试 | 标签: |举报 |字号大中小 订阅 QC邮件转发工具安装配置手册 由于公司没有独立的 ...

  8. Windows 和 Linux 平台下的端口转发工具

    原文地址: http://unmi.cc/windows-linux-port-forwarding/ 这里记录一下我曾经使用过的几个端口转发工具,即端口映射.端口重定向,和 NAT 也是差不多的概念 ...

  9. linux下搭建redis内网端口映射工具-rinetd

    最近在工作中使用到了redis缓存,用来提某些业务场景的计算速度和某些情况下的操作频率限制,客户端工具使用了redisDesktopmanager来管理,在本机操作测试的时候,是没有问题的.但是将系统 ...

随机推荐

  1. 成员变量传参,jion方法的使用

    package charpter06; //MyThread02和MyThread01两个类 相互调用的结果public class MyThread01 extends Thread { // 用全 ...

  2. Web应用程序项目XXXX已配置为使用IIS。无法访问IIS 元数据库。您没有足够的特权访问计算机上的IIS

    错误图片:

  3. DFS基础题

    hdu 1241 油田  裸DFS 题意:@代表油田 8个方向上还有@就相连 相当于求图中连通子图的个数Sample Input1 1 // n m*3 5*@*@***@***@*@*1 8@@** ...

  4. jsp统计页面访问量和刷访问量的简单使用

    ~Jsp可以进行简单的页面访问量统计,当然也可以使用Jsp刷访问量. 1:第一种使用全局变量<%! int i=0;%>进行页面的访问量统计,只有新打开一个浏览器才可以进行统计. 2:第二 ...

  5. CentOS6.8安装360 pika

    1.安装依赖包 yum install snappy-devel bz2 libzip-dev libsnappy-dev libprotobuf-dev libevent-dev protobuf- ...

  6. hibernate查询竟然有6种方法

    hibernate查询的6种方法 1.HQL查询 2.对象化查询Criteria方法 3.动态查询DetachedCriteria 4.例子查询 5.sql查询 6.命名查询 1.HQL查询 stat ...

  7. BZOJ4974 八月月赛 Problem D 字符串大师 KMP

    欢迎访问~原文出处——博客园-zhouzhendong 去博客园看该题解 题目传送门 - BZOJ4974 - 八月月赛 Problem D 题意概括 一个串T是S的循环节,当且仅当存在正整数k,使得 ...

  8. 001 Spark的简介以及入门

    1.hadoop,spark,Flink的比较 MapReduce: 分布式的计算框架 -> Hive 问题: shuffle:大文件的排序+读写磁盘+网络传输 => 比较慢 只有两种执行 ...

  9. POJ1125-Stockbroker Grapevine【Floyd】(模板题)

    <题目链接> 题目大意: 题目可能有多组测试数据,每个测试数据的第一行为经纪人数量N(当N=0时,输入数据结束),然后接下来N行描述第i(1<=i<=N)个经纪人与其他经纪人的 ...

  10. JAVA Socket通信 打造属于自己的网盘

    近一个月没敲JAVA代码了,最近老师布置了一个写JAVA网盘的作业,总共花了十几个小时,总算写完了,debug真的累,感觉自己还是菜了,没有那种有一个想法就能马上用代码实现的能力....不扯了,下面开 ...