在最近的项目中遇到了一个问题
该项目是关于远程访问移动设备(由于保密原因,不透露过多项目相关信息)
用的开源VNC服务器(位于移动设备上),applet(vnc客户端)要通过访问对外暴露的一台server来间接访问无外网连接的lan内的数台PC上的数台手机
最初想用javaIO Inputstream/Outputstream相互转换实现,但考虑性能问题及稳定性予以否决
最终采用了iptables的DNAT和SNAT来转发,原因有:基于内核的转发---稳定,运作于连接的较低层级---对上层通信透明