[ipfw] setfibe

Настройка сетевых служб, маршрутизации, фаерволлов. Проблемы с сетевым оборудованием.
Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Аватара пользователя
MASiK
лейтенант
Сообщения: 625
Зарегистрирован: 2008-09-19 20:09:41
Откуда: Оттуда
Контактная информация:

[ipfw] setfibe

Непрочитанное сообщение MASiK » 2010-07-08 15:02:56

В общем САБЖ, не могу понять нахрена нужна это сетфиб если она работает через Ж, хочу послать траффик с определённого ИП на другого провайдера делаю

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

ipfw add 5 setfib 1 log ip from 217.150.204.111 to any 
ipfw add 10 setfib 1 log ip from any to 217.150.204.111
Потом смотрю лог и не фига не понимаю
Jul 8 15:57:07 billing kernel: ipfw: 10 SetFib 1 TCP 195.112.97.251:22 217.150.204.111:13050 out via em0
Jul 8 15:57:07 billing kernel: ipfw: 5 SetFib 1 TCP 217.150.204.111:13050 195.112.97.251:22 in via em0
Jul 8 15:57:07 billing kernel: ipfw: 10 SetFib 1 TCP 195.112.97.251:22 217.150.204.111:12925 out via em0
Jul 8 15:57:07 billing kernel: ipfw: 5 SetFib 1 TCP 217.150.204.111:13205 195.112.97.251:22 in via em0
Jul 8 15:57:07 billing kernel: ipfw: 10 SetFib 1 TCP 195.112.97.251:22 217.150.204.111:13205 out via em0
Jul 8 15:57:07 billing kernel: ipfw: 5 SetFib 1 TCP 217.150.204.111:13205 195.112.97.251:22 in via em0
Jul 8 15:57:07 billing kernel: ipfw: 10 SetFib 1 TCP 195.112.97.251:22 217.150.204.111:13205 out via em0
Jul 8 15:57:07 billing kernel: ipfw: 5 SetFib 1 TCP 217.150.204.111:13205 195.112.97.251:22 in via em0
Jul 8 15:57:07 billing kernel: ipfw: 10 SetFib 1 TCP 195.112.97.251:22 217.150.204.111:13205 out via em0
Jul 8 15:57:07 billing kernel: ipfw: 5 SetFib 1 TCP 217.150.204.111:13205 195.112.97.251:22 in via em0
Jul 8 15:57:07 billing kernel: ipfw: 10 SetFib 1 TCP 195.112.97.251:22 217.150.204.111:13205 out via em0
Jul 8 15:57:07 billing kernel: ipfw: 5 SetFib 1 TCP 217.150.204.111:13205 195.112.97.251:22 in via em0
Jul 8 15:57:07 billing kernel: ipfw: 10 SetFib 1 TCP 195.112.97.251:22 217.150.204.111:13205 out via em0
Jul 8 15:57:07 billing kernel: ipfw: 5 SetFib 1 TCP 217.150.204.111:13205 195.112.97.251:22 in via em0
Jul 8 15:57:07 billing kernel: ipfw: 10 SetFib 1 TCP 195.112.97.251:22 217.150.204.111:13205 out via em0
Jul 8 15:57:07 billing kernel: ipfw: 5 SetFib 1 TCP 217.150.204.111:13205 195.112.97.251:22 in via em0
Jul 8 15:57:20 billing kernel: ipfw: 5 SetFib 1 TCP 217.150.204.111:13205 195.112.97.251:22 in via em0
Jul 8 15:57:20 billing kernel: ipfw: 10 SetFib 1 TCP 195.112.97.251:22 217.150.204.111:13205 out via em0
Jul 8 15:57:20 billing kernel: ipfw: 10 SetFib 1 TCP 195.112.97.251:22 217.150.204.111:13205 out via em0
Jul 8 15:57:20 billing kernel: ipfw: 5 SetFib 1 TCP 217.150.204.111:13205 195.112.97.251:22 in via em0
Jul 8 15:57:58 billing kernel: ipfw: 5 SetFib 1 TCP 217.150.204.111:57508 195.112.97.251:22 in via em0
Jul 8 15:57:58 billing kernel: ipfw: 10 SetFib 1 TCP 195.112.97.251:22 217.150.204.111:57508 out via tun0
Jul 8 15:57:58 billing kernel: ipfw: 5 SetFib 1 TCP 217.150.204.111:57508 195.112.97.251:22 in via em0
Jul 8 15:57:58 billing kernel: ipfw: 10 SetFib 1 TCP 195.112.97.251:22 217.150.204.111:57508 out via tun0
Jul 8 15:58:00 billing kernel: ipfw: 5 SetFib 1 TCP 217.150.204.111:57508 195.112.97.251:22 in via em0
Jul 8 15:58:03 billing kernel: ipfw: 10 SetFib 1 TCP 195.112.97.251:22 217.150.204.111:57508 out via tun0
Jul 8 15:58:04 billing kernel: ipfw: 5 SetFib 1 TCP 217.150.204.111:57508 195.112.97.251:22 in via em0
Jul 8 15:58:06 billing kernel: ipfw: 5 SetFib 1 TCP 217.150.204.111:57508 195.112.97.251:22 in via em0
Jul 8 15:58:06 billing kernel: ipfw: 10 SetFib 1 TCP 195.112.97.251:22 217.150.204.111:57508 out via tun0
Jul 8 15:58:10 billing kernel: ipfw: 5 SetFib 1 TCP 217.150.204.111:57508 195.112.97.251:22 in via em0
Jul 8 15:58:12 billing kernel: ipfw: 10 SetFib 1 TCP 195.112.97.251:22 217.150.204.111:57508 out via tun0
Jul 8 15:58:18 billing kernel: ipfw: 5 SetFib 1 TCP 217.150.204.111:57508 195.112.97.251:22 in via em0
Jul 8 15:58:24 billing kernel: ipfw: 10 SetFib 1 TCP 195.112.97.251:22 217.150.204.111:57508 out via tun0
Jul 8 15:58:34 billing kernel: ipfw: 5 SetFib 1 TCP 217.150.204.111:57508 195.112.97.251:22 in via em0
Jul 8 15:58:47 billing kernel: ipfw: 10 SetFib 1 TCP 195.112.97.251:22 217.150.204.111:57508 out via tun0
Jul 8 15:59:05 billing kernel: ipfw: 5 SetFib 1 TCP 217.150.204.111:57508 195.112.97.251:22 in via em0
Jul 8 15:59:33 billing kernel: ipfw: 10 SetFib 1 TCP 195.112.97.251:22 217.150.204.111:57508 out via tun0
Jul 8 15:59:36 billing kernel: ipfw: 5 SetFib 1 TCP 217.150.204.111:57508 195.112.97.251:22 in via em0
Jul 8 15:59:57 billing kernel: ipfw: 10 SetFib 1 TCP 195.112.97.251:22 217.150.204.111:57508 out via tun0
Jul 8 15:59:57 billing kernel: ipfw: 5 SetFib 1 TCP 217.150.204.111:57508 195.112.97.251:22 in via em0
Какого фига он Входит по тому что мне надо а ВЫходит уже по дефаульт роутеру из таблицы 0

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

 netstat -rn
