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

PF, NAT, SQUID

Добавлено: 2008-12-01 19:39:57
Shad
Доброго времени суток!

Есть шлюз в инет (FreeBSD 7.0-RELEASE). IP адрес - статика, получаю по PPPoE (mpd-3.18_5), для пользователей локальной сети поднят Squid (2.7.5) и для одного адреса сети сделан NAT

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

nat on ng0 from 192.168.1.2/32 to any -> внешний_ip
У пользователей, использующих Squid, проблем не возникает, а вот пользователь, работающий через NAT, начал жаловаться на то, что не прогружаются web-страницы с некоторых адресов (mail.ru, odnoklassniki.ru...), при этом другие адреса (ya.ru, rambler.ru, google.ru), вполне нормально открываются, если поставить браузеру прокси, проблем не наблюдается.

Подскажите с чем это может быть связано?

P.S. пробовал поднимать NAT через IPFW - результата тот же.

Re: PF, NAT, SQUID

Добавлено: 2008-12-02 1:59:08
фываолдж
Может быть MTU на разных интерфйсах разный и icmp не отправляются что нужна фрагментация?

На ng0, наверное, MTU меньше 1500.

Re: PF, NAT, SQUID

Добавлено: 2008-12-02 3:27:31
paradox
tcpmssfix в mpd настрой
ну и мту если винда то лучше не трогать она сама знает какое мту правильное

Re: PF, NAT, SQUID

Добавлено: 2008-12-02 13:16:38
Shad
Спасибо, завтра попробую, отпишусь о результатах.

Re: PF, NAT, SQUID

Добавлено: 2008-12-02 18:13:17
squid
mpd4 тоже должно помочь

Re: PF, NAT, SQUID

Добавлено: 2008-12-03 16:05:31
Shad
добавил в mpd.conf строку:

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

set iface enable tcpmssfix
проблема не решилась.
вот полный конфиг:

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

default:
        load PPPoE
PPPoE:
        new -i ng0 PPPoE PPPoE
        set iface route default
        set iface disable on-demand
        set iface idle 0
        set iface enable tcpmssfix
        set bundle disable multilink
        set bundle authname my_name
        set link no acfcomp protocomp
        set link disable pap chap
        set link accept chap
        set link mtu 1492
        set link keep-alive 10 60
        set ipcp yes vjcomp
        set pppoe iface rl1
        set pppoe service *
        set pppoe disable incoming
        set pppoe enable originate
        open iface

Re: PF, NAT, SQUID

Добавлено: 2008-12-03 16:40:04
paradox
set link mtu 1492
попробуй обрать
пусть винда сама назначит

Re: PF, NAT, SQUID

Добавлено: 2008-12-03 16:46:57
squid
mpd4
или

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

tcpmssd -p 8670 -m 1396
ipfw add 1 divert 8670 all from any to any via ng\*

Re: PF, NAT, SQUID

Добавлено: 2008-12-03 16:51:56
paradox
tcpmssd -p 8670 -m 1396
ipfw add 1 divert 8670 all from any to any via ng\*
лишнее
опции в mpd должно быть достаточно

то там что то другое

Re: PF, NAT, SQUID

Добавлено: 2008-12-03 16:54:43
Shad
убрал

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

set link mtu 1492
та же картина

Re: PF, NAT, SQUID

Добавлено: 2008-12-03 16:59:53
paradox
а покажи какой винда выставляет мту когда интерфейс поднят

Re: PF, NAT, SQUID

Добавлено: 2008-12-03 17:06:49
squid
paradox писал(а):
tcpmssd -p 8670 -m 1396
ipfw add 1 divert 8670 all from any to any via ng\*
лишнее
опции в mpd должно быть достаточно

то там что то другое
без этих строк у меня работало

Re: PF, NAT, SQUID

Добавлено: 2008-12-03 17:08:42
Shad

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

ng0: flags=88d1<UP,POINTOPOINT,RUNNING,NOARP,SIMPLEX,MULTICAST> metric 0 mtu 1492
если я правильно понял

Re: PF, NAT, SQUID

Добавлено: 2008-12-03 17:12:00
paradox
ну если у тебя pf то на нем поставить скруб и непомню помоему тоже была какая то опция по tcpmss

других вариантов кроме мту/tcpmss у меня нет

Re: PF, NAT, SQUID

Добавлено: 2008-12-03 17:15:15
Shad
Всем спасибо за участие, буду ковырять...

Re: PF, NAT, SQUID

Добавлено: 2008-12-05 13:57:18
Shad
Решил проблему MTU и PPPoE заменой mpd3.18_5 на mpd-4.4.1_1.

Кому интересны конфиги:

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

mydomain# cat /usr/local/etc/mpd4/mpd.conf
default:
        load PPPoE
PPPoE:
        new PPPoE PPPoE
        set iface route default
        set iface disable on-demand
        set iface idle 0
        set iface enable tcpmssfix
        set ipcp yes vjcomp
        set ipcp ranges 0.0.0.0/0 0.0.0.0/0
        set bundle disable multilink
        set bundle disable noretry
        set auth authname my_name
        set auth password my_pass
        set link no acfcomp protocomp
        set link disable pap chap
        set link accept chap
        set link keep-alive 10 60
        set ling max-redial 0
        open

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

mydomain# cat /usr/local/etc/mpd4/mpd.links
PPPoE:
        set phys type pppoe
        set pppoe iface rl1
        set pppoe service "*"
        set pppoe disable incoming
        set pppoe enable originate
P.S. Еще раз спасибо за помощь.