Нат на внешнем интерфейсе

Настройка сетевых служб, маршрутизации, фаерволлов. Проблемы с сетевым оборудованием.
Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
mada1ex
рядовой
Сообщения: 12
Зарегистрирован: 2008-10-07 12:09:44
Откуда: Таганрог

Нат на внешнем интерфейсе

Непрочитанное сообщение mada1ex » 2009-06-20 19:41:31

Добрый день, помогите кто может:

ЗАДАЧА: Есть локальная сеть 10.0.0.x. В ней находится по адресу 10.0.0.13 стоит компьтер с 4й фряхой. получающий интернет по опенвпн тунелю и при помощи ната раздает его в локалку 192.168.0.0. Сейчас появилась необходимость раздавать интернет с 13 ипа ещё и на компьютер с ипом 10.0.0.24.
Я попробовал просто поставить основной шлюз на 13 и добавил диверт с этого ипа на тунель. Но интернет так и не появился :( Трейсроут показывает что пакеты идут на сервер 10.0.0.13 и пропадают на нем.

Сразу отмечу что обновлять фряху с 4ки и переносить новый компьютер в подсеть 192.* возможности нет.

Хостинговая компания 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/

Аватара пользователя
---nebo---
старшина
Сообщения: 424
Зарегистрирован: 2008-11-01 21:06:23
Откуда: Киев
Контактная информация:

Re: Нат на внешнем интерфейсе

Непрочитанное сообщение ---nebo--- » 2009-06-20 21:21:38

покажите конфиг фаера, ведь есть разница в каком месте вы впишете еще один нат, может пакеты у вас проходят еще до ната?
...участки под застройку в живописном месте Интернет

mada1ex
рядовой
Сообщения: 12
Зарегистрирован: 2008-10-07 12:09:44
Откуда: Таганрог

Re: Нат на внешнем интерфейсе

Непрочитанное сообщение mada1ex » 2009-06-20 21:39:34

---nebo--- писал(а):покажите конфиг фаера, ведь есть разница в каком месте вы впишете еще один нат, может пакеты у вас проходят еще до ната?
часть с дивертами:

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

divert 7078 ip from 192.168.0.0/24 to any
divert 7078 ip from 10.0.0.24/32 to any
fwd 10.0.77.1 ip from 10.0.77.2 to any
divert 7078 ip from any to 10.0.77.2
запущен натд:

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

 natd -a 10.0.77.2 -p 7078
- 10.0.77.2 - 10.0.77.1 - это опенвпн тунель по которому идет интернет на сервер

Аватара пользователя
---nebo---
старшина
Сообщения: 424
Зарегистрирован: 2008-11-01 21:06:23
Откуда: Киев
Контактная информация:

Re: Нат на внешнем интерфейсе

Непрочитанное сообщение ---nebo--- » 2009-06-20 23:24:56

Вам для полчения интернета нужно добраться до 10.0.77.1.

добавте в rc.conf(если там нет)

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

gateway_enable="YES"
а на 10.0.0.24 просто пропишите шлюз 10.0.0.13 и все, больше никакой диверт прописывать не нужно.
На фряхе ведь есть маршруты (кстати покажите netstat -r) в 10.0.77.0, 0.0.0.0/0 и в 10.0.0.0, а гейтвей_енейбл позволит перебрасывать пакеты между интерфейсами и фряха будет просто маршрутизировать пакеты с 10.0.0.24->10.0.77.1.

Вам для полчения интернета нужно добраться до 10.0.77.1.
...участки под застройку в живописном месте Интернет

mada1ex
рядовой
Сообщения: 12
Зарегистрирован: 2008-10-07 12:09:44
Откуда: Таганрог

Re: Нат на внешнем интерфейсе

Непрочитанное сообщение mada1ex » 2009-06-21 10:58:14

gateway_enable в rc.conf прописан.
Значит без добавления диверта с 10.0.0.24 пингуется 10.0.77.1 и трайсроут инета обрывается теперь на нем. Если же добавляю диверт - то трейсроут останавливается уже на 10.0.0.13 :(
Получается что без диверта почему то не пускает уже сервер 10.0.77.1?

UPD В общем немного подразобрался... Действительно не пускает пакеты сервер 10.0.77.1. Тогда такой вопрос: как мне занатить пакеты от 10.0.0.24 чтобы 10.0.77.1 "думал" :) что их шлет 10.0.0.13?

Аватара пользователя
---nebo---
старшина
Сообщения: 424
Зарегистрирован: 2008-11-01 21:06:23
Откуда: Киев
Контактная информация:

Re: Нат на внешнем интерфейсе

Непрочитанное сообщение ---nebo--- » 2009-06-21 11:37:07

как мне занатить пакеты от 10.0.0.24 чтобы 10.0.77.1 "думал" что их шлет 10.0.0.13?
если 10.0.77.1 принимает пакеты только от 10.0.0.13, просто шлюзом тут не обойтись, потому что нужно менять IP адрес отправителя пакета, поетому нужно натить, а если так

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

divert 7078 ip from 192.168.0.0/24 to any via ${OUT_INT}
divert 7078 ip from 10.0.0.24/32 to any via ${OUT_INT}
allow ip from any to any via ${OUT_INT}
allow ip from any to any via ${IN_INT}
${OUT_INT},${IN_INT} имена интерфейсов

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

fwd 10.0.77.1 ip from 10.0.77.2 to any
я думаю не нужно, потому что на фре существует маршрут 0.0.0.0/0 через 10.0.77.1 и пакеты приходящие на фрю будут отправляться на этот адрес автоматически, заворачивать их туда не нужно

а какое назначение

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

divert 7078 ip from any to 10.0.77.2
, ну во-первых не указан через какой интерфейс натить, а во-вторых если приходят ответы с 10.0.77.1, то "разначиваться" они будут автоматически, а вы эти пакеты еще раз натите и не понятно что с ними происходит

посмотрите еще
www.lissyara.su/?id=1127
www.lissyara.su/?id=1536
www.lissyara.su/?id=1356
...участки под застройку в живописном месте Интернет

mada1ex
рядовой
Сообщения: 12
Зарегистрирован: 2008-10-07 12:09:44
Откуда: Таганрог

Re: Нат на внешнем интерфейсе

Непрочитанное сообщение mada1ex » 2009-06-21 15:50:58

---nebo---, спасибо за помощь. Этот сервер до меня настраивал очень-очень давно другой человек и почему так написаны правила фаервола непонятно ) Щас проблему временно решил установкой прокси. Буду дальше копаться.

