我有一个TCP服务器,它只允许少数客户端连接到它。然而,数据传输纯粹是单向的——服务器将所有数据发送到客户端,而客户端几乎没有数据返回到服务器。有没有办法使用iptables或防火墙将离开服务器到客户端的TCP流重定向到另一个TCP客户端?
您可以制定一个粗略的数据包嗅探方案来实现这一点,但第二个客户端不能是标准的tcp客户端。
没有所谓的单向TCP连接。PAYLOAD(应用程序数据传输)可能是单向的,但TCP本身是一个双向的、已确认的协议,其状态在两端保持,并由数据消息上的控制消息或控制信息更新。状态也会因超时而更新,超时是指在指定时间内无法接收控制数据包。
TCP将于9月年满30岁。这是由Jon Postel撰写的RFC。看见http://www.ietf.org/rfc/rfc793.txt
每一端的协议实体的状态图如图6所示。