Linux端口转发工具 Rinetd

2020-06-28  本文已影响0人  搬砖工_Gerry

啰哩啰嗦一堆没用的干啥-----我愿意。

前言

   本人在云平台多VPC环境遇到的一个端口转发真实案例,在这里分享一下,希望能给需要使用端口工具的伙伴提供一些思路。

环境介绍

    云平台一般分为公有云和私有云及混合云,每个云平台上一般可以创建N个VPC不同网段网络,不管啥云通常情况下VPC网络之间逻辑上禁止网络互通的。如果想要互通需要之间创建一条(对等链接或高速通道)不同公司叫法不一样但是实现逻辑理论上一样,让相互VPC网络中有对方的路由表。

那么假设我在公有云平台上有两个VPC网络。

VPC1=10.10.1.0/24  

VPC2=10.10.2.0/24

    我真金白银购买了一个CLB负载均衡用于服务器对外应用发布,但是CLB负载均衡基于VPC购买,等于通常情况下如果我想让VPC1和VPC2服务器都对外发布服务我得购买两套CLB负载均衡。但是为了节约成本能不能一套CLB负载均衡供两个VPC同时使用。

实现方案

 1. VPC1=10.10.1.0/24 和 VPC2=10.10.2.0/24 开通对等链接实现路由互通。

 2. 在有CLB负载均衡的VPC中找一台服务器部署Linux端口转发工具 Rinetd。

 3. 实现原理,CLB地址 201.12.00.1映射服务区给10.10.1.100:8080,10.10.1.100安装rinetd端口转发给 10.10.2.100:8080

软件安装

地址:

wget http://www.rinetd.com/download/rinetd.tar.gz

解压安装

tar zxvf rinetd.tar.gz

make

make install

编辑配置10.10.1.100服务器

vi /etc/rinetd.conf

0.0.0.0 8080 10.10.2.100 8080

说明一下(0.0.0.0表示本机绑定所有可用地址)

将所有发往本机8080端口的请求转发到10.10.2.100的8080端口

启动程序

/usr/sbin/rinetd 

关闭进程

pkill rinetd

把这条命令加到/etc/rc.local里面就可以开机自动运行

查看端口状态

netstat -antup

需要注意

1.rinetd.conf中绑定的本机端口必须没有被其它程序占用

2.运行rinetd的系统防火墙应该打开绑定的本机端口

拓展想法

把启动程序/关闭进程 写一个python或shell脚步 一步执行。

可以考虑给inetd.conf增加一个web前端视图

添加映射输入框: [原地址] [端口] [目的地址] [端口]

服务启动按钮  启动服务[✅]    或 关闭服务 [✅]

当前端口映射状态

上一篇 下一篇

猜你喜欢

热点阅读