397 46790 ACCEPT all -- !eth0 any anywhere anywhere 0 0 REJECT tcp -- eth0 any anywhere anywhere reject-with tcp-reset If you are trying to connect to port 80 via the IP on eth0, it won't work and will get picked up by the clean up rules. Localhost works because you have a rule for any/any for it :P You need some thing like -i eth0 -p tcp --dport 80 -j ACCEPT Yang