>3)
>Почему? Ай, сорри, тогда по невыспанности совсем вылетела из головы очевидная вещь, что dns может быть не локальным, а провайдерским...
Может, быть смутила фраза "squid ... получает внешний адрес своего шлюза".
От dns сквид получит отрезолвленный из доменного имени ip. Т.к. днс - провайдерский, этот адрес в любом случае будет ip_внешнего_ифейса. Туда запросы и пойдут. Если сквид биндится на внутренний ифейс (192.168) и запросы посылает с него, до апача запросы также пройдут через gated (шлюз) и nat. Если сквид биндится и на внешний ифейс, запрос он пошлет туда же.
Насчет того, что в этом случае dst будет равен (заменен) на localhost, совсем не уверен. По сути, быстрее отправить пакет, где получатель=отправитель, чем дополнительно роутить пакет с внешнего ифейса на loopback.
Да и вообще, localhost не означает всю машину как таковую, как напр. "from/to me" в правилах ipfw, а обозначает отдельную машину в сети 127.0.0.1/32, которая работает с этой сетью через loopback-интерфейс lo0. И строго говоря, эта сеть - точно такая же, как и 192.168 с внутр. интерфейсом и внеш_ip с внеш_интерфейсом.
Так что, имхо, ответ на ваш вопрос: на внешний ip.