rinetd小记

官网: http://www.boutell.com/rinetd/
下载地址: http://www.boutell.com/rinetd/http/rinetd.tar.gz


编译安装:
对于Windows,包rinetd.tar.gz已包含了编译好的可执行程序文件rinetd.exe,也可以使用VC(如VC6.0)去重新编译。
对于Linux,只需要将包rinetd.tar.gz解压,然后执行make命令即可,它的Makefile文件其实十二分地简单:
CFLAGS=-DLINUX -g


rinetd: rinetd.o match.o
        gcc rinetd.o match.o -o rinetd


install: rinetd
        install -m 700 rinetd /usr/sbin
        install -m 644 rinetd.8 /usr/man/man8


执行make install即安装好,从Makefile即可看出,安装到了目录/usr/sbin。
启动rinetd,会报需要/etc/rinetd.conf文件,使用vi编辑一个即可,文件格式为:
“监听服务IP地址 监听服务端口号 目标服务IP地址 目标服务端口号”


假设有三台机器:
A 客户端机器
B rinet中转机器(IP为127.0.0.1,服务端口号设置为6789)
C 目标服务器(IP为192.168.0.1,服务端口号为22)


现在A要访问C机器,但A和C之间网络并不通,但是A和B网络通,且B和C网络通(在实际中,通常B是带外网和内网两个IP的机器)。这个时候将/etc/rinetd.conf配置成:
127.0.0.1 6789 192.168.0.1 22


这样A访问127.0.0.1:6789时,实际访问的是192.168.0.1:22,B在这里做了中转代理。
为了体验rinetd的中转功能,A、B、C三台机器实际上可以为同一台机器,比如可以拿sshd等来做目标服务,可以观察到A就好象直接和C连接一样。


相关的工具:
iptables、ssh、nginx、apache等。


如果make install时遇到如下所示的错误:
install -m 644 rinetd.8 /usr/man/man8
install: cannot create regular file `/usr/man/man8': No such file or directory


则只需要将rinetd的Makefile中的相应行(一般为最后一行)修改成:
install -m 644 rinetd.8 /usr/share/man/man8
即可。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Protobuf是一种高效的序列化协议,可以用于数据交换和数据存储。它的主要优势是大小小,速度快,可扩展性强。下面是使用Protobuf的一些小记: 1. 定义消息格式 首先,需要定义消息格式,以便Protobuf可以将数据序列化和反序列化。消息格式定义在.proto文件中,使用protobuf语言编写。例如,下面是一个简单的消息格式定义: ``` syntax = "proto3"; message Person { string name = 1; int32 age = 2; } ``` 这个消息格式定义了一个名为Person的消息,包含两个字段:name和age。 2. 生成代码 一旦消息格式定义好,就可以使用Protobuf编译器生成代码。编译器将根据消息格式定义生成相应的代码,包括消息类、序列化和反序列化方法等。可以使用以下命令生成代码: ``` protoc --java_out=. message.proto ``` 这将生成一个名为message.pb.java的Java类,该类包含Person消息的定义以及相关方法。 3. 序列化和反序列化 一旦生成了代码,就可以使用Protobuf序列化和反序列化数据。例如,下面是一个示例代码,将一个Person对象序列化为字节数组,并将其反序列化为另一个Person对象: ``` Person person = Person.newBuilder() .setName("Alice") .setAge(25) .build(); byte[] bytes = person.toByteArray(); Person deserializedPerson = Person.parseFrom(bytes); ``` 这个示例代码创建了一个Person对象,将其序列化为字节数组,然后将其反序列化为另一个Person对象。在这个过程中,Protobuf使用生成的代码执行序列化和反序列化操作。 以上是使用Protobuf的一些基本步骤和注意事项,希望对你有所帮助!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值