freebsd portsnap can use http proxy to update ports.
http://wiki.yichi.org/index.php?title=Portsnap
freebsd fetch can use http_proxy env variable to use http proxy.
I use squid as proxy server.
edit /root/.cshrc
setenv http_proxy 192.168.1.1:3128
Do not set ftp_proxy.
Because squid does not really support ftp proxy.
Freebsd fetch will use "http get" to communicate with squid.