Привет!
Очень наболела одна проблема - прошу помощи сообщества :-)
Имеется FreeBSD 4.4 Release, ipfilter, ipnat.
Один интерфейс смотрит к провайдеру (реальный IP: 123.123.12.78),
другим в локалку - 192.168.44.0/24.
Во "внутренней" сети поднят RAS (PPTP) на Windows 2000 Server.
Хочется отмапить RAS наружу.
В /etc/ipnat.conf прописано:
..
rdr xl0 123.123.12.78/32 port 0 -> 192.168.44.2 port 0 gre
rdr xl0 123.123.12.78/32 port 1723 -> 192.168.44.2 port 1723 tcp
rdr xl0 123.123.12.78/32 port 1723 -> 192.168.44.2 port 1723 udp
..
ipf Для простоты ничего не фильтрует - разрешено все.
Все замечательно работает. То есть внешние клиенты успешно устанавливают связь с сервером, внутренние клиенты, сидящие за NAT(ом), свободно соединяются с такими же Windows 2000 RAS(ами),
что обеспечивается двумя строчками в /etc/ipnat.conf:
map xl0 192.168.44.0/24 -> 123.123.12.78/32 portmap tcp/udp 50000:64000
map xl0 192.168.44.0/24 -> 123.123.12.78/32
Но тут-то возникла необходимость соединяться по PPTP еще с неким сервером SERV1. Так вот в описанной выше конфигурации ipnat(а) возникают проблемы с GRE протоколом. Во время соединения tcpdump показывает, что GRE траффик направляется к 192.168.44.2, т.е. по видимому подпадает под правило:
rdr xl0 123.123.12.78/32 port 0 -> 192.168.44.2 port 0 gre
Это происходит только при соединении SERV1. С другими Win2000 RAS серверами такого не происходит. GRE маскарадится совершенно корректно.
Если закомментировать строчку с rdr xl0 123.123.12.78/32 port 0 -> 192.168.44.2 port 0 gre, то все начинает работать как надо, но мне нужен отмапленный наружу сервис..
Есть подозрение, что в качестве SERV1 выступает не Win2000 а некая железка типа NETOPIA. Но доступа на нее у меня нет. Раньше с такими зверями не сталкивался...
Что делать? Какие мысли?
На Всезнающем www.google.com ответа не нашел..