Eu tenho todo o meu tráfego da web em execução pelo Squid usando o iptables:
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
ACCEPT tcp -- anywhere anywhere tcp dpt:http owner UID match proxy
REDIRECT tcp -- anywhere anywhere tcp dpt:http redir ports 3128
Eu também estou usando o ddclient para atualizar um host DNS dinâmico:
$ ddclient -force -v
SENDING: GET / HTTP/1.0
SENDING: Host: checkip.dyndns.org
SENDING: User-Agent: ddclient/3.8.0
SENDING: Connection: close
SENDING:
RECEIVE: HTTP/1.0 200 OK
RECEIVE: Date: Sat, 13 Aug 2011 02:53:11 GMT
RECEIVE: Content-Type: text/html
RECEIVE: Server: DynDNS-CheckIP/1.0
RECEIVE: Cache-Control: no-cache
RECEIVE: Pragma: no-cache
RECEIVE: Content-Length: 100
RECEIVE: X-Cache: MISS from __HOSTNAME__
RECEIVE: X-Cache-Lookup: MISS from __HOSTNAME__:3128
RECEIVE: Via: 1.0 __HOSTNAME__ (squid/3.1.14)
RECEIVE: Connection: close
RECEIVE:
RECEIVE: <html><head><title>Current IP Check</title></head><body>Current IP Address: 10.1.1.3</body></html>
ipcheck.dyndns.org está retornando o ip da LAN do meu computador, não o ip da minha conexão com a internet. Outro site semelhante (ipdetect.dnspark.com) retorna o endereço IP externo correto (e eu resolvi meu problema reconfigurando o ddclient para usar esse serviço), mas estou curioso para saber o que está acontecendo no caso do ipcheck.dyndns .org?