The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  ВХОД  слежка  RSS
"Маршрутизация одного порта"
Вариант для распечатки  
Пред. тема | След. тема 
Форумы OpenNET: Виртуальная конференция (Public)
Изначальное сообщение [Проследить за развитием треда]

"Маршрутизация одного порта"  
Сообщение от Allex on 02-Фев-07, 13:21 
Как смаршрутизировать один порт средствами ipchains и nat?Тоесть пустить этот единственный порт по отдельному маршруту через отдельный шлюз?
Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

 Оглавление

Сообщения по теме [Сортировка по времени, UBB]


1. "Маршрутизация одного порта"  
Сообщение от perece on 02-Фев-07, 14:18 
>Как смаршрутизировать один порт средствами ipchains и nat?Тоесть пустить этот единственный порт
>по отдельному маршруту через отдельный шлюз?
средствами iptables и iproute2 может быть? тогда так:

iptables -t mangle -A PREROUTING -p tcp --dport 25 -j MARK --set-mark 33
ip rule add fwmark 0x33 prio 100 tab port25
ip route add default 10.1.1.5 tab port25

при этом port25 должна быть прописана в /etc/iproute2/rt_tables

на ядре 2.2 (ipchains) этого сделать имхо нельзя. ну разве что через юзерспейс линк, и демона своего написать.

\^P^/

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

2. "Маршрутизация одного порта"  
Сообщение от Allex on 02-Фев-07, 14:21 
>>Как смаршрутизировать один порт средствами ipchains и nat?Тоесть пустить этот единственный порт
>>по отдельному маршруту через отдельный шлюз?
>средствами iptables и iproute2 может быть? тогда так:
>
>iptables -t mangle -A PREROUTING -p tcp --dport 25 -j MARK --set-mark
>33
>ip rule add fwmark 0x33 prio 100 tab port25
>ip route add default 10.1.1.5 tab port25
>
>при этом port25 должна быть прописана в /etc/iproute2/rt_tables
>
>на ядре 2.2 (ipchains) этого сделать имхо нельзя. ну разве что через
>юзерспейс линк, и демона своего написать.
>
>\^P^/

А на фрибсд как эта связка работает?Какие там пакеты нужны будут?

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

4. "Маршрутизация одного порта"  
Сообщение от perece on 02-Фев-07, 14:26 
>>>Как смаршрутизировать один порт средствами ipchains и nat?Тоесть пустить этот единственный порт
[...]
>А на фрибсд как эта связка работает?Какие там пакеты нужны будут?
не зна. вопрос был про фрибсд? разве там бывает ipchains???
я малек отстал от жизни видимо...

\^P^/

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

5. "Маршрутизация одного порта"  
Сообщение от Allex on 02-Фев-07, 14:39 
>>>>Как смаршрутизировать один порт средствами ipchains и nat?Тоесть пустить этот единственный порт
>[...]
>>А на фрибсд как эта связка работает?Какие там пакеты нужны будут?
>не зна. вопрос был про фрибсд? разве там бывает ipchains???
>я малек отстал от жизни видимо...
>
>\^P^/

Вообще бывает - в портах оно есть, но ставить его ИМХО глупость, т.к. есть ipfw и теперь вопрос тот же самый но с ipfw.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

3. "Маршрутизация одного порта"  
Сообщение от perece on 02-Фев-07, 14:24 
>iptables -t mangle -A PREROUTING -p tcp --dport 25 -j MARK --set-mark
>33
>ip rule add fwmark 0x33 prio 100 tab port25
>ip route add default 10.1.1.5 tab port25
цифры разумеется от балды. port25 - имя таблицы, может быть абсолютно любым. но что важно - в команде iptables fwmark записана как '33', а в ip rule - как '0x33'. это распространенная ошибка, часто пишут просто одно и то же число, при этом iproute2 воспринимает его в десятичной, а iptables в шестнадцатеричной форме, и в рез-те не работает.

