URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID10
Нить номер: 1905
[ Назад ]

Исходное сообщение
"Nat+IpFw_Squid"

Отправлено Бадло , 16-Фев-05 13:18 
Люди добрый помогите настроить даную цепочку, на данный момент имею такую конфигурацию:
у провайдера знаю только адрес прокси, и адрес который он мне выделил. DNS только локальный на внутренней сетки  под Win.
1) Ядро таким параметрами
options         IPFIREWALL
options         IPFIREWALL_VERBOSE
options         IPFIREWALL_VERBOSE_LIMIT=10
options         IPFIREWALL_DEFAULT_TO_ACCEPT
options         TCP_DROP_SYNFIN
options         DUMMYNET
options         IPDIVERT
2) rc.conf
hostname="Internet.TK.local"
ifconfig_ed0="inet 10.10.x.x  netmask 255.255.255.0"
ifconfig_xl0="inet 192.168.x.x  netmask 255.255.255.0"
inetd_enable="YES"
rpcbind_enable="YES"
sshd_enable="YES"
tcp_extentions="NO"
tcp_drop_synfin="YES"
icmp_drop_redirect="YES"
icmp_log_redirect="YES"
natd_enable="YES"
natd_interface="ed0"
gateway_enable="YES"
firewall_enable="YES"
firewall_script="/etc/rc.firewall"
firewall_type="M"
firewall_logging="YES"
firewall_quiet="NO"
3) ipFW
где 10.10.x.x адрес сетки смотрящей в инет
192.168.x.x - внутреняя сеть

   local="lo0"
   lan="xl0"
   inet="ed0"
   setup_loopback
   ${fwcmd} add pass all from any to any via ${local}
        ${fwcmd} add deny ip from 192.168.0.0/16 to any in via ${inet}
        ${fwcmd} add deny ip from 172.16.0.0/12 to any in via ${inet}
        ${fwcmd} add fwd 127.0.0.1,3128 tcp from 192.168.x.0:255.255.255.0 to any http,https,ftp via ${lan}
        ${fwcmd} add divert natd ip from 192.168.x.x:255.255.255.0  to any out via ${inet}
        ${fwcmd} add divert natd ip from any to 10.10.x.x in via ${inet}
        ${fwcmd} add pass tcp from any to any established
        ${fwcmd} add pass ip from 10.10.x.x to any out xmit ${inet}
        ${fwcmd} add deny tcp from any to any 20,21,22,23,3128 in via ${inet}
        ${fwcmd} add deny tcp from any to any 20,21,22,23,80,443 in via ${lan}
        ${fwcmd} add deny tcp from any to any 8000-8104 in via ${lan}
        ${fwcmd} add pass tcp from any to any 25 out
        ${fwcmd} add pass tcp from any 25 to any out
        ${fwcmd} add pass udp from any to any 110
        ${fwcmd} add pass udp from any 110 to any
        ${fwcmd} add pass udp from any to any 53
        ${fwcmd} add pass udp from any 53 to any
        ${fwcmd} add pass all from any to any via ${lan}
        ${fwcmd} add allow icmp from any to 10.10.x.x in  via inet icmptype 0,3,4,11,12
        ${fwcmd} add allow icmp from any to 192.168.x.0:255.255.255.0 in  via ${inet} icmptype 0,3,4,11,12
        ${fwcmd} add allow icmp from 10.10.x.x to any out via ${inet} icmptype 3,8,12
        ${fwcmd} add allow icmp from 10.10.x.x to any out via ${inet} frag
        ${fwcmd} add deny log all from any to any via ${inet}
        ${fwcmd} add deny log ip from any to any

4) Squid установлен на 10.10.х.х на порт 3128

При попытки загрузить страницу он пишет

The requested URL could not be retrieved

While trying to retrieve the URL: http://www.izvestia.ru/

The following error was encountered:

    Unable to determine IP address from host name for www.izvestia.ru

The dnsserver returned:

    Name Error: The domain name does not exist.

This means that:

The cache was not able to resolve the hostname presented in the URL.
Check if the address is correct.


Что я делаю не так?


Содержание

Сообщения в этом обсуждении
"Nat+IpFw_Squid"
Отправлено Аномин , 16-Фев-05 15:01 
man rc.conf:

defaultrouter= ???


"Nat+IpFw_Squid"
Отправлено Бадло , 16-Фев-05 15:06 
>man rc.conf:
>
>defaultrouter= ???

Если бы я знал...



"Nat+IpFw_Squid"
Отправлено Бадло , 17-Фев-05 10:47 
Провайдер говорит что шлюз 10.10.x.y, но все равно это не спасает



"Nat+IpFw_Squid"
Отправлено Бадло , 17-Фев-05 14:35 
>Провайдер говорит что шлюз 10.10.x.y, но все равно это не спасает
но браузер говорит что время досутпа к www.rbc.ru истекло


"Nat+IpFw_Squid"
Отправлено Alexey Morozov , 24-Фев-05 00:55 
>Провайдер говорит что шлюз 10.10.x.y, но все равно это не спасает

