Главная страница


ru.unix.bsd

 
 - RU.UNIX.BSD ------------------------------------------------------------------
 From : Valentin Davydov                     2:5020/400     12 Dec 2006  11:32:36
 To : Vadim Goncharov
 Subject : Re: расщепить на несколько хостов
 -------------------------------------------------------------------------------- 
 
 >   From: Vadim Goncharov <vadimnuclight@tpu.ru>
 >   Date: Mon, 11 Dec 2006 15:40:03 +0000 (UTC)
 >
 > VD>> А на хосту А на этот порт
 > VD>> повесить tcp-proxy, слепленный жвачкой из inetd, netcat, bounce и т.д.
 > VD>> и умеющий всё что ни попадя, в том числе и src ip round-robin.
 > >>Хм, а вот тут поподробнее - как это будет выглядеть? Эти src ip таки
 > >>придется алиасами вешать или оно (кстати, кто из связки?) умеет
 > >>raw-сокеты?
 > VD> Берёшь сетку, скажем, 10.40/16. Пишешь на сервере Б роутинг на эту сетку
 > VD> так, чтобы он доходил до хоста А. Затем на хосту А ставишь все 65536
 > VD> адресов из этой сетки на lo0 алиасами (с маской 32, разумеется).
 >
 >Почему на lo0 ?
 
 В общем, необязательно на lo0, можно, допустим, и на lo1, просто lo0 обычно 
 уже есть в системе и не надо заботиться о его создании. А на внешние 
 интерфейсы, по-моему, не стоит: зачем в сети лишний arp-трафик?
 
 > VD> Пишешь в inetd.conf
 > VD> слушать тот порт, на который будет ходить твоя софтина, и запускать на
 > VD> каждое соединение примерно такой скрипт: #!/bin/sh exec nc -s
 > VD> 10.40.$(sockstat -4 -c |\                   awk
 > VD> "\$3==$$&&\$4==0{gsub(\".*:\",\"\",\$7);                           print
 > VD> int(\$7/256) \".\" \$7%256}"\             ) $Б $порт_сервера
 >
 >Благодарю за скриптик. Конечно, хотелось бы более изящно, чем куча
 >алиасов на одном хосте, но и это сойдет.
 
 Другие варианты (хитровывернутый nat, альтернативный tcp/ip стек на bpfах и
 т.д.) представляются мне ещё менее изящными.
 
 > VD> Там ещё могут быть всякие тонкости, связанные с ограничениями количества
 > VD> одновременных соединений в inetd, корректностью закрытия tcp-соединений
 > VD> клиентом и/или сервером, environmentом запускаемых из скрипта команд, но
 > VD> при должной аккуратности всё это более-менее тривиально настраивается.
 >
 >А какие тут могут быть тонкости? Разрешить достаточное количество
 >одновременных соединений, и пусть висит. 
 
 Hаиболее неприятной тонкостью, с которой я встречался, было честное висение
 nc в процессах вплоть до истечения всевозможных таймаутов при некоррректном 
 обрыве tcp-соединения одной из сторон.
 
 >Зачем nc и awk окружение, тоже непонятно...
 
 Да хотя бы PATH.
 
 Вал. Дав.
 
 --- ifmail v.2.15dev5.3
  * Origin: Demos online service (2:5020/400)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 расщепить на несколько хостов   Vadim Goncharov   08 Dec 2006 00:47:42 
 Re: расщепить на несколько хостов   Valentin Davydov   08 Dec 2006 10:59:46 
 Re: расщепить на несколько хостов   Vadim Goncharov   08 Dec 2006 20:16:18 
 Re: расщепить на несколько хостов   Valentin Davydov   11 Dec 2006 11:32:59 
 Re: расщепить на несколько хостов   Vadim Goncharov   11 Dec 2006 19:40:03 
 Re: расщепить на несколько хостов   Valentin Davydov   12 Dec 2006 11:32:36 
 Re: расщепить на несколько хостов   Vadim Goncharov   12 Dec 2006 16:19:48 
 Re: расщепить на несколько хостов   Valentin Davydov   13 Dec 2006 11:27:21 
 Re: расщепить на несколько хостов   Vadim Goncharov   13 Dec 2006 17:42:38 
 Re: расщепить на несколько хостов   Mykola Dzham   11 Dec 2006 18:08:16 
 Re: расщепить на несколько хостов   Valentin Davydov   13 Dec 2006 11:27:21 
 Re: расщепить на несколько хостов   Mykola Dzham   13 Dec 2006 16:18:50 
Архивное /ru.unix.bsd/65778a4989af.html, оценка 2 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional