Re: Help!! How to steal UDP traffic?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Why not MARK-ing it with iptables and send it to the tunnel with iproute ? 


On Mon, 24 Jan 2005 22:12:04 -0200 (BRST), Guilherme Cesar Soares
Ruppert <ruppert@xxxxxxxxxxxxxxxxx> wrote:
> 
> 
>   Hi everyone, please I need some help!!
> 
>   I'm developing a program that needs to intercept an UDP traffic generated
>   locally by another application. It's like a tunnel. My program will steal the
>   outgoing packets from the application (in the same machine) and will send to
>   a tcp tunnel.
> 
>   I am using Libipq to do that, but I have a BIG problem. After send the UDP
>   packets to my tunnel, I need to DROP the packets because I don't want them to
>   be sent over the network. So I am doing:
>   ipq_set_verdict(handle, m->packet_id, NF_DROP, 0, NULL);
> 
>   But the problem is that when I drop the packet, the application that
>   generated the packet remains blocked in sendto() until the packet is
>   accepted. When I change to NF_ACCEPT, the application doesn't block but the
>   packets are sent to the network and I don't want it.
> 
>   How could I drop a packet silently, without blocking the application? Is
>   there any way to intercept outgoing packets locally without let the
>   applications notice that their packet were stolen?
> 
>   Here is the same example using netcat:
>   $ iptables -A OUTPUT -p udp -j QUEUE
>   $ echo "Test" | nc -n -u 10.1.1.23 800
>   And this last remains blocked, not returning to shell.
> 
>   I tested will ping (icmp echo) also and the same happened, but ping didn't
>   block. Instead, it said "operation not permitted".
> 
>   Please give me some hope!!! :-)
> 
>   Thanks
> 
>   Guilherme Ruppert
> 
> 


-- 
Bla bla


[Index of Archives]     [Linux Netfilter Development]     [Linux Kernel Networking Development]     [Netem]     [Berkeley Packet Filter]     [Linux Kernel Development]     [Advanced Routing & Traffice Control]     [Bugtraq]

  Powered by Linux