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

Исходное сообщение
"Проблема FreeBSD4.8+ipfw+natd+tcpmssd"

Отправлено Greening , 26-Окт-04 11:45 
Приветствую.
Есть абсолютно дурацкая и непонятная проблема. Хотя, что вероятней, я тормоз :)
Классика: FreeBSD 4.8, ipfw, natd, и утилитка tcpmssd, преобразующая MTU, если они на интерфейсах разные.
А поскольку мне подается инет по vlan с циски, то на том интерфейсе MTU 1496:

bash-2.05a# ifconfig -a
bge0: flags=8943<UP,BROADCAST,RUNNING,PROMISC,SIMPLEX,MULTICAST> mtu 1500
        options=3<rxcsum,txcsum>
        inet 192.168.0.10 netmask 0xffffff00 broadcast 192.168.0.255
        ether 00:02:55:b7:....
        media: Ethernet 100baseTX <full-duplex>
        status: active

vlan1: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1496
        inet 62..... netmask 0xffffffe0 broadcast 62......
        ether 00:02:55:b7:.....
        media: Ethernet autoselect (100baseTX <full-duplex>)
        status: active
        vlan: 6 parent interface: bge1


Всё работает на ура, но не так давно заметил небольшое НО, точнее большое.
На некоторые конференции с веб-интерфейсом, а так же на некоторых почтовых серверах с веб-интерфейсом (например rambler.ru) сообщения просто не отсылаются! При нажатии, грубо говоря, "отправить",  Internet Explorer говорит "Узел найден ожидается ответ...", висит так несколько десятков секунд, и потом "невозможно отобразить страницу". Ессно, пробовались разные машины, всякие там "оперы" и т.п. Вот например сюда тоже не отправлялось :(
Непосредственно с самого шлюза всё отлично. Причем эта проблема далеко не на всех веб-почтовиках и конференциях.
Спасайте.
PS Ессно, natd и tcpmssd уже проапдейтил, ipfw allow from any to any и т.п


Содержание

Сообщения в этом обсуждении
"Проблема FreeBSD4.8+ipfw+natd+tcpmssd"
Отправлено kir , 27-Окт-04 15:04 
>Приветствую.
>Есть абсолютно дурацкая и непонятная проблема. Хотя, что вероятней, я тормоз :)
>
>Классика: FreeBSD 4.8, ipfw, natd, и утилитка tcpmssd, преобразующая MTU, если они
>на интерфейсах разные.
>А поскольку мне подается инет по vlan с циски, то на том
>интерфейсе MTU 1496:
>
>bash-2.05a# ifconfig -a
>bge0: flags=8943<UP,BROADCAST,RUNNING,PROMISC,SIMPLEX,MULTICAST> mtu 1500
>        options=3<rxcsum,txcsum>
>        inet 192.168.0.10 netmask 0xffffff00
>broadcast 192.168.0.255
>        ether 00:02:55:b7:....
>        media: Ethernet 100baseTX <full-duplex>
>        status: active
>
>vlan1: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1496
>        inet 62..... netmask 0xffffffe0
>broadcast 62......
>        ether 00:02:55:b7:.....
>        media: Ethernet autoselect (100baseTX <full-duplex>)
>        status: active
>        vlan: 6 parent interface:
>bge1
>
>
>Всё работает на ура, но не так давно заметил небольшое НО, точнее
>большое.
>На некоторые конференции с веб-интерфейсом, а так же на некоторых почтовых серверах
>с веб-интерфейсом (например rambler.ru) сообщения просто не отсылаются! При нажатии, грубо
>говоря, "отправить",  Internet Explorer говорит "Узел найден ожидается ответ...", висит
>так несколько десятков секунд, и потом "невозможно отобразить страницу". Ессно, пробовались
>разные машины, всякие там "оперы" и т.п. Вот например сюда тоже
>не отправлялось :(
>Непосредственно с самого шлюза всё отлично. Причем эта проблема далеко не на
>всех веб-почтовиках и конференциях.
>Спасайте.
>PS Ессно, natd и tcpmssd уже проапдейтил, ipfw allow from any to
>any и т.п

tcpmssd нужно цеплять на пользовательские интерфейсы а не на шлюз


"Проблема FreeBSD4.8+ipfw+natd+tcpmssd"
Отправлено Greening , 28-Окт-04 06:02 
Разобрался.
Надо было добавить ключик -b для tcpmssd и в одном правиле divert (который для tcpmssd) прописать, а у меня на два было разбито, ну т.е. типа in и out....

Рабочая конфигурация:

bash-2.05a# ifconfig -a
bge0: flags=8943<UP,BROADCAST,RUNNING,PROMISC,SIMPLEX,MULTICAST> mtu 1500
        options=3<rxcsum,txcsum>
        inet 192.168.100.10 netmask 0xffffff00 broadcast 192.168.100.255
        ether 00:02:55:.......
        media: Ethernet 100baseTX <full-duplex>
        status: active

vlan1: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1496
        inet 62.хх.хх.хх netmask 0xffffffe0 broadcast 62.хх.хх.хх
        ether 00:02:........
        media: Ethernet autoselect (100baseTX <full-duplex>)
        status: active
        vlan: 6 parent interface: bge1

bash-2.05a# ipfw show|grep divert
00500   374202    38135646 divert 8668 ip from 192.168.100.1 to any out xmit vlan1
00502   446632   213226167 divert 8669 ip from any to 62.хх.хх.хх in recv vlan1
00504   955977   261988898 divert 8670 ip from any to any via vlan1

(здесь 500 и 502 правило для natd, а 504 для tcpmssd)

bash-2.05a# ps ax|grep tcpmssd
96737  ??  Ss     0:20.30 /usr/local/bin/tcpmssd -b -p 8670 -i vlan1


Вот так всё работает с разными MTU на интерфейсах.

Может у кого есть другие решения? :)


"Проблема FreeBSD4.8+ipfw+natd+tcpmssd"
Отправлено Greening , 01-Ноя-04 13:03 
А, добавлю как запущен natd

bash-2.05a# ps ax|grep natd
96733  ??  Ss     1:26.18 /sbin/natd -f /etc/natd.conf

bash-2.05a#cat /etc/natd.conf
same_ports yes
use_sockets yes
same_ports yes
dynamic yes
log no
bash-2.05a#