Routing tables

Internet:
Destination        Gateway            Flags    Refs      Use  Netif Expire
default            11.0.0.2           UGS         0   198751   tun0
10.0.0.0/20        link#2             UC          0        0   axe0
10.0.0.3           00:0e:08:ea:6e:55  UHLW        1   161985   axe0    994
10.0.0.51          00:1e:8c:1b:8f:55  UHLW        1    57378   axe0    424
10.0.0.102         00:19:66:d6:16:fd  UHLW        1      724   axe0   1177
10.0.0.104         00:24:01:9d:51:91  UHLW        1       44   axe0   1074
10.0.0.112         00:16:ea:a5:ff:b8  UHLW        1    43286   axe0   1159
10.0.0.113         d8:30:62:6c:43:64  UHLW        1     1728   axe0    454
11.0.0.2           11.0.0.1           UH          1       93   tun0
85.21.245.145      195.112.97.249     UGHS        0     6933    em0
127.0.0.1          127.0.0.1          UH          0    91933    lo0
172.16.0.0/16      172.16.13.1        UGS         0   216473   axe1
172.16.13.0/24     link#3             UC          0        0   axe1
172.16.13.1        00:15:17:d0:2b:c5  UHLW        2        0   axe1   1179
195.112.97.248/29  link#1             UC          0        0    em0
195.112.97.249     00:15:17:d0:2b:c5  UHLW        2        0    em0    879

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

 setfib 1 netstat -rn
Routing tables

