The OpenNET Project / Index page

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

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

"Объединение каналов по портам"
Сообщение от VadimMA emailИскать по авторуВ закладки(ok) on 24-Май-04, 18:21  (MSK)
Помогите реализовать задачку

Есть три интерфейса ppp0, ppp1 и eth0.
Eth0 ? во внутреннюю сеть.
ррр0 и ррр1 ? на Интернет.

Требуется:
Через ррр0 (с eth0 конечно) проходили, к примеру, только порты SMTP, FTP, POP3.
А через ррр1 только WWW.

Как это дело промутить?

  Рекомендовать в FAQ | Cообщить модератору | Наверх

 Оглавление

Индекс форумов | Темы | Пред. тема | След. тема
Сообщения по теме

1. "Объединение каналов по портам"
Сообщение от andrey emailИскать по авторуВ закладки(??) on 24-Май-04, 18:47  (MSK)
>Помогите реализовать задачку
>
>Есть три интерфейса ppp0, ppp1 и eth0.
>Eth0 ? во внутреннюю сеть.
>ррр0 и ррр1 ? на Интернет.
>
>Требуется:
>Через ррр0 (с eth0 конечно) проходили, к примеру, только порты SMTP, FTP,
>POP3.
>А через ррр1 только WWW.
>
>Как это дело промутить?

может быть так...

ipfw add deny tcp from eth0 to any !21 via ppp0
ipfw add deny tcp from eth0 to any !25 via ppp0
ipfw add deny tcp from eth0 to any !110 via ppp0
ipfw add deny tcp from eth0 to any !80 via ppp1

  Рекомендовать в FAQ | Cообщить модератору | Наверх

2. "Объединение каналов по портам"
Сообщение от sanders Искать по авторуВ закладки(??) on 24-Май-04, 19:10  (MSK)
>Помогите реализовать задачку
>
>Есть три интерфейса ppp0, ppp1 и eth0.
>Eth0 ? во внутреннюю сеть.
>ррр0 и ррр1 ? на Интернет.
>
>Требуется:
>Через ррр0 (с eth0 конечно) проходили, к примеру, только порты SMTP, FTP,
>POP3.
>А через ррр1 только WWW.
>
>Как это дело промутить?

Только из того что написанно eth0 я понял что это Linux, а не BSD... хотя это вовсе не факт. Для Linux это делает пакет iproute2..
Вот примерно то что тебе нужно здалать:
bash# iptables -t mangle -I PREROUTING -p tcp -s 192.168.1.0/24 -d 200.185.61.96/28   --dport 25 -j MARK --set-mark 0x10
bash# iptables -t mangle -I PREROUTING -p tcp -s 192.168.1.0/24 -d 200.185.61.96/28   --dport 21 -j MARK --set-mark 0x10
bash# iptables -t mangle -I PREROUTING -p tcp -s 192.168.1.0/24 -d 200.185.61.96/28   --dport 110 -j MARK --set-mark 0x10
bash# iptables -t mangle -I PREROUTING -p tcp -s 192.168.1.0/24 -d 200.185.61.96/28   --dport 80 -j MARK --set-mark 0x15
Это пометит пакеты: smtp pop ftp метка - 0x10
                    www -- 0x15

bash# iptables -t nat -A POSTROUTING -p tcp -d 0/0 -o ppp0 -j SNAT --to-source $IP_PPP0
bash# iptables -t nat -A POSTROUTING -p tcp -d 0/0 -o ppp1 -j SNAT --to-source $IP_PPP1
Это натит пакеты

bash# echo "300 PPP0" >> /etc/iproute2/rt_tables
bash# echo "300 PPP1" >> /etc/iproute2/rt_tables
Это делается только один раз(создаются таблицы).

bash# ip route add default via $IP_PROVA0 dev ppp0 table PPP0
bash# ip route add default via $IP_PROVA1 dev ppp1 table PPP1
bash# ip flush cache
bash# ip rule add fwmark 10 table PPP0
bash# ip rule add fwmark 15 table PPP1
Это зоздает маршруты и правила маршрутизации.
$IP_PROVA -- ip на стороне прова
$IP_PPP -- ip на твоей стороне
А вообще если чего не ясно можно глянуть здесь:
http://www.atmsk.ru/index.php?option=articles&task=viewarticle&artid=27

  Рекомендовать в FAQ | Cообщить модератору | Наверх

