metaclass: (Default)
metaclass ([personal profile] metaclass) wrote2011-05-04 08:12 am

Ад программизма и трэш админства

Винда на интернет-шлюзе:

Венда в этом разе - ужасный вариант, но по причине того, что помимо шлюза на этом мегаведре еще стоят чудесные клиент-банки, которые ТУПО НЕ РАБОТАЮТ ЧЕРЕЗ НАТ, и об этом ТП говорит прямым текстом, то тут можно только обнять все это хозяйство и плакать

софтина не работает если на одном из интерфейсов стоит не инетовский адрес, я не знаю, что они там натворили, но работает только так

Если мы мне такое попалось - я бы сломал голову, но дрянь эту бы разобрал по косточкам и по возможности придумал костыль для запуска через НАТ, вплоть до VPN в интернеты.
Потому что подход "абы работало", реализуемый через извращения меня бесит. В данном случае извращением являются винда на шлюзе и всякие кульные прожки типа керио или юзергейта. И костыли с извращениями нужно локализовывать, а не ставить их в центре всего.

[identity profile] trueblacker.livejournal.com 2011-05-04 07:49 am (UTC)(link)
ничего я не попутал

[identity profile] jamhed.livejournal.com 2011-05-04 07:51 am (UTC)(link)
прокомментируй вывод netstat -natp чуть ниже (хинт: 127.0.0.1:5432 -- tcp-сервер)

[identity profile] trueblacker.livejournal.com 2011-05-04 08:01 am (UTC)(link)
порты, о которых я говорил - 484*

[identity profile] metaclass.livejournal.com 2011-05-04 08:03 am (UTC)(link)
Это порты на стороне клиента, с которых идет подключение. Они вместе с исходящим адресом действительно уникально адресуют коннект.

[identity profile] trueblacker.livejournal.com 2011-05-04 08:10 am (UTC)(link)
гм. Может и так.
значит этот вывод netstat'а не относится к обсуждаемому вопросу.
Вопрос на засыпку. Как работает TCP-соединение сервера с кучей клиентов, если у всех у них входящий серверный порт совпалает?
Программа пишет чо-то в сокет, а как этот сокет определяет, какому из клиентов отправить этот пакет?

[identity profile] jamhed.livejournal.com 2011-05-04 08:16 am (UTC)(link)
вывод netstat - относится. tcp-сокет идентифицируется 4 параметрами (src_ip, src_port, dst_ip, dst_port) со стороны ядра, и одним числом -- номером сокета для программиста. вот она, матчасть-то.

[identity profile] trueblacker.livejournal.com 2011-05-04 08:29 am (UTC)(link)
ну вот теперь расскажите мне, где в вашем дампе нетстата src_port

[identity profile] metaclass.livejournal.com 2011-05-04 08:31 am (UTC)(link)
484*

[identity profile] jamhed.livejournal.com 2011-05-04 08:34 am (UTC)(link)
дятел такой дятел:
Local Address Foreign Address
127.0.0.1:5432 127.0.0.1:48454

с точки зрения клиента:
src_host: 127.0.0.1, src_port: 48454, dst_host: 127.0.0.1, dst_port: 5432

с точки зрения сервера:
src_host: 127.0.0.1, src_port: 5432, dst_host: 127.0.0.1, dst_port: 48454

[identity profile] metaclass.livejournal.com 2011-05-04 08:17 am (UTC)(link)
Программа(сервер) пишет в РАЗНЫЕ сокеты. Каждому клиентскому соединению после accept выделяется свой сокет.

[identity profile] trueblacker.livejournal.com 2011-05-04 08:21 am (UTC)(link)
ещё полшага ребе.
Что будет, если у этого сокета, который вернулся через accept, запросить номер порта?
Он будет тот же, что передавался в bind ?

[identity profile] metaclass.livejournal.com 2011-05-04 08:30 am (UTC)(link)
Вернется адрес клиентского порта - с которого соединение исходит и который физически открыт на клиенте, чо.

[identity profile] trueblacker.livejournal.com 2011-05-04 08:37 am (UTC)(link)
да я не про клиентский порт, а про серверный, неужели не понятно?!

[identity profile] metaclass.livejournal.com 2011-05-04 08:42 am (UTC)(link)
Серверный ровно один. 5432 в данном случае. 484* - клиентские.

(no subject)

[identity profile] trueblacker.livejournal.com - 2011-05-04 08:46 (UTC) - Expand

(no subject)

[identity profile] metaclass.livejournal.com - 2011-05-04 08:50 (UTC) - Expand

(no subject)

[identity profile] jamhed.livejournal.com - 2011-05-04 08:53 (UTC) - Expand

[identity profile] jamhed.livejournal.com 2011-05-04 08:04 am (UTC)(link)
вот жеж дятел. это порты не сервера, а клиента. как легко видеть из адреса 127.0.0.1 клиент и сервер находятся на одной машине.