Wolf4ara
проходил мимо
Сообщения: 1
Зарегистрирован: 2010-04-22 15:47:53

Re: Нат на внешнем интерфейсе

Непрочитанное сообщение Wolf4ara » 2010-04-22 15:51:24

всем привет. а не у кого не возникало проблем с высокими пингами? как я понял у ipfw это большая проблема:)

Гость
проходил мимо

Re: Нат на внешнем интерфейсе

Непрочитанное сообщение Гость » 2010-04-22 16:35:41

не надо что попало, куда попало отвечать - писать

создайте свою тему
опишите нормально проболему
сформулируйте вопрос

Akela
рядовой
Сообщения: 33
Зарегистрирован: 2009-04-23 10:27:30
Откуда: Украина, Запорожье

Re: Нат на внешнем интерфейсе

Непрочитанное сообщение Akela » 2010-10-28 10:41:17

Помогите разобраться перенапровлением портов, чего здесь не хватает.

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

#!/bin/bash

FwCMD="/sbin/ipfw -q"
LanOut="vr0"
LanIn="rl0"
IpOut="193.0.***.***"
IpIn="192.168.3.1"
NetMask="24"
NetIn="192.168.3.0"
ks="keep-state"
MyLan="192.168.3.0/24"
skip="skipto 1000"

${FwCMD} -f flush

${FwCMD} 001 add allow ip from any to any via lo0
${FwCMD} 002 add allow ip from any to any via ${LanIn}
${FwCMD} 100 add divert natd ip from any to ${IpOut} in via ${LanOut}

${FwCMD} 101 add check-state

##Http port 80 and SQUID
${FwCMD} 111 add $skip tcp from 192.168.3.4 to any 80 out via ${LanOut} setup keep-state
${FwCMD} 112 add $skip tcp from 192.168.3.5 to any 80 out via ${LanOut} setup keep-state
${FwCMD} 113 add $skip tcp from ${IpOut} to any 80 out via ${LanOut} setup keep-state

#${FwCMD} 120 add allow tcp from ${MyLan} to ${IpIn} 3128 in via ${LanIn} setup keep-state
##Http port 80 and SQUID END

# SSL
${FwCMD} 130 add $skip tcp from ${IpOut} to any 443 out via ${LanOut} setup keep-state
${FwCMD} 131 add $skip tcp from ${MyLan} to any 443 out via ${LanOut} setup keep-state
# SSL END