А и не будет спасать. Этот маршрут тебе не нужен если твой роутер и прокси прова находяться в одной сетке (то есть 10.10.x.x)

Не мучайся. Пров обязан выдать DNS если он предоставляет вам полный сервис, а не только WEB через свою проксю.


"Nat+IpFw_Squid"
Отправлено Alexey Morozov , 24-Фев-05 00:46 
>Люди добрый помогите настроить даную цепочку, на данный момент имею такую конфигурацию:
>
>у провайдера знаю только адрес прокси, и адрес который он мне выделил.
>DNS только локальный на внутренней сетки  под Win.

При хождении через squid DNS тебе не нужен!

Squid у тебя где установлен? на твоем роутере или у прова? или и там и там?

Если только у прова - тогда пропиши его прокси в браузерах у клиентов! В этом случае DNS тебе ни к чему (этим займется quid на той стороне)

В случае когда squid установлен только у тебя в сетке - тебе обязательно надо знать DNS-ы твоего провайдера. А иначе никак :-)

В случае когда и там и там squid и провайдер не дает тебе доступа к своим DNS серверам - остается такой вариант: твой squid должен перенаправлять запросы на squid прова... В этом случае настраивай squid и прописывай в настройках браузеров адресок уже своего прокси сервера. Но здесь уже стоит задуматься! А нужен ли тебе локальный прокси?

И NAT тут не при чем!


"Nat+IpFw_Squid"
Отправлено Бадло , 24-Фев-05 07:43 
В вышестоящей организации стоит Cisco, которой управляет FreeBsd, на FreeBsd стоит Squid, к этому проски подключены мы. Я пытяюсь поднять Squid на FreeBsd, так как нам подключена еще одна организация, которому я "перенаправляю" траффик.

"Nat+IpFw_Squid"
Отправлено Alexey Morozov , 24-Фев-05 15:55 
>В вышестоящей организации стоит Cisco, которой управляет FreeBsd, на FreeBsd стоит Squid,
>к этому проски подключены мы. Я пытяюсь поднять Squid на FreeBsd,
>так как нам подключена еще одна организация, которому я "перенаправляю" траффик.
>

В таком случае как я и писал - 3-й вариант!

Читайте маны - они рулеззз :-)

Здесь решение:

http://squid.h12.ru/FAQ/FAQ-4.html#ss4.9


"Nat+IpFw_Squid"
Отправлено Бадло , 25-Фев-05 07:36 
3-й способ помог, но открывается через раз пишет: The requested URL could not be retieveid....


"Nat+IpFw_Squid"
Отправлено Бадло , 25-Фев-05 08:52 
>3-й способ помог, но открывается через раз пишет: The requested URL could
>not be retieveid....

Уточнее открываеются только те страницы которые содержатся в кэше родителя



"Nat+IpFw_Squid"
Отправлено Alexey Morozov , 25-Фев-05 16:33 
>>3-й способ помог, но открывается через раз пишет: The requested URL could
>>not be retieveid....
>
>Уточнее открываеются только те страницы которые содержатся в кэше родителя

Это прописал?

cache_peer your_provider_proxy_ip parent 3128 0 no-query default
acl all src 0.0.0.0/0.0.0.0
never_direct allow all


"Nat+IpFw_Squid"
Отправлено Бадло , 25-Фев-05 16:41 
Да этой строки не было, never_direct allow all
Все стало ходить, осталось понять до конца зачем мне строка
add fwd 127.0.0.1,3128 tcp from 192.168.x.0:255.255.255.0 to any http,https,ftp via ${lan}.

Спасибо за статью помогла, осталось что бы люди по именам регистрировались и статистика...  
        


"Nat+IpFw_Squid"
Отправлено Alexey Morozov , 25-Фев-05 17:17 
>Да этой строки не было, never_direct allow all
>Все стало ходить, осталось понять до конца зачем мне строка
> add fwd 127.0.0.1,3128 tcp from 192.168.x.0:255.255.255.0 to any http,https,ftp via ${lan}.
>
>
>Спасибо за статью помогла, осталось что бы люди по именам регистрировались и
>статистика...
>

А вот тут интересно!
Ответ на первый вопрос:
Предположительно эта строчка должна реализовать прозрачное проксирование! Все соединения, идущие с 192.168.x.0 в инет на порты 80.443,21,20, должны заворачиваться на хост 127.0.0.1 и на порт 3128. То есть клиентам в браузерах не надо настраивать прокси. Для них будет все прозрачно! Однако!!! Поскольку у тебя нет DNS, толку с этой строчки никакого! Да и нерабочая она по моему! Нельзя так делать... можешь ее удалить.

статистику если для себя - погляди calamaris (perl скрипт), если покрасивее - sarg и тому подобное.


"Nat+IpFw_Squid"
Отправлено Бадло , 28-Фев-05 08:01 
А что у меня не прозрачное проксировние? Как я понимаю прозрачность это когда все делает nat, а прокси просто кэширует ....