3. "Объединение каналов по портам"
Сообщение от wraith Искать по авторуВ закладки on 24-Май-04, 20:54  (MSK)
>>Помогите реализовать задачку
>>
>>Есть три интерфейса ppp0, ppp1 и eth0.
>>Eth0 ? во внутреннюю сеть.
>>ррр0 и ррр1 ? на Интернет.
>>
>>Требуется:
>>Через ррр0 (с eth0 конечно) проходили, к примеру, только порты SMTP, FTP,
>>POP3.
>>А через ррр1 только WWW.
>>
>>Как это дело промутить?
>
хм...
а почему не сделать так:
iptables -t nat -A POSTROUTING --sport 80 -o ppp1 -j SNAT --to-source x.x.x.x
iptables -t nat -A POSTROUTING -o ppp0 -j SNAT --to-source x.x.x.x

т.е натить http на ppp1 а все остальное на ppp0?

  Рекомендовать в FAQ | Cообщить модератору | Наверх

4. "Объединение каналов по портам"
Сообщение от VadimMA emailИскать по авторуВ закладки(ok) on 25-Май-04, 09:31  (MSK)
Буду эксперементировать.
Всем спасибо!
  Рекомендовать в FAQ | Cообщить модератору | Наверх

5. "Объединение каналов по портам"
Сообщение от sanders Искать по авторуВ закладки(??) on 25-Май-04, 11:19  (MSK)
>>>Помогите реализовать задачку
>>>
>>>Есть три интерфейса ppp0, ppp1 и eth0.
>>>Eth0 ? во внутреннюю сеть.
>>>ррр0 и ррр1 ? на Интернет.
>>>
>>>Требуется:
>>>Через ррр0 (с eth0 конечно) проходили, к примеру, только порты SMTP, FTP,
>>>POP3.
>>>А через ррр1 только WWW.
>>>
>>>Как это дело промутить?
>>
>хм...
>а почему не сделать так:
>iptables -t nat -A POSTROUTING --sport 80 -o ppp1 -j SNAT --to-source
>x.x.x.x
>iptables -t nat -A POSTROUTING -o ppp0 -j SNAT --to-source x.x.x.x
>
>т.е натить http на ppp1 а все остальное на ppp0?

Дело в том что правила NAT вставляются в цепочку POSTROUTING -- тоесть после принятия решения о маршрутизации, таким образом куда уйдет пакет?.. естественно на маршрут по умолчанию, а вот вернется уже в зависимости от NAT.  

  Рекомендовать в FAQ | Cообщить модератору | Наверх

6. "Объединение каналов по портам"
Сообщение от VadimMA emailИскать по авторуВ закладки(ok) on 26-Май-04, 09:34  (MSK)
>>>>Помогите реализовать задачку
>>>>
>>>>Есть три интерфейса ppp0, ppp1 и eth0.
>>>>Eth0 ? во внутреннюю сеть.
>>>>ррр0 и ррр1 ? на Интернет.
>>>>
>>>>Требуется:
>>>>Через ррр0 (с eth0 конечно) проходили, к примеру, только порты SMTP, FTP,
>>>>POP3.
>>>>А через ррр1 только WWW.
>>>>
>>>>Как это дело промутить?
>>>
>>хм...
>>а почему не сделать так:
>>iptables -t nat -A POSTROUTING --sport 80 -o ppp1 -j SNAT --to-source
>>x.x.x.x
>>iptables -t nat -A POSTROUTING -o ppp0 -j SNAT --to-source x.x.x.x
>>
>>т.е натить http на ppp1 а все остальное на ppp0?
>
>Дело в том что правила NAT вставляются в цепочку POSTROUTING -- тоесть
>после принятия решения о маршрутизации, таким образом куда уйдет пакет?.. естественно
>на маршрут по умолчанию, а вот вернется уже в зависимости от
>NAT.


А если вместо POSTROUTING использовать PREROUTING?

  Рекомендовать в FAQ | Cообщить модератору | Наверх


Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Пожалуйста, прежде чем написать сообщение, ознакомьтесь с данными рекомендациями.




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

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