\^P^/

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

6. "Маршрутизация одного порта"  
Сообщение от Oyyo on 02-Фев-07, 15:38 
>>iptables -t mangle -A PREROUTING -p tcp --dport 25 -j MARK --set-mark
>>33
>>ip rule add fwmark 0x33 prio 100 tab port25
>>ip route add default 10.1.1.5 tab port25
>цифры разумеется от балды. port25 - имя таблицы, может быть абсолютно любым.
>но что важно - в команде iptables fwmark записана как '33',
>а в ip rule - как '0x33'. это распространенная ошибка, часто
>пишут просто одно и то же число, при этом iproute2 воспринимает
>его в десятичной, а iptables в шестнадцатеричной форме, и в рез-те
>не работает.
>
>\^P^/

зачем делать лишние действия, просто направить запросы на нужный интерфейс

-I FORWARD -j ACCEPT -p tcp --dport XXX -o ethX

это правило должно быть в начале таблицы перед другими разрешающими
правилами, а как это сделать в ipfw не скажу, сам ещё толком не разобрался

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

7. "Маршрутизация одного порта"  
Сообщение от perece on 02-Фев-07, 20:03 
>>>iptables -t mangle -A PREROUTING -p tcp --dport 25 -j MARK --set-mark
>>>33
>>>ip rule add fwmark 0x33 prio 100 tab port25
>>>ip route add default 10.1.1.5 tab port25
>>цифры разумеется от балды. port25 - имя таблицы, может быть абсолютно любым.
>>но что важно - в команде iptables fwmark записана как '33',
>>а в ip rule - как '0x33'. это распространенная ошибка, часто
>>пишут просто одно и то же число, при этом iproute2 воспринимает
>>его в десятичной, а iptables в шестнадцатеричной форме, и в рез-те
>>не работает.
>>
>>\^P^/
>
>зачем делать лишние действия, просто направить запросы на нужный интерфейс
>
>-I FORWARD -j ACCEPT -p tcp --dport XXX -o ethX
>
>это правило должно быть в начале таблицы перед другими разрешающими
>правилами, а как это сделать в ipfw не скажу, сам ещё толком
>не разобрался

нееее... если речь всеже про iptables, то так это работать точно не буде.
-o ethX матчит по выходному интерфейсу, а не форвардит в него, в не зависимости от того, в каком месте команды написано (до или после -j). кроме того -j ACCEPT - терминирующая цель, все, что написано после нее будет проигнорировано если строчка заматчилась, ибо iptables/ipchains использует first match policy (в отличие от bsd ipfw, где как раз last match)
ну и напоследок... нетути тут адреса гейтвея. а соотв. не сможет шлюз определить, какой мак-адрес следует подставить этому пакету при выходе через ethX. соотв. есть сомнения в том, что с даже ipfw данный подход жизнеспособен.

\^P^/

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

8. "Маршрутизация одного порта"  
Сообщение от Oyyo on 02-Фев-07, 20:14 
>>>>iptables -t mangle -A PREROUTING -p tcp --dport 25 -j MARK --set-mark
>>>>33
>>>>ip rule add fwmark 0x33 prio 100 tab port25
>>>>ip route add default 10.1.1.5 tab port25
>>>цифры разумеется от балды. port25 - имя таблицы, может быть абсолютно любым.
>>>но что важно - в команде iptables fwmark записана как '33',
>>>а в ip rule - как '0x33'. это распространенная ошибка, часто
>>>пишут просто одно и то же число, при этом iproute2 воспринимает
>>>его в десятичной, а iptables в шестнадцатеричной форме, и в рез-те
>>>не работает.
>>>
>>>\^P^/
>>
>>зачем делать лишние действия, просто направить запросы на нужный интерфейс
>>
>>-I FORWARD -j ACCEPT -p tcp --dport XXX -o ethX
>>
>>это правило должно быть в начале таблицы перед другими разрешающими
>>правилами, а как это сделать в ipfw не скажу, сам ещё толком
>>не разобрался
>
>нееее... если речь всеже про iptables, то так это работать точно не
>буде.
>-o ethX матчит по выходному интерфейсу, а не форвардит в него, в
>не зависимости от того, в каком месте команды написано (до или
>после -j). кроме того -j ACCEPT - терминирующая цель, все, что
>написано после нее будет проигнорировано если строчка заматчилась, ибо iptables/ipchains использует
>first match policy (в отличие от bsd ipfw, где как раз
>last match)
>ну и напоследок... нетути тут адреса гейтвея. а соотв. не сможет шлюз
>определить, какой мак-адрес следует подставить этому пакету при выходе через ethX.
>соотв. есть сомнения в том, что с даже ipfw данный подход
>жизнеспособен.
>
>\^P^/

