The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"ipfw + natd"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Открытые системы на сервере (Маршрутизация, NAT / FreeBSD)
Изначальное сообщение [ Отслеживать ]

"ipfw + natd"  +/
Сообщение от net (??) on 05-Дек-12, 17:04 
Добрый день!

Опишу сперва свой стенд:
на сервере установлена FreeBSD 8.2

###/etc/rc.conf###
hostname="gate_test"
defaultrouter="192.168.1.1"
gateway_enable="YES"
ifconfig_xl0="inet 192.168.1.253 netmask 255.255.255.0" # внешняя сеть
ifconfig_age0="inet 172.16.1.1 netmask 255.255.255.0"   # локальная сеть
sshd_enable="YES"
firewall_enable="YES"
#firewall_type="OPEN"
firewall_script="/etc/ipfw"
natd_enable="YES"
natd_interface="xl0"
natd_flags="-f /etc/natd.conf"
named_enable="YES"
squid_enable="YES"
##################

###/etc/ipfw### РАБОТАЮЩИЙ

#!/bin/sh

fwcmd="/sbin/ipfw"
${fwcmd} -f flush

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

${fwcmd} add 300 deny icmp from any to any frag

${fwcmd} add 410 fwd 172.16.1.1,3128 tcp from 172.16.1.0/24 to any 80
${fwcmd} add 500 divert natd all from any to any via xl0
${fwcmd} add 600 allow all from any to any

${fwcmd} add 65535 deny log all from any to any
############################

Моя конечная цель - настроить в локальной сети вторую подсеть, при этом одна подсеть должна натиться, а вторая натиться не должна. Начал я с малого, решил переписать правило
"${fwcmd} add 500 divert natd all from any to any via xl0" таким образом, чтобы натилась только подсеть 172.16.1.0/24, читал документацию, искал примеры, соорудил вот такое правило и поставил его вместо старого:
${fwcmd} add 500 divert natd all from 172.16.1.0/24 to any via xl0

в результате работает только 410 правило, благополучно пересылая пакеты с 80 порта сквиду... подскажите, пожалуйста, где я ошибся :)

Ответить | Правка | Cообщить модератору

Оглавление

  • ipfw + natd, hzhzhz, 18:08 , 05-Дек-12, (1)  
    • ipfw + natd, net, 09:48 , 06-Дек-12, (2)  

Сообщения по теме [Сортировка по времени | RSS]


1. "ipfw + natd"  +/
Сообщение от hzhzhz on 05-Дек-12, 18:08 
> ${fwcmd} add 500 divert natd all from any to any via xl0

Дивертов должно быть как бы 2. Один дивертит пакеты из локалки в natd, где им подменяется адрес/порт отправителя (старые значения сохраняется в табличке) и отправляются в интернеты. И диверт который ответные пакеты из интернетов дивертит в natd и там восстанавливает им обратно по табличке адрес получателя. Работающее правило 500 выполяло оба этих  диверта, а после того как наложилось ограничение второй диверт выполнятся перестал. Нужно еще одно правило для "ответных" пакетов типа
ipfw add 490 divert natd ip from any to me recv xl0
Трафик из второй подсетки в natd лучше не дивертить

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

2. "ipfw + natd"  +/
Сообщение от net (??) on 06-Дек-12, 09:48 
Спасибо большое, теперь разобрался :)


Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру