FreeBSD 7.2 + kernel nat

Настройка сетевых служб, маршрутизации, фаерволлов. Проблемы с сетевым оборудованием.
Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Biggless
проходил мимо
Сообщения: 6
Зарегистрирован: 2009-09-03 15:50:34

FreeBSD 7.2 + kernel nat

Непрочитанное сообщение Biggless » 2009-10-07 13:39:56

Вышестоящий пров выдал приблизительно следующую следующую информацию:

1.2.3.4 - шлюз
1.2.3.5 - наш роутер

6.7.8.9, 6.7.8.10 - наши внешние айпишники.
Пров пропускает только трафик, занатенный на один из внешних айпишников.

Есть:
для выхода в инет из нашей подсети 10.10.1.1/24 трафик завернут натом на 6.7.8.9, все работает.

Хочется:
при обращении к tcp 6.7.8.10:22 трафик попадал на роутер 1.2.3.5:22 (10.10.1.1:22)
при обращении к tcp 6.7.8.10:23 трафик попадал на хост 10.10.1.17:22
при обращении к tcp 6.7.8.10:80 трафик попадал на хост 10.10.1.3:80
при обращении к udp 6.7.8.10:21000 трафик попадал на хост 10.10.1.17:21000
(по аналогии список продолжается)
чтобы роутер (1.2.3.5, 10.10.1.1) ходил в инет

Кто что подскажет?

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

Аватара пользователя
skeletor
майор
Сообщения: 2548
Зарегистрирован: 2007-11-16 18:22:04

Re: FreeBSD 7.2 + kernel nat

Непрочитанное сообщение skeletor » 2009-10-07 14:04:23

Читай про redirect_port вот здесь http://www.lissyara.su/?id=1967

Biggless
проходил мимо
Сообщения: 6
Зарегистрирован: 2009-09-03 15:50:34

Re: FreeBSD 7.2 + kernel nat

Непрочитанное сообщение Biggless » 2009-10-07 15:39:59

а как роутер в инет выпустить при таких условиях?

Аватара пользователя
skeletor
майор
Сообщения: 2548
Зарегистрирован: 2007-11-16 18:22:04

Re: FreeBSD 7.2 + kernel nat

Непрочитанное сообщение skeletor » 2009-10-07 16:48:28

Не понял вопрос :cz2:

Biggless
проходил мимо
Сообщения: 6
Зарегистрирован: 2009-09-03 15:50:34

Re: FreeBSD 7.2 + kernel nat

Непрочитанное сообщение Biggless » 2009-10-08 10:33:28

Вышестоящий провайдер пропускает только занатенные пакеты.
Как завернуть трафик от самого сервера в нат?

Аватара пользователя
skeletor
майор
Сообщения: 2548
Зарегистрирован: 2007-11-16 18:22:04

Re: FreeBSD 7.2 + kernel nat

Непрочитанное сообщение skeletor » 2009-10-09 11:27:26

Biggless писал(а):Вышестоящий провайдер пропускает только занатенные пакеты.
Как завернуть трафик от самого сервера в нат?
Поднять на сервере NAT.

Аватара пользователя
Fioktist
мл. сержант
Сообщения: 84
Зарегистрирован: 2007-04-06 4:06:28
Откуда: Россия

Re: FreeBSD 7.2 + kernel nat

Непрочитанное сообщение Fioktist » 2009-10-13 18:05:22

собири ядро с #обязательно для ядерного нат

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

####    main rule
options         IPFIREWALL
options         IPFIREWALL_VERBOSE
options         IPFIREWALL_VERBOSE_LIMIT=150
options         IPFIREWALL_NAT #обязательно для ядерного нат
options         LIBALIAS #обязательно для ядерного нат
options         IPFIREWALL_FORWARD
options         IPDIVERT
options         DUMMYNET
options         HZ=1000
####    end main rule

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

#cat /root/ipfw.sh
#!/bin/sh

ipfw="/sbin/ipfw -q"

ethHome="xl2"
ethGT="xl1"
ethMA="xl0"

ipHOME="192.168.255.1"
ipGT="10.104.4.14"
ipMA="10.11.36.1"

DomNet="192.168.255.0/28"
GtNet="10.104.4.0/24"
MaNet="10.11.0.0/16"

# сбрасываем все правила
${ipfw} -f flush
# сбрасываем все pipe
${ipfw} -f pipe flush
# сбрасываем очереди
${ipfw} -f queue flush

${ipfw} add 200 allow all from any to any via lo0
${ipfw} add 210 deny ip from any to 127.0.0.0/8
${ipfw} add 220 deny ip from 127.0.0.0/8 to any

# Делаем NAT (трансляцию сетевых адресов)
${ipfw} nat 8 config ip ${ipGT}
${ipfw} nat 9 config ip ${ipMA}
${ipfw} add 1020 nat 8 ip from ${DomNet} to any out via ${ethGT}
${ipfw} add 1030 nat 8 ip from any to ${ipGT} in via ${ethGT}
${ipfw} add 1040 nat 9 ip from ${DomNet} to any out via ${ethMA}
${ipfw} add 1050 nat 9 ip from any to ${ipMA} in via ${ethMA}

# запрещаем всё и всем.
${ipfw} add 4000 deny ip from any to any
это обрезанный лист на домашнем gw через который выхожу в две разные деревенские локалки, на форуме полно примеров с мульти натингом...
хотябы тут почитай

да вот еще gw по умолчанию в /etc/rc.conf стоит в ту локалку куда я чаще забредаю да и где публики побольше, а на менее юзаемую локалку написал в /usr/local/etc/rc.d/add_route.sh статические роуты, чтото около 20 строк
Самое возмутительное в аргументах оппонента - это изобилие правды.