Internet:
Destination        Gateway            Flags    Refs      Use  Netif Expire
default            195.112.97.249     UGS         0       42    em0
10.0.0.0/20        link#2             UC          0        0   axe0
10.0.0.3           00:0e:08:ea:6e:55  UHLW        1        0   axe0   1135
10.0.0.51          00:1e:8c:1b:8f:55  UHLW        1        0   axe0   1062
10.0.0.102         00:19:66:d6:16:fd  UHLW        1        0   axe0   1196
10.0.0.104         00:24:01:9d:51:91  UHLW        1        0   axe0    812
10.0.0.112         00:16:ea:a5:ff:b8  UHLW        1        0   axe0   1194
10.0.0.113         d8:30:62:6c:43:64  UHLW        1        0   axe0    192
11.0.0.2           11.0.0.1           UH          0        0   tun0
127.0.0.1          127.0.0.1          UH          0       10    lo0
172.16.13.0/24     link#3             UC          0        0   axe1
172.16.13.1        00:15:17:d0:2b:c5  UHLW        1        0   axe1    917
195.112.97.248/29  link#1             UC          0        0    em0
195.112.97.249     00:15:17:d0:2b:c5  UHLW        2        0    em0    617

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

sysctl -a | grep fib
net.my_fibnum: 0
net.add_addr_allfibs: 1
net.fibs: 3
Получается что нет не какого смысла?
Я в любом случае зайду на сервер по ВНЕ а он меня будет пихать по другому интерфейсу

Какой смысл в этих сетфиб?
Самурай

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

Аватара пользователя
terminus
майор
Сообщения: 2305
Зарегистрирован: 2007-10-29 11:27:35
Откуда: Рига

Re: [ipfw] setfibe

Непрочитанное сообщение terminus » 2010-07-08 15:12:34

MASiK, пиши пожалуйста всегда о проблемах с ipfw, маршрутизацией и сетями в раздел Networks, ok?
У нас идет порьба за чистоту и логическую структурированность разделов. Не смотря на то, что ipfw это фрибсдшная штука, это в большей степени Сети, а не "Проблемы установки, настройки и работы Правильной Операционной Системы". :pardon:

Не забывай пользоваться поиском по форуму. ;-)
Я знаю из-за чего у тебя косяк, но не скажу, так как, если поискать по слову setfib, то уже четвертое-пятое найденное в поиске сообщение даст тебе ответ... :"":

Найдеш ответ - скажи. Я тогда эту тему-клон удалю.
Модель: AST-PM-105/0044; Тип: Универсальный, ремонтный; Название: Терминус; Род повреждения: Распад функций; Выводы: Сдать на слом.

Аватара пользователя
MASiK
лейтенант
Сообщения: 625
Зарегистрирован: 2008-09-19 20:09:41
Откуда: Оттуда
Контактная информация:

Re: [ipfw] setfibe

Непрочитанное сообщение MASiK » 2010-07-08 15:21:29

Сорь, я чёт думал ipfw значт БСД

А по поводу ответа, эт ты зря, я найду ответ но не найду ПОНЯТИЕ того что проиходит

по моей логике работать должно так
Я пакет иду на ххх.ххх.ххх.ххх таь ipfw мне говорит ЮЗАЙ setfib 1 то есть таблицу роутинга 1, в ней у меня defaultrouter другой, и ответ должен идти уже из таблицы 1 а не 0
так вот у меня так не получается, вопрос - ПОЧЕМУ?
Самурай

Аватара пользователя
terminus
майор
Сообщения: 2305
Зарегистрирован: 2007-10-29 11:27:35
Откуда: Рига

Re: [ipfw] setfibe

Непрочитанное сообщение terminus » 2010-07-08 15:24:19

http://forum.lissyara.su/viewtopic.php? ... ib#p245744

и по-конкретней опиши свою беду. У тебя рутер/нат или просто серер? Разница есть.
Модель: AST-PM-105/0044; Тип: Универсальный, ремонтный; Название: Терминус; Род повреждения: Распад функций; Выводы: Сдать на слом.

Аватара пользователя
MASiK
лейтенант
Сообщения: 625
Зарегистрирован: 2008-09-19 20:09:41
Откуда: Оттуда
Контактная информация:

Re: [ipfw] setfibe

Непрочитанное сообщение MASiK » 2010-07-08 15:31:51

terminus писал(а):http://forum.lissyara.su/viewtopic.php? ... ib#p245744

и по-конкретней опиши свою беду. У тебя рутер/нат или просто серер? Разница есть.
Да я нашёл этот ответ, но тогда я не понимаю в чём смысл ipfw setfib? Разве не было бы удобнее если бы она работала на 2 стороны, да и вообще тада смысл теряется, у меня в любом случае без сетфиба, с сетфибом запросы будут идти на тот интерфейс на который я стучу, а уходить по роутинг тейблу дефолтному

