当前位置:  技术问答>linux和unix

熟悉netfilter的大侠请进

    来源: 互联网  发布时间:2016-12-23

    本文导语:  最近做的一个项目,用linux的tproxy做透明代理,通过iptables和策略路由,在不修改包的情况下将本来要转发的包路由到本地代理上,代理做一些协议分析后,再发送出去,发送的时候源端口是随机的,以FTP命令连接为...

最近做的一个项目,用linux的tproxy做透明代理,通过iptables和策略路由,在不修改包的情况下将本来要转发的包路由到本地代理上,代理做一些协议分析后,再发送出去,发送的时候源端口是随机的,以FTP命令连接为例说一下:

 client------------tproxy---------------server

其IP地址如下:

client: 172.16.0.2
server: 192.168.89.110
tproxy: 172.16.0.1  192.168.89.107


client发出的包为:        172.16.0.2:6001 ----> 192.168.89.110:21
tproxy从client收到的包为:172.16.0.2:6001 ----> 192.168.89.110:21
tproxy发往server的包为:  172.16.0.2:6002 ----> 192.168.89.110:21

这样在代理服务器的内核里就把一个连接拆成了两个连接,是比较正常的,但这种方种用于FTP了连接的会存在问题,比如主动模式下会被防火墙拦截,就想到了一个比较怪异的方式:就是tproxy在连接服务端时使用与client相同的源端口,这样看起来就是:

client发出的包为:        172.16.0.2:6001 ----> 192.168.89.110:21
tproxy从client收到的包为:172.16.0.2:6001 ----> 192.168.89.110:21
tproxy发往server的包为:  172.16.0.2:6001 ----> 192.168.89.110:21

这样测试的时候也能正常工作,但却有很多想不通的地方,这时,对代理来说,明明有两个连接,但在内核中却只有一个连接(五元组完全一样),查看 /proc/net/nf_conntrack确实只有一个连接,问题是比如client和tproxy的连接已经建立起来,tproxy去连server时要握手,这个过程会不会把前一个连接状态打乱?两个连接传送的数据会不会混在一起?其中一个连接关闭会不会影响另一个?求高手解答。


|
tproxy透明代理没用过。

不过你为什么不把协议分析的工作放到kernel里呢?在网桥里把包拦下来,直接分析下,而且这时候要修改包的任何信息都是可以的,还省去了把包转来转去的过程。

|
不懂,学习来了

|
不太懂,纯粹学习了。

    
 
 
 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 急寻一位熟悉Linux熟悉GTK+编程,有时间的高手做一个例程,酬劳可谈
  • 学习linux该从何而起,熟悉java,但不是很熟悉c或者c++
  • 请问,哪里有可以用的aix server,我想练练,熟悉熟悉,要支持telnet的,
  • 熟悉linux
  • 小弟签约银行,想装个unix先熟悉一下!
  • 如何熟悉Exception的种类?完全通过学习API的document?
  • 有熟悉EXIM的高手高手么??
  • 熟悉Debian下dancer ircd配置的进来
  • 寻找对LINUX ORACLE熟悉的朋友
  • 熟悉CURSES的进!!!
  • 为何技术支持需要熟悉unix命令?
  • 请教熟悉JavaMail的大虾请帮帮忙,多谢了!
  • 想请教linux下开发分布式应用程序问题,期望与熟悉orbit的高手交流!
  • 寻求工作,本人熟练掌握ANSI CC++语言、熟悉UNIX
  • 急寻一位熟悉Linux熟悉GTK+编程,有时间的高手做一个例程,酬劳可谈 iis7站长之家
  • 请熟悉IBM WebSphere配置者留下OICQ号
  • 紧急求助!谁熟悉websphere的配置?或关于webshpere好的网站!
  • 熟悉weblogic&ejb2.0的请进(初学者就不用看了)
  • 熟悉JAVA的请进来
  • 谁熟悉在DOS状态下上网浏览的软件。


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3