Страница 1 из 1

https + nat/ipfw (режутся пакеты на шлюзе - помогите)

Добавлено: 2006-07-24 23:33:26
Mo1ot0k
Есть шлюз: FreeBSD 6.0 + IPFW + NAT ну всё как положино, всё работает хорошо, кроме одного... пользователи не могу или могут но с большим трудом подключатся к https (статистика). Не подскажите в чём могут быть проблемы ?!

Добавлено: 2006-07-25 8:01:17
Alex Keda
а в логах этой самой статистики что?

Добавлено: 2006-07-25 11:55:25
Mo1ot0k
lissyara писал(а):а в логах этой самой статистики что?
ничего, причём я забыл сказать что не только нашей статистики, но и других сайтов с другой сети в которую есть доступ... получается что гдн то на шлюзе режутся пакеты, хотя весьма странно что только по https(443) :(

вот кстати rc.firewall шлюза:

Код: Выделить всё

#!/bin/sh

ipfw='/sbin/ipfw -q'
ournet='{10.101.60.0/24 or 10.105.60.0/24 }'
ifout='fxp0'
ifuser='fxp1'
local_net="{80.73.0.0/20 or 10.0.0.0/8 }"
${ipfw} -f flush
${ipfw} add 100 check-state
${ipfw} add 150 allow ip from any to any via lo0
${ipfw} add 200 allow ip from me to any keep-state
${ipfw} add 230 allow gre from any to any
${ipfw} add 235 allow tcp from any to any dst-port 1723
${ipfw} add 236 skipto 250 all from ${local_net} to 80.73.0.10
${ipfw} add 237 skipto 250 all from 80.73.0.10 to ${local_net}
${ipfw} add 240 skipto 270 all from ${local_net} to ${local_net}
${ipfw} add 250 divert natd all from any to  any  via ${ifout}
${ipfw} add 270 allow ip from any to any via ${ifout} out
${ipfw} add 300 allow tcp from ${local_net} to me ssh
${ipfw} add 310 allow all from any to me 80

${ipfw} add 340 allow udp from any to me 53 via ${ifuser}
${ipfw} add 350 allow udp from any to me 7723 via ${ifuser}
${ipfw} add 355 allow icmp from any to me
${ipfw} add 400 deny ip from any to me
${ipfw} add 450 allow ip from any to ${ournet} via ${ifout} in
${ipfw} add 460 deny ip from any to any via ${ifout}

${ipfw} add 65400 allow ip from any to any
может тут что то не то или чего то не хватает ...
ЗЫ: На шлюзе стоит биллинг, по-этому такой набор правил (рекомендует создатель биллинга).

Добавлено: 2006-09-10 2:53:20
радист
И у меня та-же херня. Через один шлюз (FreeBSD 5.4 + IPFW + NAT) - режутся пакеты. Через второй (FreeBSD 4.7 + IPFW + NAT) все идет на ура. Причем первый используется всегда. В смысле, что часть соединений уходит сразу через первый шлюз. А часть пропускается первым шлюзом (без ната) на второй шлюз а оттуда уже все уходит в мир.

От клиента на сервер - все ок. Обратно клиент получает не более 300 байт. Причем на внешнем интерфейсе tcpdump видит судорожный попытки сервера перадать клиенту еще несколько раз по пару килобайт, но клиенту (на внутренний и-фейс) они не доходет.

Снес нафиг IPFW (allow all from any to any) - то-же. Поигрался с MTU - те же яйца, только в профиль. Буду думать. Придумаю - напишу.

Добавлено: 2006-09-10 3:32:31
raDIST
Знаю я ответ. Мать его в TTL.

Дело в том что пакеты от сервака приходят ко мне на внешний ифейс размером аж в 1460 байт. А клиент (по ВПН) имее размер MTU только 1389 байт. И все-бы ничего, если бы пакеты не имели признак DF (не фрагментировать) И сервак тихо дропает это дело. Вот. А по другому шлюзу пакеты приходят меньше - только 1386 байт, что спокойно влазит в пакет к клиенту. Почему с другого шлюза пакеты меньше - ума не приложу.

Для себя вижу два выходы - научить клиентов поднимать ко мне ВПН с МТУ в более чем 1460 байт или прокинуть весь 443 траффик на сквид. Он с этим дело разберется на ура. Проверено. Буду копать.

Добавлено: 2006-09-10 3:41:58
раДЫСТ
Алилуя, брат!

Работает. Таки МТУ, мать его за ногу. Сволочь. Полтора года мучался, не понимал, почему хттпс иногда не работает. Падлюка.

Добавил строчку в конфигурацию поп-топа (pptp&ppp) а именно "set mtu 1490" и усе - как лучших домах Парижа и Лондона.

Теперь все стало на свои места и я, с чувством глубокого удовлетворения, верой в безграничную силу человеческого разума и, самое главное, чистой совестью, иду спать.

Да прибудет с Вами великий коннект!

З.І. А нигде в нете даже и намека на МТУ не нашел.