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

Исходное сообщение
"Iptables, nat, sibling gateway"

Отправлено Алибабаич , 11-Дек-08 18:46 
Каким образом можно перенаправить запросы с одного шлюза на соседний во внутренней сети с помощью iptables или iproute2 на крайняк, по определенному порту. Примерно так
сеть 172.16.0.0/255.255.224.0
172.16.0.1/19 шлюз один
172.16.1.1/19 шлюз два
Надо 80 прозрачно перекинуть с 172.16.0.1 на 172.16.1.1.
Спасибо.

Содержание

Сообщения в этом обсуждении
"Iptables, nat, sibling gateway"
Отправлено PavelR , 11-Дек-08 19:05 
>Каким образом можно перенаправить запросы с одного шлюза на соседний во внутренней
>сети с помощью iptables или iproute2 на крайняк, по определенному порту.
>Примерно так
>сеть 172.16.0.0/255.255.224.0
>172.16.0.1/19 шлюз один
>172.16.1.1/19 шлюз два
>Надо 80 прозрачно перекинуть с 172.16.0.1 на 172.16.1.1.
>Спасибо.

прописать таблицу х в /etc/iproute2/rt_tables

ip ro sh table x
ip ro add default gw 172.16.1.1 table x
ip ru add from all fwmark 0x01 lookup x
ip ro flu ca

iptables -t nat -I PREROUTING -p tcp --dport 80 -i <ethX> -j CONNMARK --mark=0x01


"Iptables, nat, sibling gateway"
Отправлено Алибабаич , 12-Дек-08 17:46 
>[оверквотинг удален]
>>сеть 172.16.0.0/255.255.224.0
>>172.16.0.1/19 шлюз один
>>172.16.1.1/19 шлюз два
>>Надо 80 прозрачно перекинуть с 172.16.0.1 на 172.16.1.1.
>>Спасибо.
>
>прописать таблицу х в /etc/iproute2/rt_tables
>
>ip ro sh table x
>ip ro add default gw 172.16.1.1 table x

пишет either "to" is duplicate or "gw" is a garbage
Пробовал ip ro add default via 172.16.1.1 table x

>ip ru add from all fwmark 0x01 lookup x
>ip ro flu ca
>
>iptables -t nat -I PREROUTING -p tcp --dport 80 -i <ethX> -j CONNMARK --mark=0x01

iptables ругался, мол читай --help
Так не ругается, однако я не уверен что это верно
iptables -t nat -I PREROUTING -p tcp --dport 80 -i eth0 -j CONNMARK --set-mark=0x01

Не работает вообщем.


"Iptables, nat, sibling gateway"
Отправлено aaa , 12-Дек-08 10:53 
>Каким образом можно перенаправить запросы с одного шлюза на соседний во внутренней
>сети с помощью iptables или iproute2 на крайняк, по определенному порту.
>Примерно так
>сеть 172.16.0.0/255.255.224.0
>172.16.0.1/19 шлюз один
>172.16.1.1/19 шлюз два
>Надо 80 прозрачно перекинуть с 172.16.0.1 на 172.16.1.1.
>Спасибо.

iptables -t nat -A PREROUTING -i ethX -p tcp --dport 80 -j DNAT --to-destination 172.16.1.1:80


"Iptables, nat, sibling gateway"
Отправлено Алибабаич , 12-Дек-08 17:53 
>[оверквотинг удален]
>>сети с помощью iptables или iproute2 на крайняк, по определенному порту.
>>Примерно так
>>сеть 172.16.0.0/255.255.224.0
>>172.16.0.1/19 шлюз один
>>172.16.1.1/19 шлюз два
>>Надо 80 прозрачно перекинуть с 172.16.0.1 на 172.16.1.1.
>>Спасибо.
>
>iptables -t nat -A PREROUTING -i ethX -p tcp --dport 80 -j
>DNAT --to-destination 172.16.1.1:80

Я попробую конечно, но имхо это правило будет все запросы в нет типа rambler.ru и kremlin.ru на 172.16.1.1 и грузить то что там есть.



"Iptables, nat, sibling gateway"
Отправлено dimanoname , 12-Дек-08 22:04 
>>iptables -t nat -A PREROUTING -i ethX -p tcp --dport 80 -j
>>DNAT --to-destination 172.16.1.1:80
>
>Я попробую конечно, но имхо это правило будет все запросы в нет
>типа rambler.ru и kremlin.ru на 172.16.1.1 и грузить то что там
>есть.

Нет Вы немнога ошибаетесь, это правило как раз то, что Вас и нужно изначально. Если Вы выполните эту команду на Вашем первом шлюзе, то весь входящий на шлюз трафик с интерфейса ethx на порт 80 будет проброшен на 80 порт по адресу 172.16.1.1. Соответсвенно порт 80 должен быть открыт при этом на првом и втором шлюзе