URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 74727
[ Назад ]

Исходное сообщение
"NAT за NAT'ом (серые адреса)"

Отправлено SHRiKE_SPb , 18-Июн-07 09:48 
Пров дал только внутренний ИП, след-но у него НАТ. Я расшариваю через свой "сервер" инет дальше в локалку, при этом пров разрешает коннекты в инет только с моего ОДНОГО внутреннего ИП, поэтому я использую "второй" НАТ. Многие предопределенные сервисы в локалке работают, т.е. http, ftp, pop3, smtp и т.п., а вот любые коннекты с портами выше 1024 отваливаются по таймауту, при этом видно что коннект идет, но такое ощущение что обратно пакеты не проходят... На FREEBSD тачке FW=OPEN, т.е. нет никаких запрещающих правил.

WAN - PROVIDER(NAT, шлюз 192.168.1.1) <-> FREEBSD (192.168.1.100 + мой NAT) <-> LAN (172.16.1.1/24)

Как в LAN'е поиметь полноценный инет? Нужно как-то прокидывать порты для каждого приложения?


Содержание

Сообщения в этом обсуждении
"NAT за NAT'ом (серые адреса)"
Отправлено palpal , 18-Июн-07 09:57 
>Пров дал только внутренний ИП, след-но у него НАТ. Я расшариваю через
>свой "сервер" инет дальше в локалку, при этом пров разрешает коннекты
>в инет только с моего ОДНОГО внутреннего ИП, поэтому я использую
>"второй" НАТ. Многие предопределенные сервисы в локалке работают, т.е. http, ftp,
>pop3, smtp и т.п., а вот любые коннекты с портами выше
>1024 отваливаются по таймауту, при этом видно что коннект идет, но
>такое ощущение что обратно пакеты не проходят... На FREEBSD тачке FW=OPEN,
>т.е. нет никаких запрещающих правил.
>
>WAN - PROVIDER(NAT, шлюз 192.168.1.1) <-> FREEBSD (192.168.1.100 + мой NAT) <-> LAN (172.16.1.1/24)
>
>Как в LAN'е поиметь полноценный инет? Нужно как-то прокидывать порты для каждого
>приложения?


У natd есть параметр -u его нужно убрать при запуске...
Ну и в IPFW добавить два правила divert, иначе не заработает


"NAT за NAT'ом (серые адреса)"
Отправлено SHRiKE_SPb , 18-Июн-07 10:18 
>У natd есть параметр -u его нужно убрать при запуске...
>Ну и в IPFW добавить два правила divert, иначе не заработает

-u естественно убран, я ж говорю - стандартные сервисы в локалке работают. Какое второе правило нужно?


"NAT за NAT'ом (серые адреса)"
Отправлено Redduck , 18-Июн-07 15:59 
Точно не знаю, но разве при серых адресах нужен NAT
WAN - PROVIDER(NAT) <->
FREEBSD rc.conf gateway_enable="YES"
         defaultrouter="192.168.1.1"
         1 LAN ifconfig_XXX="inet 192.168.1.100 netmask 255.255.255.0"
         2 LAN ifconfig_XXX="inet 172.16.1.1 netmask 255.255.255.0"
<-> LAN У компов в сети ip адреса 172.16.1.0 - 172.16.1.254 Default Gateway 172.16.1.1

FreeBSD знает что такое серые адреса и умеет их маршрутизировать как надо.
Можно посмотреть маршруты netstat -r


"NAT за NAT'ом (серые адреса)"
Отправлено SHRiKE_SPb , 18-Июн-07 17:46 
>Точно не знаю, но разве при серых адресах нужен NAT
>WAN - PROVIDER(NAT) <->

"пров разрешает коннекты в инет только с моего ОДНОГО внутреннего ИП"


"NAT за NAT'ом (серые адреса)"
Отправлено Redduck , 19-Июн-07 09:48 
Извините за невнимательность.
А прокси сервер не хочешь использовать?
>>Точно не знаю, но разве при серых адресах нужен NAT
>>WAN - PROVIDER(NAT) <->
>
>"пров разрешает коннекты в инет только с моего ОДНОГО внутреннего ИП"



"NAT за NAT'ом (серые адреса)"
Отправлено SHRiKE_SPb , 19-Июн-07 10:32 
>Извините за невнимательность.
>А прокси сервер не хочешь использовать?
Прокси есть, но его не хватает, т.к. некоторые проги (банк-клиент например или игры) работают только напрямую...


"NAT за NAT'ом (серые адреса)"
Отправлено A Clockwork Orange , 19-Июн-07 11:18 
>Пров дал только внутренний ИП, след-но у него НАТ. Я расшариваю через
>свой "сервер" инет дальше в локалку, при этом пров разрешает коннекты
>в инет только с моего ОДНОГО внутреннего ИП, поэтому я использую
>"второй" НАТ. Многие предопределенные сервисы в локалке работают, т.е. http, ftp,
>pop3, smtp и т.п., а вот любые коннекты с портами выше
>1024 отваливаются по таймауту, при этом видно что коннект идет, но
>такое ощущение что обратно пакеты не проходят... На FREEBSD тачке FW=OPEN,
>т.е. нет никаких запрещающих правил.
>
>WAN - PROVIDER(NAT, шлюз 192.168.1.1) <-> FREEBSD (192.168.1.100 + мой NAT) <-> LAN (172.16.1.1/24)
>
>Как в LAN'е поиметь полноценный инет? Нужно как-то прокидывать порты для каждого
>приложения?

кто провайдер и по какой технологии предоставляется доступ?


"NAT за NAT'ом (серые адреса)"
Отправлено SHRiKE_SPb , 19-Июн-07 11:31 

>кто провайдер и по какой технологии предоставляется доступ?

"Провайдер" - "домушная" сеть. Инет приходит по витой паре.


"NAT за NAT'ом (серые адреса)"
Отправлено npu3pak , 23-Ноя-07 15:59 
недавно сам страдал такой-же фигней,
вот мой ipfw.config, может тому-то пригодится... естественно его еще доработать надобно

        #!/bin/sh
        fwcmd="/sbin/ipfw "

        # outside interface network
        oif="rl0"
        onet="192.168.0.0/24"
        oip="192.168.0.1"

        # inside interface network
        iif="vr0"
        inet="10.0.0.0/24"
        iip="10.0.0.1"

        # allowed ports
        p="110,995,25,4899,53"

        # Flush out the list before we begin.
        ${fwcmd} -f 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 ${inet} to ${oip} in via ${oif}

# разрешаем SSH для случая неправильного конфигрурирования фаервола
        ${fwcmd} add allow tcp from any to me 22 via any
        ${fwcmd} add allow tcp from me 22 to any via any

# разрешаем трафик локальной сети
        ${fwcmd} add allow ip from ${inet} to ${inet} via ${iif}

# DIVERT-NAT
        ${fwcmd} add divert natd ip from ${inet} to any ${p} out via ${oif}
        ${fwcmd} add divert natd ip from any ${p} to ${oip} in via ${oif}

# разрешаем внешние соединения роутера
        ${fwcmd} add allow ip from ${oip} to any out via ${oif}
        ${fwcmd} add allow ip from any to ${oip} in via ${oif}

# разрешаем внутренним хостам выход во внешнюю сеть
        ${fwcmd} add allow ip from ${inet} to any in via ${iif}
        ${fwcmd} add allow ip from ${inet} to any out via ${oif}
        ${fwcmd} add allow ip from any to ${inet} in via ${oif}
        ${fwcmd} add allow ip from any to ${inet} out via ${iif}

# запрещаем все остальное
        ${fwcmd} add 60000 deny all from any to any