##DNS
${FwCMD} 140 add $skip tcp from ${IpOut} to any 53 out via ${LanOut} setup keep-state
${FwCMD} 141 add $skip tcp from 192.168.3.2 to any 53 out via ${LanOut} setup keep-state
${FwCMD} 142 add $skip udp from ${IpOut} to any 53 out via ${LanOut} keep-state
${FwCMD} 143 add $skip udp from 192.168.3.2 to any 53 out via ${LanOut} keep-state
##

##ICMP
${FwCMD} 160 add allow icmp from ${MyLan} to any icmptypes 0,8,11 out via ${LanOut} keep-state
##
## SSH
${FwCMD} 170 add allow tcp from any to me 22 in via ${LanOut} setup limit src-addr 2
${FwCMD} 171 add allow tcp from any to me 22 in via ${LanIn} setup limit src-addr 2
##SSH END

###POST
${FwCMD} 180 add $skip tcp from ${MyLan} to any 110 out via ${LanOut} setup keep-state
${FwCMD} 181 add $skip tcp from ${MyLan} to any 25 out via ${LanOut} setup keep-state
###Post end

####Redirect##################################################################################
#KPK
${FwCMD} 190 add $skip tcp from any to 192.168.3.4 10000 in via ${LanOut}
${FwCMD} 191 add $skip tcp from any to 192.168.3.5 15000 in via ${LanOut}
#RDP
${FwCMD} 250 add allow tcp from any to 192.168.3.4 3389 in via ${LanOut}
${FwCMD} 260 add allow tcp from any to 192.168.3.5 3390 in via ${LanOut}
#Radmin
${FwCMD} 290 add allow tcp from any to 192.168.3.5 3391 in via ${LanOut}
#####REDIRECT END ############################################################################

##RDP
${FwCMD} 305 add $skip tcp from ${MyLan} to any 3389 out via ${LanOut} setup keep-state

##Teamviewer
${FwCMD} 310 add $skip tcp from ${MyLan} to any 5938 out via ${LanOut} setup keep-state
${FwCMD} 320 add allow tcp from any to ${MyLan} 5938 in via ${LanOut} setup limit src-addr 2

#Trafic-system
${FwCMD} 330 add $skip tcp from ${MyLan} to any 5858-5861 out via ${LanOut} setup keep-state

#Globus
${FwCMD} 340 add $skip tcp from ${MyLan} to 77.120.99.109 3201 out via ${LanOut} setup keep-state

##IpSEC
${FwCMD} 400 add allow ip from ${IpOut} to ***.***.129.242 out via ${LanOut}
${FwCMD} 410 add allow ip from 91.189.***.*** to ${IpOut} in via ${LanOut}

${FwCMD} 420 add allow ip from ${MyLan} to 192.168.1.0/24 out via gif0
${FwCMD} 430 add allow ip from 192.168.1.0/24 to ${MyLan} in via gif0

${FwCMD} 440 add allow ip from ${IpOut} to 195.189.***.*** out via ${LanOut}
${FwCMD} 450 add allow ip from 195.189.***.*** to ${IpOut} in via ${LanOut}

${FwCMD} 460 add allow ip from ${MyLan} to 192.168.4.0/24 out via gif1
${FwCMD} 470 add allow ip from 192.168.4.0/24 to ${MyLan} in via gif1

${FwCMD} 480 add allow ip from ${IpOut} to 195.189.***.*** out via ${LanOut}
${FwCMD} 490 add allow ip from 195.189.***.*** to ${IpOut} in via ${LanOut}

${FwCMD} 500 add allow ip from ${MyLan} to 192.168.2.0/24 out via gif2
${FwCMD} 510 add allow ip from 192.168.2.0/24 to ${MyLan} in via gif2

${FwCMD} 520 add allow ip from ${IpOut} to 195.189.***.*** out via ${LanOut}
${FwCMD} 530 add allow ip from 195.189.***.*** to ${IpOut} in via ${LanOut}

${FwCMD} 540 add allow ip from ${MyLan} to 192.168.5.0/24 out via gif3
${FwCMD} 550 add allow ip from 192.168.5.0/24 to ${MyLan} in via gif3

${FwCMD} 560 add allow ip from ${IpOut} to 195.62.***.*** out via ${LanOut}
${FwCMD} 570 add allow ip from 195.62.***.*** to ${IpOut} in via ${LanOut}

${FwCMD} 580 add allow ip from ${MyLan} to 192.168.6.0/24 out via gif4
${FwCMD} 590 add allow ip from 192.168.6.0/24 to ${MyLan} in via gif4
###


