• linux下用rinetd做端口转发


    原文转自:http://blog.chinaunix.net/uid-345389-id-2131648.html

    经常遇到端口转发的情况,用iptable是经常的,不过每次都需要查手册。看到菜包子的文章,感觉还不错,测试感觉很好用。

    端口转发映射的程序叫rinetd,并没有发现版本之说,只有一个下载地址。直接manke编译安装即可。

    [root@fan3838 tmp]# tar xvfz rinetd.tar.gz 
    rinetd/
    rinetd/getopt.h
    rinetd/rinetd.c
    rinetd/CHANGES
    rinetd/rinetd.8
    rinetd/Makefile
    rinetd/README
    rinetd/index.html
    rinetd/rinetd.ncb
    rinetd/match.c
    rinetd/match.h
    rinetd/rinetd.opt
    rinetd/rinetd.dsw
    rinetd/rinetd.dsp
    rinetd/getopt.c
    rinetd/rinetd.plg
    rinetd/.CHANGES.swp
    rinetd/rinetd.exe
    [root@
    fan3838 tmp]# cd rinetd
    [root@
    fan3838 rinetd]# make
    cc -DLINUX -g -c -o rinetd.o rinetd.c
    rinetd.c:176: 警告:与内建函数 ‘log’ 类型冲突
    rinetd.c: In function ‘readConfiguration’:
    rinetd.c:544: 警告:由于数据类型范围限制,比较结果永远为假
    rinetd.c:567: 警告:由于数据类型范围限制,比较结果永远为假
    rinetd.c: In function ‘log’:
    rinetd.c:1395: 警告:‘log’ 的地址总是等价为 ‘true’
    cc -DLINUX -g -c -o match.o match.c
    gcc rinetd.o match.o -o rinetd
    [root@
    fan3838 rinetd]# make install
    install -m 700 rinetd /usr/sbin
    install -m 644 rinetd.8 /usr/man/man8

    安装完毕只有一个二进制文件一个帮助文件,通过man帮助可以知道其需要一个/etc/rinetd.conf配置文件,这个文件的内容和格式要求如下:

    地址 端口 地址 端口

    测试了一个简单的例子,172.16.86.113的113端口映射到172.16.81.88的80端口,配置文件如下

    [root@fan3838 etc]# cat /etc/rinetd.conf 
    172.16.86.113 113 172.16.81.88 80
    allow *.*.*.*
    logfile /var/log/rinetd.log

    这样的话只要在任意浏览器访问:http://172.16.86.113:113就和访问http://172.16.81.88同样的效果。

    启动很简单,执行rinetd即可。

  • 相关阅读:
    vue mock数据设置
    vue 的全局拦截器
    vue-resource基础介绍
    快速排序
    Node 中的 stream (流)
    v8垃圾回收和js垃圾回收机制
    Node内存限制与垃圾回收
    ReactNative http网络通讯
    luogu1829 [国家集训队]Crash的数字表格
    luogu2870 [USACO07DEC]最佳牛线,黄金Best Cow Line, Gold
  • 原文地址:https://www.cnblogs.com/redsmith/p/5342855.html
Copyright © 2020-2023  润新知