The OpenNET Project / Index page

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

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

"Как организовать DNAT на несколько destination в Linux?"
Сообщение от chiptch Искать по авторуВ закладки on 29-Июн-03, 18:26  (MSK)
Есть Linux с 2-мя сет. картами. Надо получать TCP пакеты на одном интерфейсе и форвардить на несколько серверов(один и тот же пакет) находящиеся на другом интерфейсе.

Я так понимаю что это делается с помощью DNAT. Но DNAT умеет форвардить пакет только на один destination. А как зделать чтобы форвардить один и тот же пакет на несколько destinations ?

Спасибо.

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

 Оглавление

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

1. "Как организовать DNAT на несколько destination в Linux?"
Сообщение от poor bugger Искать по авторуВ закладки on 30-Июн-03, 01:12  (MSK)
а отвечать они на него как будут?
тоже вдвоем? или будут договариваться между собой?
  Рекомендовать в FAQ | Cообщить модератору | Наверх

2. "Как организовать DNAT на несколько destination в Linux?"
Сообщение от chiptch Искать по авторуВ закладки on 30-Июн-03, 10:30  (MSK)
>а отвечать они на него как будут?
>тоже вдвоем? или будут договариваться между собой?

Они не будут отвечать. Главное это переправить.
На самом деле если можно получать(на одном интерфейсе) TCP и отправлять (на другом) direct broadcast это тоже бы решило мою задачу.

Я понимаю что это элементарно написать, но мне нужно использовать что-то готовое и не писать самому. Я вот и подумал что iptables должен это уметь.
Но никак не могу найти.

Спасибо


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

3. "Как организовать DNAT на несколько destination в Linux?"
Сообщение от Zergling emailИскать по авторуВ закладки on 30-Июн-03, 11:40  (MSK)
>>а отвечать они на него как будут?
>>тоже вдвоем? или будут договариваться между собой?
>
>Они не будут отвечать. Главное это переправить.
>На самом деле если можно получать(на одном интерфейсе) TCP и отправлять (на
>другом) direct broadcast это тоже бы решило мою задачу.
>
>Я понимаю что это элементарно написать, но мне нужно использовать что-то готовое
>и не писать самому. Я вот и подумал что iptables должен
>это уметь.
>Но никак не могу найти.
>
>Спасибо


Хмммммм
по моему это не возможно :
вот если бы были UDP пакеты
то да

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

4. "Как организовать DNAT на несколько destination в Linux?"
Сообщение от chiptch Искать по авторуВ закладки on 30-Июн-03, 12:53  (MSK)
>Хмммммм
>по моему это не возможно :
>вот если бы были UDP пакеты
>то да

Хорошо, допустим что это UDP пакеты.
Как это сделать ?

Я делал так:

iptables -t nat -A PREROUTING -p udp -d 10.10.251.95 --dport 230 -j DNAT --to-destination 192.168.1.255:2300
iptables -A FORWARD -i eth1 -d 192.168.1.255 -p udp --dport 2300 -j ACCEPT

где eth0=10.10.251.95/16
    eth1=192.168.1.1/24

И это не работает. Здесь что-то неправильно написано ?

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

6. "Как организовать DNAT на несколько destination в Linux?"
Сообщение от poor bugger Искать по авторуВ закладки on 01-Июл-03, 07:01  (MSK)
netcat -l -u -p listen_port | tee "| netcat -u destination_host_1 destination_port" | netcat -u destination_host_2 destination_port
  Рекомендовать в FAQ | Cообщить модератору | Наверх

7. "Как организовать DNAT на несколько destination в Linux?"
Сообщение от poor bugger Искать по авторуВ закладки on 01-Июл-03, 07:32  (MSK)
>netcat -l -u -p listen_port | tee "| netcat -u destination_host_1 destination_port" | netcat -u destination_host_2 destination_port

черт так не катит
вот так

mknod /tmp/netpipe "p"

netcat -l -u -p listen_port | tee /tmp/netpipe | netcat -u destination_host_2 destination_port &

netcat -u destination_host_1 destination_port < /tmp/netpipe

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

8. "Как организовать DNAT на несколько destination в Linux?"
Сообщение от chiptch Искать по авторуВ закладки on 01-Июл-03, 20:58  (MSK)
>>netcat -l -u -p listen_port | tee "| netcat -u destination_host_1 destination_port" | netcat -u destination_host_2 destination_port
>
>черт так не катит
>вот так
>
>mknod /tmp/netpipe "p"
>
>netcat -l -u -p listen_port | tee /tmp/netpipe | netcat -u destination_host_2
>destination_port &
>
>netcat -u destination_host_1 destination_port < /tmp/netpipe


Про netcat я не знал. Попробую обязательно. Огромое спасибо.

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

10. "Как организовать DNAT на несколько destination в Linux?"
Сообщение от chiptch Искать по авторуВ закладки on 01-Июл-03, 21:21  (MSK)
>>>netcat -l -u -p listen_port | tee "| netcat -u destination_host_1 destination_port" | netcat -u destination_host_2 destination_port
>>
>>черт так не катит
>>вот так
>>
>>mknod /tmp/netpipe "p"
>>
>>netcat -l -u -p listen_port | tee /tmp/netpipe | netcat -u destination_host_2
>>destination_port &
>>
>>netcat -u destination_host_1 destination_port < /tmp/netpipe
>
>
>Про netcat я не знал. Попробую обязательно. Огромое спасибо.

А можно объяснение PLZ.

Что делает первая строчка я понял. А зачем вторая ?
По первой строчке получается я слушаю UDP порт , всё что туда приходит кладу в pipe, netstat читает и посулает на destination_host_2:destination_port.

А вот зачем вторая ?

Кстати а можно слушать на TCP порту а посылать на  UDP ?

Ещё раз ОГРОМНОЕ спасибо.

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

5. "Как организовать DNAT на несколько destination в Linux?"
Сообщение от Sergei emailИскать по авторуВ закладки on 01-Июл-03, 01:07  (MSK)
Понимаю, что, возможно бред, но:
если эти destination в одной сети (например 192.168.0.6 и 192.168.0.5 их сетка - 192.168.0.4 а бродкаст 192.168.0.7) так вот если слать на 192.168.0.7, то получат пакет оба сервера или же нет?
  Рекомендовать в FAQ | Cообщить модератору | Наверх

9. "Как организовать DNAT на несколько destination в Linux?"
Сообщение от chiptch Искать по авторуВ закладки on 01-Июл-03, 21:03  (MSK)
>Понимаю, что, возможно бред, но:
>если эти destination в одной сети (например 192.168.0.6 и 192.168.0.5 их сетка
>- 192.168.0.4 а бродкаст 192.168.0.7) так вот если слать на 192.168.0.7,
>то получат пакет оба сервера или же нет?

Вот этот самый broadcast и не получается форвардить.
Вот с netcat подсказали - буду пробовать.

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


Удалить

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




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

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