[identity profile] trueblacker.livejournal.com 2011-05-04 08:15 am (UTC)(link)
умник
ты bind от accept отличаешь?

[identity profile] jamhed.livejournal.com 2011-05-04 08:17 am (UTC)(link)
я ж написал уже -- дятел, еще и с понтами.

[identity profile] metaclass.livejournal.com 2011-05-04 08:18 am (UTC)(link)
данный вывод netstat это уже акцептированные соединения.

[identity profile] trueblacker.livejournal.com 2011-05-04 08:22 am (UTC)(link)
ребе, ну не смешно

[identity profile] jamhed.livejournal.com 2011-05-04 08:25 am (UTC)(link)
да, это грустно. упорный такой дятел.

[identity profile] trueblacker.livejournal.com 2011-05-04 08:29 am (UTC)(link)
малтшык
не уймёшься, пойдёшь в игнор

[identity profile] jamhed.livejournal.com 2011-05-04 08:37 am (UTC)(link)
я вот не пойму, сколько раз надо написать как tcp-то устроено? хинт, хинт. c tcp можно и без сокет-api работать, если чо.

(no subject)

[identity profile] trueblacker.livejournal.com - 2011-05-04 08:40 (UTC) - Expand

(no subject)

[identity profile] jamhed.livejournal.com - 2011-05-04 08:44 (UTC) - Expand

(no subject)

[identity profile] metaclass.livejournal.com - 2011-05-04 08:44 (UTC) - Expand

(no subject)

[identity profile] trueblacker.livejournal.com - 2011-05-04 08:46 (UTC) - Expand

(no subject)

[identity profile] jamhed.livejournal.com - 2011-05-04 08:48 (UTC) - Expand

(no subject)

[identity profile] trueblacker.livejournal.com - 2011-05-04 09:16 (UTC) - Expand

(no subject)

[identity profile] metaclass.livejournal.com - 2011-05-04 09:19 (UTC) - Expand

(no subject)

[identity profile] trueblacker.livejournal.com - 2011-05-04 09:23 (UTC) - Expand

(no subject)

[identity profile] jamhed.livejournal.com - 2011-05-04 09:23 (UTC) - Expand

(no subject)

[identity profile] trueblacker.livejournal.com - 2011-05-04 09:35 (UTC) - Expand

(no subject)

[identity profile] metaclass.livejournal.com - 2011-05-04 09:37 (UTC) - Expand

(no subject)

[identity profile] trueblacker.livejournal.com - 2011-05-04 09:42 (UTC) - Expand

(no subject)

[identity profile] jamhed.livejournal.com - 2011-05-04 09:45 (UTC) - Expand

(no subject)

[identity profile] tzirechnoy.livejournal.com - 2011-05-12 17:01 (UTC) - Expand

(no subject)

[identity profile] jamhed.livejournal.com - 2011-05-04 09:41 (UTC) - Expand

(no subject)

[identity profile] trueblacker.livejournal.com - 2011-05-04 09:44 (UTC) - Expand

(no subject)

[identity profile] metaclass.livejournal.com - 2011-05-04 08:40 (UTC) - Expand

(no subject)

[identity profile] jamhed.livejournal.com - 2011-05-04 08:42 (UTC) - Expand

(no subject)

[identity profile] blackyblack.livejournal.com - 2011-05-05 06:03 (UTC) - Expand

[identity profile] metaclass.livejournal.com 2011-05-04 08:31 am (UTC)(link)
Ребе, у меня такое подозрение, что мы говорим про одно и то же разными словами.
Со стороны сервера порт один, со стороны подключенных клиентов - гарантировано разные пары "адрес:порт".

[identity profile] trueblacker.livejournal.com 2011-05-04 08:42 am (UTC)(link)
не может быть один порт со стороны сервера, ёклмн
слушается - один порт
а на поступающее соединение при акцептировании выделяется другой
чортпабери, прописные ж истины

[identity profile] metaclass.livejournal.com 2011-05-04 08:45 am (UTC)(link)
Нет, не выделяется.

(no subject)

[identity profile] trueblacker.livejournal.com - 2011-05-04 08:47 (UTC) - Expand

(no subject)

[identity profile] metaclass.livejournal.com - 2011-05-04 09:02 (UTC) - Expand

(no subject)

[identity profile] trueblacker.livejournal.com - 2011-05-04 09:15 (UTC) - Expand

(no subject)

[identity profile] zamotivator.livejournal.com - 2011-05-04 20:57 (UTC) - Expand

(no subject)

[identity profile] trueblacker.livejournal.com - 2011-05-05 07:15 (UTC) - Expand

(no subject)

[identity profile] jamhed.livejournal.com - 2011-05-04 08:48 (UTC) - Expand