-------- ---------- ----------- | | | PC II | | | | PC I | --> | (PROXY) | -> | GATEWAY | | | | | | | -------- ---------- ----------- #### #!/usr/bin/perl -w use HTTP::Proxy; use HTTP::Proxy::BodyFilter::tags; use HTTP::Proxy::BodyFilter::simple; system("echo 1 > /proc/sys/net/ipv4/ip_forward"); my $proxy = HTTP::Proxy->new( port => 8080, host => 'localhost' ); $proxy->push_filter( mime => 'text/html', response => HTTP::Proxy::BodyFilter::tags->new(), response => HTTP::Proxy::BodyFilter::simple->new( sub { ${ $_[1] } =~ s!src=.+(.jpg|.gif|.bmp|.png)!src=\"http://files.myopera.com/Idonotlikebroccoli/albums/3758/thumbs/noob.jpg_thumb.jpg\"!ig; print "Filter ran!\n"; } ) ); $proxy->start; #### iptables -F iptables -t nat -I PREROUTING -p tcp --dport 80 -j REDIRECT --to-ports 8080