netstat -n | awk '/^tcp/ {++state[$NF]} END {for(key in state) print key,"\t",state[key]}'
./tcpcopy -x 50090-10.13.12.12:50055
iptables -I OUTPUT -p tcp --sport 8080 -j QUEUE
iptables -L -n 查看防火墙
由于客户端过来的请求packets,目的地址就是61.135.250.217,目的端口80,
我们需要改变复制包的目的地址和目的端口,
改成测试服务器的ip地址和端口号,这样才能 访问测试服务器
,那访问测试服务器后的response怎么办,那就是由测试服务器上的interception来截获了,
不会直接返回给客户端。
modprobe ip_queue (如果这个内核模块没有启动的话,要启动这个,不过内核版本要支持这个)
设置iptables
iptables -I OUTPUT -p tcp --sport 8022 -j QUEUE
为啥要设置这个呢,为的就是截获测试机器的响应的,否则直接返回客户端是肯定不行的
因为tcpcopy和intercept之间需要通信(intercept需要传递响应包头给tcpcopy)
linux-32-2.6.18-nginx-resin
./tcpcopy -x 50090-10.13.12.12:50055
iptables -I OUTPUT -p tcp --sport 8080 -j QUEUE
iptables -L -n 查看防火墙
由于客户端过来的请求packets,目的地址就是61.135.250.217,目的端口80,
我们需要改变复制包的目的地址和目的端口,
改成测试服务器的ip地址和端口号,这样才能 访问测试服务器
,那访问测试服务器后的response怎么办,那就是由测试服务器上的interception来截获了,
不会直接返回给客户端。
modprobe ip_queue (如果这个内核模块没有启动的话,要启动这个,不过内核版本要支持这个)
设置iptables
iptables -I OUTPUT -p tcp --sport 8022 -j QUEUE
为啥要设置这个呢,为的就是截获测试机器的响应的,否则直接返回客户端是肯定不行的
因为tcpcopy和intercept之间需要通信(intercept需要传递响应包头给tcpcopy)
linux-32-2.6.18-nginx-resin
本文详细介绍了如何利用netstat、iptables等工具实现客户端请求的转发和服务器响应的截获,包括配置步骤、原理解析以及实际应用案例。重点在于通过设置iptables规则,将客户端请求转发到测试服务器,同时截获测试服务器的响应进行后续处理。
6622

被折叠的 条评论
为什么被折叠?