${FwCMD} 900 add deny tcp from ${MyLan} to any 80 out via ${LanOut}
${FwCMD} 910 add deny tcp from any to any frag in via ${LanOut}
${FwCMD} 920 add deny tcp from any to any established in via ${LanOut}

${FwCMD} 999 add deny log ip from any to any out via ${LanOut} 

${FwCMD} 1000 add divert natd ip from ${MyLan} to any out via ${LanOut}

${FwCMD} 1001 add allow log ip from any to any

${FwCMD} 2000 add deny log ip from any to any


Alpha789
проходил мимо

Re: Нат на внешнем интерфейсе

Непрочитанное сообщение Alpha789 » 2010-12-13 17:46:16

Ребят, подскажите, почему клиент не может забрать\отправить почту?
Конфиг брал с вашего сайта:

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

# Нет запретов внутри интерфейса смотрящего в локальную сеть
$cmd 010 allow all from any to any via $iif                                                                                                                                                                                                  
# Зворачиваем всех в сквид
$cmd 030 fwd 192.168.0.1,3128 tcp from $lannet to any 21,80,443,5190,8080,8101 out via $oif                                                                                                                                                  
# Потом в NAT
$cmd 040 divert natd ip from any to any in via $oif 
# Динамическая таблица
$cmd 050 check-state  
.....
# Разрешаем исходящую функцию отправки и приема почты                                                                                                                                                                                        
$cmd 220 allow tcp from any to any 25 out via $oif setup $ks                                                                                                                                                                                 
$cmd 221 allow tcp from any to any 110 out via $oif setup $ks  
...
# Запрещаем и протоколируем все остальное пытающееся пройти.                                                                                                                                                                                 
$cmd 299 deny log all from any to any out via $oif   

Bayerische
капитан
Сообщения: 1820
Зарегистрирован: 2010-12-25 20:41:50
Откуда: Хлебная столица

Re: Нат на внешнем интерфейсе

Непрочитанное сообщение Bayerische » 2011-03-07 20:23:43

Не пойму, как сделать WanIp динамическим

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

WanIp="88.147.128.13"

ipfw -q add allow tcp from any to WanIp in via if1

Bayerische
капитан
Сообщения: 1820
Зарегистрирован: 2010-12-25 20:41:50
Откуда: Хлебная столица

Re: Нат на внешнем интерфейсе

Непрочитанное сообщение Bayerische » 2011-03-07 21:20:47

В общем, почему-то ничего из найденного не заработало, наваял по мотивам своё. Вроде определяет.

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

WanIp=`ifconfig em0 | grep inet | awk '{print $2}'`

Bayerische
капитан
Сообщения: 1820
Зарегистрирован: 2010-12-25 20:41:50
Откуда: Хлебная столица

Re: Нат на внешнем интерфейсе

Непрочитанное сообщение Bayerische » 2011-03-07 21:40:12

Я подумал вот что... За NAT локалка провайдера. А Интернет подключается через VPN. Правила загружаются до старта VPN. Как же он будет работать, ведь там свой IP, и его тоже надо прописывать в фаере?

Bayerische
капитан
Сообщения: 1820
Зарегистрирован: 2010-12-25 20:41:50
Откуда: Хлебная столица

Re: Нат на внешнем интерфейсе

Непрочитанное сообщение Bayerische » 2011-03-07 23:58:14

нужны ли для l2tp следующие вещи:

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

    options NETGRAPH
    options NETGRAPH_ETHER
    options NETGRAPH_NETFLOW
    options NETGRAPH_SOCKET
    options NETGRAPH_TEE
    #options NETGRAPH_MPPC_ENCRYPTION
    #options NETGRAPH_MPPC_COMPRESSION
    options NETGRAPH_BPF
    options NETGRAPH_IFACE
    options NETGRAPH_KSOCKET
    options NETGRAPH_PPP
    options NETGRAPH_PPTPGRE
    options NETGRAPH_TCPMSS
    options NETGRAPH_VJC
    options NETGRAPH_ONE2MANY
    options NETGRAPH_RFC1490
    options NETGRAPH_TTY
    options NETGRAPH_UI


Bayerische
капитан
Сообщения: 1820
Зарегистрирован: 2010-12-25 20:41:50
Откуда: Хлебная столица

Re: Нат на внешнем интерфейсе

Непрочитанное сообщение Bayerische » 2011-03-08 11:58:44

Гость, я знаю про kldload. Вопрос был, нужен ли этот NETGRAPH для mpd.