По моему тут подводный камень, быть не может что бы нельзя было так сделать, тада эта функция совершенно бесполезна, я даже не могу придумать примера где она нужна :)

А у меня такая ситуация, у меня 2 провайдера, 1 имеет внутренний ип по нему идёт инет по дешовке, и 1 внешний ип, но другой провайдер, вот по этому внешнему я хотел рулить сервером, что бы только я имел доступ, я конечно сделал просто роутинг от своего ИП до роутера внешнего провайдера, но хотел сделать по красивше с роутинг таблицами.... там бы и через внешний интерфейс натить-редеректить можно было на внутрисетевые ИПы всякие РДП, ХТТП, ФТП и всё такое...
Самурай

Аватара пользователя
terminus
майор
Сообщения: 2305
Зарегистрирован: 2007-10-29 11:27:35
Откуда: Рига

Re: [ipfw] setfibe

Непрочитанное сообщение terminus » 2010-07-08 15:52:38

MASiK писал(а): Да я нашёл этот ответ, но тогда я не понимаю в чём смысл ipfw setfib? Разве не было бы удобнее если бы она работала на 2 стороны, да и вообще тада смысл теряется, у меня в любом случае без сетфиба, с сетфибом запросы будут идти на тот интерфейс на который я стучу, а уходить по роутинг тейблу дефолтному

По моему тут подводный камень, быть не может что бы нельзя было так сделать, тада эта функция совершенно бесполезна, я даже не могу
Если рутер с двумя интерфейсами, то на том интерфейсе который смотрит в локалку, можно делать setfib:

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

ipfw add 1 setfib 1 ip from 192.168.1.0/24 to any in
и потом оно попрет через fib 1 через какой-то внешний интерфейс (скажем em1).

А если просто сервер с демонами (ssh/apache/etc) то тогда уже нет, так как его локальному исходяшему трафику сначала будет назначен маршрут по-умолчанию, а потом твой setfib ничего уже не решит (трафик не вернется в то место в стеке дге решается через какой маршрут его слать).

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

2сетевухи и IN/OUT:
-->-- IN -- (setfib 1) -- [блок маршрутизации делает через 1] -- OUT -->

локальный трафик:
[блок маршрутизации сделал через 0] -- (setfib 1) -- OUT -->

То что ты хочеш сможет работать, если использовать fwd. Такие правила заставляют трафик вернуться в начало и для него будет пересмотрен маршрут.
Модель: AST-PM-105/0044; Тип: Универсальный, ремонтный; Название: Терминус; Род повреждения: Распад функций; Выводы: Сдать на слом.

Аватара пользователя
terminus
майор
Сообщения: 2305
Зарегистрирован: 2007-10-29 11:27:35
Откуда: Рига

Re: [ipfw] setfibe

Непрочитанное сообщение terminus » 2010-07-08 16:05:30

вот из листов например:
http://lists.freebsd.org/pipermail/free ... 18267.html
> I don't know about pf, but in ipfw it definitely can be any packet at
> any time, but the outgoing packets have already made their routing
> decision before they hit the firewall so even though a table is
> associated with the packet, it's too late :-/ it has to be associated
> with the socket itself to really have effect.

For this reason I'm considering whether to add a 'reroute' ipfw rule
that forces a redo of the routing decision... it may not work as
expected however.. (it would be too late to change the selected src
address).
Модель: AST-PM-105/0044; Тип: Универсальный, ремонтный; Название: Терминус; Род повреждения: Распад функций; Выводы: Сдать на слом.

Аватара пользователя
terminus
майор
Сообщения: 2305
Зарегистрирован: 2007-10-29 11:27:35
Откуда: Рига

Re: [ipfw] setfibe

Непрочитанное сообщение terminus » 2010-07-08 16:11:15

http://lists.freebsd.org/pipermail/free ... 20855.html
this is expected.. setfib in the firewall can only change the fib on
an outgoing packet AFTER it has already done its routing decision.

setfib in ipfw is basically for packets that you are ROUTING,
(i.e. you are a gateway) and
is expected to be run in INCOMING packets before they make their
routing decision..

I was thinking of adding a 'reroute' ipfw keyword.. kind of like
'fwd {original dest} ip from any to any'
because 'fwd' does cause the routing decision to be redone.

The fib of the process that opens the socket controls where packets
from the local machine are sent.
Модель: AST-PM-105/0044; Тип: Универсальный, ремонтный; Название: Терминус; Род повреждения: Распад функций; Выводы: Сдать на слом.