NAT & IPFW
Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
-
kleine
- рядовой
- Сообщения: 21
- Зарегистрирован: 2007-09-20 9:37:45
NAT & IPFW
Freebsd 6.2
Имеется 2 интерфейса: rl0-локальная сеть, tun0-инет
Сервер используется не только как gateway в интернет, но и как gateway в локалку.
Требуется натировать пакеты, адресованные и в инет и в локалку.
Локальная сеть: 10.0.0.0/8 и 192.168.0.0/16.
IP, выданный провайдером: a.b.c.d
Ну и вопрос: Как это реализовать?
Имеется 2 интерфейса: rl0-локальная сеть, tun0-инет
Сервер используется не только как gateway в интернет, но и как gateway в локалку.
Требуется натировать пакеты, адресованные и в инет и в локалку.
Локальная сеть: 10.0.0.0/8 и 192.168.0.0/16.
IP, выданный провайдером: a.b.c.d
Ну и вопрос: Как это реализовать?
Услуги хостинговой компании Host-Food.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/
Тарифы на виртуальные сервера (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/
-
Dmitriy.A
- ст. сержант
- Сообщения: 383
- Зарегистрирован: 2006-12-15 17:09:14
- Откуда: Москва
Re: NAT & IPFW
Что то я не понял - локалку то нафига натить? Реализовать при помощи ipfw. По подробнее напиши с примерами (сервер 2 сетевухи, на одной ип такой то - на другой такой то) тогда напишу, а то с первого прочтения не понял что хочешь.
-
kleine
- рядовой
- Сообщения: 21
- Зарегистрирован: 2007-09-20 9:37:45
Re: NAT & IPFW
Сетевуха одна -- rl0 (10.1.0.1)
Второй интерфейс -- tun0 (pppoe c сервером, выдающим инет)(192.168.17.100)
1) Всё дело в том, что сервер выдаёт инет только этой машине (10.1.0.1)
Т.е интернет нужно натить.
2) Локалку тоже натить надо. По эстетическим причинам=)
Второй интерфейс -- tun0 (pppoe c сервером, выдающим инет)(192.168.17.100)
1) Всё дело в том, что сервер выдаёт инет только этой машине (10.1.0.1)
Т.е интернет нужно натить.
2) Локалку тоже натить надо. По эстетическим причинам=)
-
kleine
- рядовой
- Сообщения: 21
- Зарегистрирован: 2007-09-20 9:37:45
Re: NAT & IPFW
Ах да.
Локалка 10.1.0.1/8
Нужно скрыть за натом 10.1.23.0/22 (этот сегмент не виден для других router'ов из локалки)
Локалка 10.1.0.1/8
Нужно скрыть за натом 10.1.23.0/22 (этот сегмент не виден для других router'ов из локалки)
- dikens3
- подполковник
- Сообщения: 4856
- Зарегистрирован: 2006-09-06 16:24:08
- Откуда: Нижний Новгород
- Контактная информация:
Re: NAT & IPFW
rc.confppp.conf+ фаер
allow from any to any
Код: Выделить всё
# Разрешаем Forwarding
gateway_enable="YES"
# PPPoE
ppp_enable="YES"
ppp_profile="Internet"
ppp_mode="ddial"
ppp_user="root"
ppp_nat="YES"Код: Выделить всё
default:
Internet:
set log Phase tun command
set device PPPoE:rl1
set authname login
set authkey password
set mru 1492
set mtu 1492
enable lqr
set lqrperiod 10
enable lqr echo
enable echo
set dial
set login
set timeout 0
set redial 0 0
# NAT
nat enable yes
nat log no
nat same_ports yes
nat unregistered_only yes
nat deny_incoming yes
allow from any to any
Лучше установить FreeBSD, чем потратить 30 лет на Linux'ы и выяснить какой из них хуже.
-
APanyovin
- мл. сержант
- Сообщения: 79
- Зарегистрирован: 2007-05-21 8:41:22
Re: NAT & IPFW
а как для ng0
в примерах есть описание настроек, но у меня все глотается на 2 привале ната
в примерах есть описание настроек, но у меня все глотается на 2 привале ната
- dikens3
- подполковник
- Сообщения: 4856
- Зарегистрирован: 2006-09-06 16:24:08
- Откуда: Нижний Новгород
- Контактная информация:
Re: NAT & IPFW
Подробнее напиши что нужно.APanyovin писал(а):а как для ng0
в примерах есть описание настроек, но у меня все глотается на 2 привале ната
Лучше установить FreeBSD, чем потратить 30 лет на Linux'ы и выяснить какой из них хуже.
-
APanyovin
- мл. сержант
- Сообщения: 79
- Зарегистрирован: 2007-05-21 8:41:22
Re: NAT & IPFW
ок
есть ipfw
/etc/rc.firewall
в rc.conf
все проблема во втором правиле ната
оно ловит все пакеты на внешнем интерфейсе, где криво?
есть ipfw
/etc/rc.firewall
Код: Выделить всё
#!/bin/sh
FwCMD="/sbin/ipfw -q"
LanOut="ng0"
IpOut="ХХХ.ХХХ.ХХХ.ХХХ"
LanIn="xl0"
IpIn="192.168.1.5"
NetIn="192.168.1.0/24"
Ip_Lan="192.168.1"
VpnIf="ng1,ng2,ng3,ng4"
AllowTcpOutProtocols="80,443,25,110,21"
AllowInProtocols="22"
DNSList="80.82.32.9"
${FwCMD} -f flush
${FwCMD} -f pipe flush
${FwCMD} -f queue flush
${FwCMD} add allow ip from any to any via lo0
${FwCMD} add deny ip from any to 127.0.0.0/8
${FwCMD} add deny ip from 127.0.0.0/8 to any
${FwCMD} add deny ip from ${NetIn} to any in via ${LanOut}
${FwCMD} add deny ip from ${NetOut} to any in via ${LanIn}
${FwCMD} add deny ip from any to 10.0.0.0/8 in via ${LanOut}
${FwCMD} add deny ip from any to 172.16.0.0/12 in via ${LanOut}
${FwCMD} add deny ip from any to 192.168.0.0/16 in via ${LanOut}
${FwCMD} add deny ip from any to 0.0.0.0/8 in via ${LanOut}
${FwCMD} add deny ip from any to 169.254.0.0/16 in via ${LanOut}
${FwCMD} add deny ip from any to 224.0.0.0/4 in via ${LanOut}
${FwCMD} add deny ip from any to 240.0.0.0/4 in via ${LanOut}
${FwCMD} add deny icmp from any to any frag
${FwCMD} add deny log icmp from any to 255.255.255.255 in via ${LanOut}
${FwCMD} add deny log icmp from any to 255.255.255.255 out via ${LanOut}
#${FwCMD} add fwd 127.0.0.1,3128 tcp from ${NetIn} to any 80 via ${LanOut}
${FwCMD} add divert natd ip from ${NetIn} to any out via ${LanOut}
${FwCMD} add divert natd ip from any to ${IpOut} in via ${LanOut}
${FwCMD} add deny ip from 10.0.0.0/8 to any out via ${LanOut}
${FwCMD} add deny ip from 172.16.0.0/12 to any out via ${LanOut}
${FwCMD} add deny ip from 192.168.0.0/16 to any out via ${LanOut}
${FwCMD} add deny ip from 0.0.0.0/8 to any out via ${LanOut}
${FwCMD} add deny ip from 169.254.0.0/16 to any out via ${LanOut}
${FwCMD} add deny ip from 224.0.0.0/4 to any out via ${LanOut}
${FwCMD} add deny ip from 240.0.0.0/4 to any out via ${LanOut}
${FwCMD} add allow icmp from any to any icmptypes 0,8,11
${FwCMD} add allow ip from any to ${NetIn} in via ${LanIn}
${FwCMD} add allow ip from ${NetIn} to any out via ${LanIn}
${FwCMD} add allow tcp from any to any established
${FwCMD} add allow udp from any to ${IpOut} 53 in via ${LanOut}
${FwCMD} add allow udp from ${IpOut} 53 to any out via ${LanOut}
${FwCMD} add allow udp from any 53 to ${IpOut} in via ${LanOut}
${FwCMD} add allow udp from ${IpOut} to any 53 out via ${LanOut}
${FwCMD} add allow udp from any to any 123 via ${LanOut}
${FwCMD} add allow tcp from any to ${IpOut} 53 in via ${LanOut} setup
${FwCMD} add allow tcp from any to ${IpOut} 80 in via ${LanOut} setup
${FwCMD} add allow tcp from any to ${IpOut} 20,21 in via ${LanOut} setup
${FwCMD} add allow tcp from any to ${IpOut} 25 in via ${LanOut} setup
${FwCMD} add allow tcp from any to ${IpOut} 22 in via ${LanOut} setup
${FwCMD} add allow tcp from any to ${IpOut} 20,21 in via ${LanOut} setup
${FwCMD} add deny log tcp from any to ${IpOut} in via ${LanOut} setup
${FwCMD} add allow tcp from ${IpOut} to any out via ${LanOut} setup
${FwCMD} add allow tcp from any to ${IpOut} in via ${LanIn} setup
########### BEGIN USERS ###############################
${FwCMD} add allow tcp from ${NetIn} to any 5190 in via ${LanIn} setup
${FwCMD} add allow tcp from ${Ip_Lan}.13 to not ${NetIn} in via ${LanIn} setup
############# END USERS #################################
${FwCMD} add deny ip from any to any
Код: Выделить всё
# IPFW
firewall_enable="YES"
firewall_type="/etc/rc.firewall"
firewall_logging="YES"
# NAT
natd_enable="YES"
natd_interface="ng0"
natd_flags=" -m -u"
Код: Выделить всё
${FwCMD} add divert natd ip from any to ${IpOut} in via ${LanOut}
Последний раз редактировалось Alex Keda 2007-10-04 14:52:12, всего редактировалось 1 раз.
Причина: Товарищщи, юзайте кнопочку [code], цените чужое время...
Причина: Товарищщи, юзайте кнопочку [code], цените чужое время...
- Alex Keda
- стреляли...
- Сообщения: 35480
- Зарегистрирован: 2004-10-18 14:25:19
- Откуда: Made in USSR
- Контактная информация:
-
APanyovin
- мл. сержант
- Сообщения: 79
- Зарегистрирован: 2007-05-21 8:41:22
Re: NAT & IPFW
сорри:)
исправлюсь!!
исправлюсь!!
- dikens3
- подполковник
- Сообщения: 4856
- Зарегистрирован: 2006-09-06 16:24:08
- Откуда: Нижний Новгород
- Контактная информация:
Re: NAT & IPFW
Да, ловит все, а что не должно? Задача то в чём тогда?оно ловит все пакеты на внешнем интерфейсе, где криво?
Лучше установить FreeBSD, чем потратить 30 лет на Linux'ы и выяснить какой из них хуже.
-
APanyovin
- мл. сержант
- Сообщения: 79
- Зарегистрирован: 2007-05-21 8:41:22
Re: NAT & IPFW
natd не хочет работать без интерфейса,
короче после загрузки mpd и поднятия интерфейса надо еще раз запустить natd -n "IF_NG"
всем спасибо!
короче после загрузки mpd и поднятия интерфейса надо еще раз запустить natd -n "IF_NG"
всем спасибо!
- dikens3
- подполковник
- Сообщения: 4856
- Зарегистрирован: 2006-09-06 16:24:08
- Откуда: Нижний Новгород
- Контактная информация:
Re: NAT & IPFW
Тогда используй ключ -a
Там можно IP-Адрес написать. Если он постоянный. (Вместо указания интерфейса)
Там можно IP-Адрес написать. Если он постоянный. (Вместо указания интерфейса)
Лучше установить FreeBSD, чем потратить 30 лет на Linux'ы и выяснить какой из них хуже.