Ой-ой, всё работает если правильно прописана таблица роут
вовсяком случае у меня работает и имелось ввиду не синтаксис
написания правила, а место положения правила в цепочке форварда

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

9. "Маршрутизация одного порта"  
Сообщение от perece on 06-Фев-07, 17:44 
[...]
>>ну и напоследок... нетути тут адреса гейтвея. а соотв. не сможет шлюз
>>определить, какой мак-адрес следует подставить этому пакету при выходе через ethX.
>>соотв. есть сомнения в том, что с даже ipfw данный подход
>>жизнеспособен.
>
>Ой-ой, всё работает если правильно прописана таблица роут
>вовсяком случае у меня работает и имелось ввиду не синтаксис
>написания правила, а место положения правила в цепочке форварда

непонятненько. что значит "прописана таблица роут"? не более одного гейтвея на интерфейс? в некоторых случаях может потребоваться обратное. или вы не подозреваете, что policy routing может потребоваться не только на link-scope?
если мы указываем интерфейс, и ему по таблице маршрутов соответствует 5 гейтвеев, а нам нужно, чтобы летело именно через 4й из них, как система это узнает?

\^P^/

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

10. "Маршрутизация одного порта"  
Сообщение от Oyyo on 06-Фев-07, 18:05 

>непонятненько. что значит "прописана таблица роут"? не более одного гейтвея на интерфейс?
>в некоторых случаях может потребоваться обратное. или вы не подозреваете, что
>policy routing может потребоваться не только на link-scope?
>если мы указываем интерфейс, и ему по таблице маршрутов соответствует 5 гейтвеев,
>а нам нужно, чтобы летело именно через 4й из них, как
>система это узнает?
>
>\^P^/

бесполезный спор, видимо кто-то из нас не правильно понял вопрос
"Тоесть пустить этот единственный порт по отдельному маршруту через отдельный шлюз?"
по моему мнению понятие "отдельный шлюз" включает наличие отдельного интерфейса

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

11. "Маршрутизация одного порта"  
Сообщение от perece on 06-Фев-07, 18:20 
>>непонятненько. что значит "прописана таблица роут"? не более одного гейтвея на интерфейс?
>>в некоторых случаях может потребоваться обратное. или вы не подозреваете, что
>>policy routing может потребоваться не только на link-scope?
>>если мы указываем интерфейс, и ему по таблице маршрутов соответствует 5 гейтвеев,
>>а нам нужно, чтобы летело именно через 4й из них, как
>>система это узнает?

>бесполезный спор, видимо кто-то из нас не правильно понял вопрос
>"Тоесть пустить этот единственный порт по отдельному маршруту через отдельный шлюз?"
>по моему мнению понятие "отдельный шлюз" включает наличие отдельного интерфейса

несомненно. но варианта, когда к этому ифейсу присоединен свитч, а в него воткнуто аж 5 шлюзов постановка вопроса не исключает, правда?

\^P^/

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Оцените тред (1=ужас, 5=супер)? [ 1 | 2 | 3 | 4 | 5 ] [Рекомендовать для помещения в FAQ]




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2025 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру