Биллинговая система Nodeny

Главная категория => Nodeny 49 => Тема начата: unisol от 08 Октября 2012, 09:02:44



Название: pfctl и внешний пинг
Отправлено: unisol от 08 Октября 2012, 09:02:44
Добрый день. Есть стандартное правило

Код:
set limit states 128000
set optimization aggressive
nat pass on em0 from 10.0.0.0/8 to any -> em0
nat pass on em0 from 192.168.0.0/16 to any -> em0

Из локальной сети все нормально пингуется, а вот с внешней нет. Подскажите что добавить?


Название: Re: pfctl и внешний пинг
Отправлено: stix от 08 Октября 2012, 09:04:13
а что вы пингуете, какой ip ?


Название: Re: pfctl и внешний пинг
Отправлено: unisol от 08 Октября 2012, 09:09:55
Если быть точный, то на данный момент у меня две сетевые, одна - rl0 - 192.168.1.1, а вторая nfe0 - 10.25.1.2 (потому что сейчас сервер находится в локальной сети - настраиваю, в будущем он заменит основной (10.25.1.1)).

Код:
set limit states 128000
set optimization aggressive
nat pass on nfe0 from 10.25.1.0/8 to any -> nfe0
nat pass on nfe0 from 192.168.1.0/16 to any -> nfe0

Подключаю ноутбук (192.168.1.2) через внутренюю сеть сервера (напрямую через кабель) пингует 192.168.1.1 (ssh и все другое работает). А вот если с "внешнего" ip (10.25.2.161 - ip ноутбука), то ни пинга ни ссш на 10.25.1.2 не идет, пока не сделаю pfctl -d, но это не выход :(


Название: Re: pfctl и внешний пинг
Отправлено: stix от 08 Октября 2012, 09:15:41
исключать nat можно поставив правило:
no nat from 1.1.1.0/24 to 2.2.2.0/24

указывайте размерность сети
nfe0 - 10.25.1.2
10.25.2.161

какая маска?


Название: Re: pfctl и внешний пинг
Отправлено: unisol от 08 Октября 2012, 09:20:35
Мне бы не только, чтобы 10.25.1.161 мог пинговать, но и вся сеть в данном диапозоне...
255.255.255.0


Название: Re: pfctl и внешний пинг
Отправлено: stix от 08 Октября 2012, 09:22:23
у вас они находятся в разных сетях

покажите ifconfig


Название: Re: pfctl и внешний пинг
Отправлено: unisol от 08 Октября 2012, 09:25:26
Код:
rl0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
        options=3808<VLAN_MTU,WOL_UCAST,WOL_MCAST,WOL_MAGIC>
        ether 00:02:2a:e3:04:e2
        inet 192.168.1.1 netmask 0xffffff00 broadcast 192.168.1.255
        media: Ethernet autoselect (none)
        status: no carrier
nfe0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
        options=82008<VLAN_MTU,WOL_MAGIC,LINKSTATE>
        ether 00:1e:8c:1e:4d:d8
        inet 10.25.1.2 netmask 0xffffff00 broadcast 10.25.1.255
        media: Ethernet autoselect (100baseTX <full-duplex,flowcontrol,rxpause,t                                                                                                                     xpause>)
        status: active
plip0: flags=8810<POINTOPOINT,SIMPLEX,MULTICAST> metric 0 mtu 1500
ipfw0: flags=8801<UP,SIMPLEX,MULTICAST> metric 0 mtu 65536
lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> metric 0 mtu 16384
        options=3<RXCSUM,TXCSUM>
        inet6 fe80::1%lo0 prefixlen 64 scopeid 0x7
        inet6 ::1 prefixlen 128
        inet 127.0.0.1 netmask 0xff000000
        nd6 options=3<PERFORMNUD,ACCEPT_RTADV>



Название: Re: pfctl и внешний пинг
Отправлено: stix от 08 Октября 2012, 09:32:37
непонятна логика работы.
у вас все, что влетает в интерфейс nfe0 с ip адресами входящие в сеть 10.0.0.0/8, должны вылетать с этого же интерфейса с ip адресом 10.25.1.2
причем взаимодействовать они будут с этим роутером, только когда будут находиться в сети (10.25.1.0/24)
inet 10.25.1.2 netmask 0xffffff00 broadcast 10.25.1.255

цель этого "роутера" ?


Название: Re: pfctl и внешний пинг
Отправлено: unisol от 08 Октября 2012, 09:41:39
Отвечаю, какая ситуация.
Есть старый роутер (FreeBSD - 10.25.1.1. Выключить я его не могу - работают люди).
Цель - заменить его на более новый.
Я беру новую "машину" (FreeBSD), присваиваю ей адрес - nf0 10.25.1.2 (255.255.255.0) и включаю ее в сеть, настраиваю. Далее, чтобы проверить работу биллинга (делаю свою подсеть) я вставляю новую сетевую карточку - rl0 и даю ip - 192.168.1.1 (255.255.255.0). У меня ноутбук, который подключен к роутеру (10.25.1.1) по вайфаю. Так вот с таким конфигом как -

Код:
set limit states 128000
set optimization aggressive
nat pass on nfe0 from 10.25.1.0/8 to any -> nfe0
nat pass on nfe0 from 192.168.1.0/16 to any -> nfe0

Я с ноута не могу зайти на новую машину. А вот если подключусь на прямую к серверу, через сетевой кабель используя rl0 и дав ip 192.168.1.2, то все работает. Мне нужно чтобы я мог попадать на новую машину с обычной сети (там где у меня  ip 10.25.1.161). Надеюсь я правильно выразился.


Название: Re: pfctl и внешний пинг
Отправлено: stix от 08 Октября 2012, 09:51:37
значит у вас просто была опечатка с 10.25.2.161

сделайте правило
no nat from 10.25.1.161 to 10.25.1.0/24
nat pass on nfe0 from 10.25.1.0/8 to any -> nfe0

для предсказуемости лучше так
no nat from 10.25.1.161 to 10.25.1.0/24
nat on nfe0 from 10.25.1.0/24 to any -> 10.25.1.2

смысла /8 делать нет, потому что у вас сеть 0xffffff00


Название: Re: pfctl и внешний пинг
Отправлено: unisol от 08 Октября 2012, 10:38:30
Вся проблема была в ipfw

${f} add 2020 allow tcp from any to any 80,443,22

Добавил 22 порт и ssh заработал.


Название: Re: pfctl и внешний пинг
Отправлено: 0xbad0c0d3 от 08 Октября 2012, 11:35:54
Код:
nat pass on nfe0 from 10.25.1.0/8 to any -> nfe0
oO
За /8 - понятно... а кто мне объяснит: для чего делать нат адресов из того же диапазона, что и интерфейс, в этот интерфейс с СРЦ этого же интерфейса? оО
получается, что кто-то ломится на nfe0(10.25.1.2) с адреса 10.25.1.3, там его нтит, в результате: SRC 10.25.1.2 DST 10.25.1.2
P.S. иль я чегой-то не так понял?